Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
三久
DolphinScheduler
提交
2a128343
DolphinScheduler
项目概览
三久
/
DolphinScheduler
与 Fork 源项目一致
Fork自
apache / DolphinScheduler
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
DolphinScheduler
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
2a128343
编写于
7月 03, 2019
作者:
leon-baoliang
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
add recovery from stop
上级
b8a9ef55
变更
6
隐藏空白更改
内联
并排
Showing
6 changed file
with
54 addition
and
13 deletion
+54
-13
escheduler-api/src/main/java/cn/escheduler/api/service/ExecutorService.java
.../main/java/cn/escheduler/api/service/ExecutorService.java
+11
-1
escheduler-api/src/main/java/cn/escheduler/api/service/ProcessInstanceService.java
...ava/cn/escheduler/api/service/ProcessInstanceService.java
+10
-4
escheduler-dao/src/main/java/cn/escheduler/dao/model/ProcessInstance.java
...rc/main/java/cn/escheduler/dao/model/ProcessInstance.java
+14
-0
escheduler-ui/src/js/conf/home/pages/projects/pages/instance/pages/list/_source/list.vue
...pages/projects/pages/instance/pages/list/_source/list.vue
+17
-8
escheduler-ui/src/js/module/i18n/locale/en_US.js
escheduler-ui/src/js/module/i18n/locale/en_US.js
+1
-0
escheduler-ui/src/js/module/i18n/locale/zh_CN.js
escheduler-ui/src/js/module/i18n/locale/zh_CN.js
+1
-0
未找到文件。
escheduler-api/src/main/java/cn/escheduler/api/service/ExecutorService.java
浏览文件 @
2a128343
...
...
@@ -191,6 +191,16 @@ public class ExecutorService extends BaseService{
return
checkResult
;
}
// checkTenantExists();
Tenant
tenant
=
processDao
.
getTenantForProcess
(
processDefinition
.
getTenantId
(),
processDefinition
.
getUserId
());
if
(
tenant
==
null
){
logger
.
error
(
"there is not any vaild tenant for the process definition: id:{},name:{}, "
,
processDefinition
.
getId
(),
processDefinition
.
getName
());
putMsg
(
result
,
Status
.
PROCESS_INSTANCE_NOT_EXIST
,
processInstanceId
);
return
result
;
}
switch
(
executeType
)
{
case
REPEAT_RUNNING:
result
=
insertCommand
(
loginUser
,
processInstanceId
,
processDefinition
.
getId
(),
CommandType
.
REPEAT_RUNNING
);
...
...
@@ -260,7 +270,7 @@ public class ExecutorService extends BaseService{
}
break
;
case
RECOVER_SUSPENDED_PROCESS:
if
(
executionStatus
.
typeIsPause
())
{
if
(
executionStatus
.
typeIsPause
()
||
executionStatus
.
typeIsCancel
()
)
{
checkResult
=
true
;
}
default
:
...
...
escheduler-api/src/main/java/cn/escheduler/api/service/ProcessInstanceService.java
浏览文件 @
2a128343
...
...
@@ -38,10 +38,7 @@ import cn.escheduler.common.utils.JSONUtils;
import
cn.escheduler.common.utils.ParameterUtils
;
import
cn.escheduler.common.utils.placeholder.BusinessTimeUtils
;
import
cn.escheduler.dao.ProcessDao
;
import
cn.escheduler.dao.mapper.ProcessDefinitionMapper
;
import
cn.escheduler.dao.mapper.ProcessInstanceMapper
;
import
cn.escheduler.dao.mapper.ProjectMapper
;
import
cn.escheduler.dao.mapper.TaskInstanceMapper
;
import
cn.escheduler.dao.mapper.*
;
import
cn.escheduler.dao.model.*
;
import
com.alibaba.fastjson.JSON
;
import
org.apache.commons.lang3.StringUtils
;
...
...
@@ -97,6 +94,9 @@ public class ProcessInstanceService extends BaseDAGService {
@Autowired
LoggerService
loggerService
;
@Autowired
WorkerGroupMapper
workerGroupMapper
;
/**
* query process instance by id
*
...
...
@@ -115,6 +115,12 @@ public class ProcessInstanceService extends BaseDAGService {
return
checkResult
;
}
ProcessInstance
processInstance
=
processDao
.
findProcessInstanceDetailById
(
processId
);
if
(
processInstance
.
getWorkerGroupId
()
==
-
1
){
processInstance
.
setWorkerGroupName
(
"Default"
);
}
else
{
WorkerGroup
workerGroup
=
workerGroupMapper
.
queryById
(
processInstance
.
getWorkerGroupId
());
processInstance
.
setWorkerGroupName
(
workerGroup
.
getName
());
}
result
.
put
(
Constants
.
DATA_LIST
,
processInstance
);
putMsg
(
result
,
Status
.
SUCCESS
);
...
...
escheduler-dao/src/main/java/cn/escheduler/dao/model/ProcessInstance.java
浏览文件 @
2a128343
...
...
@@ -194,6 +194,11 @@ public class ProcessInstance {
*/
private
int
tenantId
;
/**
* worker group name. for api.
*/
private
String
workerGroupName
;
public
ProcessInstance
(){
}
...
...
@@ -549,6 +554,7 @@ public class ProcessInstance {
", dependenceScheduleTimes='"
+
dependenceScheduleTimes
+
'\''
+
", duration="
+
duration
+
", timeout="
+
timeout
+
", workerGroupName="
+
workerGroupName
+
", processInstancePriority="
+
processInstancePriority
+
'}'
;
}
...
...
@@ -560,4 +566,12 @@ public class ProcessInstance {
public
int
getTenantId
()
{
return
this
.
tenantId
;
}
public
String
getWorkerGroupName
()
{
return
workerGroupName
;
}
public
void
setWorkerGroupName
(
String
workerGroupName
)
{
this
.
workerGroupName
=
workerGroupName
;
}
}
escheduler-ui/src/js/conf/home/pages/projects/pages/instance/pages/list/_source/list.vue
浏览文件 @
2a128343
...
...
@@ -95,10 +95,10 @@
shape=
"circle"
size=
"xsmall"
data-toggle=
"tooltip"
:title=
"$t('Stop')"
@
click=
"_stop(item)"
:title=
"
item.state === 'STOP' ? $t('Recovery Stop') :
$t('Stop')"
@
click=
"_stop(item
,$index
)"
icon=
"iconfont icon-zanting1"
:disabled=
"item.state !== 'RUNNING_EXEUTION'"
></x-button>
:disabled=
"item.state !== 'RUNNING_EXEUTION'
&& item.state != 'STOP'
"
></x-button>
<x-button
type=
"warning"
shape=
"circle"
size=
"xsmall"
...
...
@@ -362,11 +362,20 @@
* stop
* @param STOP
*/
_stop
(
item
)
{
this
.
_upExecutorsState
({
processInstanceId
:
item
.
id
,
executeType
:
'
STOP
'
})
_stop
(
item
,
index
)
{
if
(
item
.
state
==
'
STOP
'
)
{
this
.
_countDownFn
({
id
:
item
.
id
,
executeType
:
'
RECOVER_SUSPENDED_PROCESS
'
,
index
:
index
,
buttonType
:
'
suspend
'
})
}
else
{
this
.
_upExecutorsState
({
processInstanceId
:
item
.
id
,
executeType
:
'
STOP
'
})
}
},
/**
* pause
...
...
escheduler-ui/src/js/module/i18n/locale/en_US.js
浏览文件 @
2a128343
...
...
@@ -238,6 +238,7 @@ export default {
'
Stop
'
:
'
Stop
'
,
'
Pause
'
:
'
Pause
'
,
'
Recovery Suspend
'
:
'
Recovery Suspend
'
,
'
Recovery Stop
'
:
'
Recovery Stop
'
,
'
Gantt
'
:
'
Gantt
'
,
'
Name
'
:
'
Name
'
,
'
Node Type
'
:
'
Node Type
'
,
...
...
escheduler-ui/src/js/module/i18n/locale/zh_CN.js
浏览文件 @
2a128343
...
...
@@ -238,6 +238,7 @@ export default {
'
Stop
'
:
'
停止
'
,
'
Pause
'
:
'
暂停
'
,
'
Recovery Suspend
'
:
'
恢复暂停
'
,
'
Recovery Stop
'
:
'
恢复停止
'
,
'
Gantt
'
:
'
甘特图
'
,
'
Name
'
:
'
名称
'
,
'
Node Type
'
:
'
节点类型
'
,
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录