Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
suliangchun
dbeaver
提交
bce6089a
D
dbeaver
项目概览
suliangchun
/
dbeaver
与 Fork 源项目一致
从无法访问的项目Fork
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
dbeaver
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
bce6089a
编写于
12月 28, 2019
作者:
S
Serge Rider
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Use recovery for commit/isolation changes
Former-commit-id:
b97a5a8f
上级
52a5fca5
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
16 addition
and
2 deletion
+16
-2
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/actions/datasource/DataSourceTransactionModeContributor.java
...ions/datasource/DataSourceTransactionModeContributor.java
+16
-2
未找到文件。
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/actions/datasource/DataSourceTransactionModeContributor.java
浏览文件 @
bce6089a
...
...
@@ -29,6 +29,7 @@ import org.jkiss.dbeaver.model.*;
import
org.jkiss.dbeaver.model.exec.DBCException
;
import
org.jkiss.dbeaver.model.exec.DBCExecutionContext
;
import
org.jkiss.dbeaver.model.exec.DBCTransactionManager
;
import
org.jkiss.dbeaver.model.exec.DBExecUtils
;
import
org.jkiss.dbeaver.model.runtime.AbstractJob
;
import
org.jkiss.dbeaver.model.runtime.DBRProgressMonitor
;
import
org.jkiss.dbeaver.ui.ActionUtils
;
...
...
@@ -37,6 +38,7 @@ import org.jkiss.dbeaver.ui.actions.AbstractDataSourceHandler;
import
org.jkiss.dbeaver.utils.GeneralUtils
;
import
org.jkiss.utils.CommonUtils
;
import
java.lang.reflect.InvocationTargetException
;
import
java.util.List
;
public
class
DataSourceTransactionModeContributor
extends
DataSourceMenuContributor
{
...
...
@@ -133,7 +135,13 @@ public class DataSourceTransactionModeContributor extends DataSourceMenuContribu
monitor
.
beginTask
(
"Change connection auto-commit to "
+
autoCommit
,
1
);
try
{
monitor
.
subTask
(
"Change context '"
+
executionContext
.
getContextName
()
+
"' auto-commit state"
);
txnManager
.
setAutoCommit
(
monitor
,
autoCommit
);
DBExecUtils
.
tryExecuteRecover
(
monitor
,
executionContext
.
getDataSource
(),
param
->
{
try
{
txnManager
.
setAutoCommit
(
monitor
,
autoCommit
);
}
catch
(
DBCException
e
)
{
throw
new
InvocationTargetException
(
e
);
}
});
}
catch
(
Exception
e
)
{
return
GeneralUtils
.
makeExceptionStatus
(
e
);
}
finally
{
...
...
@@ -208,7 +216,13 @@ public class DataSourceTransactionModeContributor extends DataSourceMenuContribu
monitor
.
beginTask
(
"Change transaction isolation level to "
+
level
.
getTitle
(),
1
);
try
{
monitor
.
subTask
(
"Change context '"
+
executionContext
.
getContextName
()
+
"' transaction isolation level"
);
txnManager
.
setTransactionIsolation
(
monitor
,
level
);
DBExecUtils
.
tryExecuteRecover
(
monitor
,
executionContext
.
getDataSource
(),
param
->
{
try
{
txnManager
.
setTransactionIsolation
(
monitor
,
level
);
}
catch
(
DBCException
e
)
{
throw
new
InvocationTargetException
(
e
);
}
});
executionContext
.
getDataSource
().
getContainer
().
setDefaultTransactionsIsolation
(
level
);
executionContext
.
getDataSource
().
getContainer
().
persistConfiguration
();
}
catch
(
Exception
e
)
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录