public abstract class H2Persistence extends Object implements TaskPersistence
| 限定符和类型 | 字段和说明 |
|---|---|
protected H2ConnectionPool |
h2CP |
protected TaskDao |
taskDao |
| 构造器和说明 |
|---|
H2Persistence() |
| 限定符和类型 | 方法和说明 |
|---|---|
int |
batchUpdateTaskStatus(long jobInstanceId,
com.alibaba.schedulerx.common.domain.TaskStatus status,
String workerId,
String workerAddr)
update tasks status using condition {jobInstanceId, workerId, workerAddr}
|
com.alibaba.schedulerx.common.domain.InstanceStatus |
checkInstanceStatus(long jobInstanceId)
check job instance current status
|
void |
clearTasks(long jobInstanceId)
clear all tasks belong to specific job instance
|
void |
createTask(long jobId,
long jobInstanceId,
long taskId,
String taskName,
com.google.protobuf.ByteString taskBody)
create task
|
void |
createTasks(List<com.alibaba.schedulerx.protocol.Worker.MasterStartContainerRequest> containers,
String workerId,
String workerAddr)
batch create container infos
|
List<Long> |
getDistinctInstanceIds()
获取h2中存留的结束但是未删除的实例
|
TaskStatistics |
getTaskStatistics()
获取h2 task汇总统计
|
void |
initTable()
init task table;
|
boolean |
isInited() |
List<TaskInfo> |
pull(long jobInstanceId,
int pageSize)
pull init tasks for failover retry
|
void |
updateTaskStatues(List<com.alibaba.schedulerx.protocol.Worker.ContainerReportTaskStatusRequest> taskStatusInfos)
!!!
|
int |
updateTaskStatus(long jobInstanceId,
List<Long> taskIds,
com.alibaba.schedulerx.common.domain.TaskStatus status,
String workerId,
String workerAddr)
update tasksk status and worker info
|
protected H2ConnectionPool h2CP
protected TaskDao taskDao
public void initTable()
throws Exception
TaskPersistenceinitTable 在接口中 TaskPersistenceExceptionpublic int updateTaskStatus(long jobInstanceId,
List<Long> taskIds,
com.alibaba.schedulerx.common.domain.TaskStatus status,
String workerId,
String workerAddr)
throws Exception
TaskPersistenceupdateTaskStatus 在接口中 TaskPersistenceExceptionpublic void updateTaskStatues(List<com.alibaba.schedulerx.protocol.Worker.ContainerReportTaskStatusRequest> taskStatusInfos) throws Exception
updateTaskStatues 在接口中 TaskPersistencetaskStatusInfos - list of task statusExceptionpublic void clearTasks(long jobInstanceId)
throws Exception
TaskPersistenceclearTasks 在接口中 TaskPersistenceExceptionpublic void createTask(long jobId,
long jobInstanceId,
long taskId,
String taskName,
com.google.protobuf.ByteString taskBody)
throws Exception
TaskPersistencecreateTask 在接口中 TaskPersistenceExceptionpublic void createTasks(List<com.alibaba.schedulerx.protocol.Worker.MasterStartContainerRequest> containers, String workerId, String workerAddr) throws Exception
TaskPersistencecreateTasks 在接口中 TaskPersistencecontainers - infos of containerExceptionpublic List<TaskInfo> pull(long jobInstanceId, int pageSize) throws Exception
TaskPersistencepull 在接口中 TaskPersistenceExceptionpublic com.alibaba.schedulerx.common.domain.InstanceStatus checkInstanceStatus(long jobInstanceId)
throws Exception
TaskPersistencecheckInstanceStatus 在接口中 TaskPersistenceExceptionpublic int batchUpdateTaskStatus(long jobInstanceId,
com.alibaba.schedulerx.common.domain.TaskStatus status,
String workerId,
String workerAddr)
TaskPersistencebatchUpdateTaskStatus 在接口中 TaskPersistencejobInstanceId - tasks jobInstanceIdstatus - status to be updateworkerId - tasks workerIdworkerAddr - tasks workerAddrpublic TaskStatistics getTaskStatistics() throws Exception
Exceptionpublic List<Long> getDistinctInstanceIds() throws Exception
Exceptionpublic boolean isInited()
Copyright © 2021. All rights reserved.