forked from github/dataease
fix(數據集): 数据集任务,增加简单重复执行的功能
This commit is contained in:
parent
7b345b400f
commit
3b0b5d2f0c
@ -100,8 +100,9 @@ public class DataSetTableService {
|
|||||||
private void extractData(DataSetTableRequest datasetTable) throws Exception{
|
private void extractData(DataSetTableRequest datasetTable) throws Exception{
|
||||||
if (StringUtils.equalsIgnoreCase(datasetTable.getType(), "excel")) {
|
if (StringUtils.equalsIgnoreCase(datasetTable.getType(), "excel")) {
|
||||||
commonThreadPool.addTask(() -> {
|
commonThreadPool.addTask(() -> {
|
||||||
extractDataService.extractData(datasetTable.getId(), null, "all_scope", null);
|
extractDataService.extractExcelData(datasetTable.getId(), "all_scope");
|
||||||
});
|
});
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
if (StringUtils.isNotEmpty(datasetTable.getSyncType()) && datasetTable.getSyncType().equalsIgnoreCase("sync_now")) {
|
if (StringUtils.isNotEmpty(datasetTable.getSyncType()) && datasetTable.getSyncType().equalsIgnoreCase("sync_now")) {
|
||||||
DataSetTaskRequest dataSetTaskRequest = new DataSetTaskRequest();
|
DataSetTaskRequest dataSetTaskRequest = new DataSetTaskRequest();
|
||||||
@ -111,8 +112,6 @@ public class DataSetTableService {
|
|||||||
datasetTableTask.setType("all_scope");
|
datasetTableTask.setType("all_scope");
|
||||||
datasetTableTask.setName(datasetTable.getName() + " 更新设置");
|
datasetTableTask.setName(datasetTable.getName() + " 更新设置");
|
||||||
datasetTableTask.setEnd("0");
|
datasetTableTask.setEnd("0");
|
||||||
datasetTableTask.setStatus(TaskStatus.Underway.name());
|
|
||||||
datasetTableTask.setStartTime(System.currentTimeMillis());
|
|
||||||
dataSetTaskRequest.setDatasetTableTask(datasetTableTask);
|
dataSetTaskRequest.setDatasetTableTask(datasetTableTask);
|
||||||
dataSetTableTaskService.save(dataSetTaskRequest);
|
dataSetTableTaskService.save(dataSetTaskRequest);
|
||||||
}
|
}
|
||||||
@ -149,11 +148,11 @@ public class DataSetTableService {
|
|||||||
if (StringUtils.equalsIgnoreCase(datasetTable.getType(), "excel")) {
|
if (StringUtils.equalsIgnoreCase(datasetTable.getType(), "excel")) {
|
||||||
if (datasetTable.getEditType() == 0) {
|
if (datasetTable.getEditType() == 0) {
|
||||||
commonThreadPool.addTask(() -> {
|
commonThreadPool.addTask(() -> {
|
||||||
extractDataService.extractData(datasetTable.getId(), null, "all_scope", null);
|
extractDataService.extractExcelData(datasetTable.getId(), "all_scope");
|
||||||
});
|
});
|
||||||
} else if (datasetTable.getEditType() == 1) {
|
} else if (datasetTable.getEditType() == 1) {
|
||||||
commonThreadPool.addTask(() -> {
|
commonThreadPool.addTask(() -> {
|
||||||
extractDataService.extractData(datasetTable.getId(), null, "add_scope", null);
|
extractDataService.extractExcelData(datasetTable.getId(), "add_scope");
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,10 +1,8 @@
|
|||||||
package io.dataease.service.dataset;
|
package io.dataease.service.dataset;
|
||||||
|
|
||||||
import com.google.gson.Gson;
|
import com.google.gson.Gson;
|
||||||
import io.dataease.base.domain.DatasetTable;
|
import io.dataease.base.domain.*;
|
||||||
import io.dataease.base.domain.DatasetTableTask;
|
import io.dataease.base.mapper.DatasetTableMapper;
|
||||||
import io.dataease.base.domain.DatasetTableTaskExample;
|
|
||||||
import io.dataease.base.domain.DatasetTableTaskLog;
|
|
||||||
import io.dataease.base.mapper.DatasetTableTaskMapper;
|
import io.dataease.base.mapper.DatasetTableTaskMapper;
|
||||||
import io.dataease.base.mapper.ext.ExtDataSetTaskMapper;
|
import io.dataease.base.mapper.ext.ExtDataSetTaskMapper;
|
||||||
import io.dataease.base.mapper.ext.query.GridExample;
|
import io.dataease.base.mapper.ext.query.GridExample;
|
||||||
@ -53,6 +51,9 @@ public class DataSetTableTaskService {
|
|||||||
private ExtractDataService extractDataService;
|
private ExtractDataService extractDataService;
|
||||||
@Resource
|
@Resource
|
||||||
private ExtDataSetTaskMapper extDataSetTaskMapper;
|
private ExtDataSetTaskMapper extDataSetTaskMapper;
|
||||||
|
@Resource
|
||||||
|
private DatasetTableMapper datasetTableMapper;
|
||||||
|
|
||||||
|
|
||||||
public DatasetTableTask save(DataSetTaskRequest dataSetTaskRequest) throws Exception {
|
public DatasetTableTask save(DataSetTaskRequest dataSetTaskRequest) throws Exception {
|
||||||
checkName(dataSetTaskRequest);
|
checkName(dataSetTaskRequest);
|
||||||
@ -86,19 +87,15 @@ public class DataSetTableTaskService {
|
|||||||
} else {
|
} else {
|
||||||
datasetTableTaskMapper.updateByPrimaryKeySelective(datasetTableTask);
|
datasetTableTaskMapper.updateByPrimaryKeySelective(datasetTableTask);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// simple
|
||||||
if (datasetTableTask.getRate().equalsIgnoreCase(ScheduleType.SIMPLE.toString()) && datasetTableTask.getStatus().equalsIgnoreCase(TaskStatus.Underway.name())) { // SIMPLE 类型,提前占位
|
if (datasetTableTask.getRate().equalsIgnoreCase(ScheduleType.SIMPLE.toString()) && datasetTableTask.getStatus().equalsIgnoreCase(TaskStatus.Underway.name())) { // SIMPLE 类型,提前占位
|
||||||
execNow(datasetTableTask);
|
execNow(datasetTableTask);
|
||||||
datasetTableTask.setLastExecStatus(JobStatus.Underway.name());
|
scheduleService.addSchedule(datasetTableTask);
|
||||||
datasetTableTask.setLastExecTime(System.currentTimeMillis());
|
|
||||||
update(datasetTableTask);
|
|
||||||
}
|
}
|
||||||
|
//cron、simple_cron
|
||||||
if(!datasetTableTask.getRate().equalsIgnoreCase(ScheduleType.SIMPLE.name())){
|
if(!datasetTableTask.getRate().equalsIgnoreCase(ScheduleType.SIMPLE.name())){
|
||||||
scheduleService.addSchedule(datasetTableTask);
|
scheduleService.addSchedule(datasetTableTask);
|
||||||
}else {
|
|
||||||
if(datasetTableTask.getStatus().equalsIgnoreCase(JobStatus.Underway.name())){
|
|
||||||
System.out.println(new Gson().toJson(datasetTableTask));
|
|
||||||
scheduleService.addSchedule(datasetTableTask);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return datasetTableTask;
|
return datasetTableTask;
|
||||||
@ -111,17 +108,30 @@ public class DataSetTableTaskService {
|
|||||||
DataEaseException.throwException(Translator.get("i18n_not_exec_add_sync"));
|
DataEaseException.throwException(Translator.get("i18n_not_exec_add_sync"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (extractDataService.existSyncTask(dataSetTableService.get(datasetTableTask.getTableId()), null)) {
|
if (existSyncTask(dataSetTableService.get(datasetTableTask.getTableId()), datasetTableTask)) {
|
||||||
DataEaseException.throwException(Translator.get("i18n_sync_job_exists"));
|
DataEaseException.throwException(Translator.get("i18n_sync_job_exists"));
|
||||||
}
|
}
|
||||||
//write log
|
}
|
||||||
DatasetTableTaskLog datasetTableTaskLog = new DatasetTableTaskLog();
|
|
||||||
datasetTableTaskLog.setTableId(datasetTableTask.getTableId());
|
private synchronized boolean existSyncTask(DatasetTable datasetTable, DatasetTableTask datasetTableTask) {
|
||||||
datasetTableTaskLog.setTaskId(datasetTableTask.getId());
|
datasetTable.setSyncStatus(JobStatus.Underway.name());
|
||||||
datasetTableTaskLog.setStatus(JobStatus.Underway.name());
|
DatasetTableExample example = new DatasetTableExample();
|
||||||
datasetTableTaskLog.setStartTime(System.currentTimeMillis());
|
example.createCriteria().andIdEqualTo(datasetTable.getId()).andSyncStatusNotEqualTo(JobStatus.Underway.name());
|
||||||
datasetTableTaskLog.setTriggerType(TriggerType.Custom.name());
|
example.or(example.createCriteria().andIdEqualTo(datasetTable.getId()).andSyncStatusIsNull());
|
||||||
dataSetTableTaskLogService.save(datasetTableTaskLog);
|
Boolean existSyncTask = datasetTableMapper.updateByExampleSelective(datasetTable, example) == 0;
|
||||||
|
if(!existSyncTask){
|
||||||
|
datasetTableTask.setLastExecTime(System.currentTimeMillis());
|
||||||
|
datasetTableTask.setLastExecStatus(JobStatus.Underway.name());
|
||||||
|
update(datasetTableTask);
|
||||||
|
DatasetTableTaskLog datasetTableTaskLog = new DatasetTableTaskLog();
|
||||||
|
datasetTableTaskLog.setTableId(datasetTableTask.getTableId());
|
||||||
|
datasetTableTaskLog.setTaskId(datasetTableTask.getId());
|
||||||
|
datasetTableTaskLog.setStatus(JobStatus.Underway.name());
|
||||||
|
datasetTableTaskLog.setStartTime(System.currentTimeMillis());
|
||||||
|
datasetTableTaskLog.setTriggerType(TriggerType.Custom.name());
|
||||||
|
dataSetTableTaskLogService.save(datasetTableTaskLog);
|
||||||
|
}
|
||||||
|
return existSyncTask;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void delete(String id) {
|
public void delete(String id) {
|
||||||
@ -207,11 +217,6 @@ public class DataSetTableTaskService {
|
|||||||
|
|
||||||
public void execTask(DatasetTableTask datasetTableTask) throws Exception{
|
public void execTask(DatasetTableTask datasetTableTask) throws Exception{
|
||||||
execNow(datasetTableTask);
|
execNow(datasetTableTask);
|
||||||
// datasetTableTask.setStatus(TaskStatus.Underway.name());
|
|
||||||
datasetTableTask.setLastExecStatus(JobStatus.Underway.name());
|
|
||||||
datasetTableTask.setLastExecTime(System.currentTimeMillis());
|
|
||||||
update(datasetTableTask);
|
|
||||||
|
|
||||||
if(datasetTableTask.getRate().equalsIgnoreCase(ScheduleType.CRON.toString())){
|
if(datasetTableTask.getRate().equalsIgnoreCase(ScheduleType.CRON.toString())){
|
||||||
scheduleService.fireNow(datasetTableTask);
|
scheduleService.fireNow(datasetTableTask);
|
||||||
}
|
}
|
||||||
|
@ -138,22 +138,102 @@ public class ExtractDataService {
|
|||||||
example.or(example.createCriteria().andIdEqualTo(datasetTable.getId()).andSyncStatusIsNull());
|
example.or(example.createCriteria().andIdEqualTo(datasetTable.getId()).andSyncStatusIsNull());
|
||||||
Boolean existSyncTask = datasetTableMapper.updateByExampleSelective(datasetTable, example) == 0;
|
Boolean existSyncTask = datasetTableMapper.updateByExampleSelective(datasetTable, example) == 0;
|
||||||
if(existSyncTask){
|
if(existSyncTask){
|
||||||
if(datasetTableTask != null){
|
DatasetTableTaskLog datasetTableTaskLog = new DatasetTableTaskLog();
|
||||||
DatasetTableTaskLog datasetTableTaskLog = new DatasetTableTaskLog();
|
datasetTableTaskLog.setTaskId(datasetTableTask.getId());
|
||||||
datasetTableTaskLog.setTaskId(datasetTableTask.getId());
|
datasetTableTaskLog.setTableId(datasetTable.getId());
|
||||||
datasetTableTaskLog.setTableId(datasetTable.getId());
|
datasetTableTaskLog.setStatus(JobStatus.Underway.name());
|
||||||
datasetTableTaskLog.setStatus(JobStatus.Underway.name());
|
List<DatasetTableTaskLog> datasetTableTaskLogs = dataSetTableTaskLogService.select(datasetTableTaskLog);
|
||||||
List<DatasetTableTaskLog> datasetTableTaskLogs = dataSetTableTaskLogService.select(datasetTableTaskLog);
|
if(CollectionUtils.isNotEmpty(datasetTableTaskLogs) && datasetTableTaskLogs.get(0).getTriggerType().equalsIgnoreCase(TriggerType.Custom.name())){
|
||||||
if(CollectionUtils.isNotEmpty(datasetTableTaskLogs) && datasetTableTaskLogs.get(0).getTriggerType().equalsIgnoreCase(TriggerType.Custom.name())){
|
return false;
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
}else {
|
}else {
|
||||||
|
datasetTableTask.setLastExecTime(System.currentTimeMillis());
|
||||||
|
datasetTableTask.setLastExecStatus(JobStatus.Underway.name());
|
||||||
|
dataSetTableTaskService.update(datasetTableTask);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void extractExcelData(String datasetTableId, String type) {
|
||||||
|
Datasource datasource = new Datasource();
|
||||||
|
datasource.setType("excel");
|
||||||
|
DatasetTable datasetTable = getDatasetTable(datasetTableId);
|
||||||
|
if (datasetTable == null) {
|
||||||
|
LogUtil.error("Can not find DatasetTable: " + datasetTableId);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
UpdateType updateType = UpdateType.valueOf(type);
|
||||||
|
DatasetTableTaskLog datasetTableTaskLog = new DatasetTableTaskLog();
|
||||||
|
List<DatasetTableField> datasetTableFields = dataSetTableFieldsService.list(DatasetTableField.builder().tableId(datasetTable.getId()).build());
|
||||||
|
datasetTableFields.sort((o1, o2) -> {
|
||||||
|
if (o1.getColumnIndex() == null) {
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
if (o2.getColumnIndex() == null) {
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
return o1.getColumnIndex().compareTo(o2.getColumnIndex());
|
||||||
|
});
|
||||||
|
String dorisTablColumnSql = createDorisTablColumnSql(datasetTableFields);
|
||||||
|
switch (updateType) {
|
||||||
|
case all_scope: // 全量更新
|
||||||
|
try {
|
||||||
|
datasetTableTaskLog = writeDatasetTableTaskLog(datasetTableTaskLog, datasetTableId, null);
|
||||||
|
createDorisTable(DorisTableUtils.dorisName(datasetTableId), dorisTablColumnSql);
|
||||||
|
createDorisTable(DorisTableUtils.dorisTmpName(DorisTableUtils.dorisName(datasetTableId)), dorisTablColumnSql);
|
||||||
|
generateTransFile("all_scope", datasetTable, datasource, datasetTableFields, null);
|
||||||
|
if (datasetTable.getType().equalsIgnoreCase("sql")) {
|
||||||
|
generateJobFile("all_scope", datasetTable, fetchSqlField(new Gson().fromJson(datasetTable.getInfo(), DataTableInfoDTO.class).getSql(), datasource));
|
||||||
|
} else {
|
||||||
|
generateJobFile("all_scope", datasetTable, String.join(",", datasetTableFields.stream().map(DatasetTableField::getDataeaseName).collect(Collectors.toList())));
|
||||||
|
}
|
||||||
|
Long execTime = System.currentTimeMillis();
|
||||||
|
extractData(datasetTable, "all_scope");
|
||||||
|
replaceTable(DorisTableUtils.dorisName(datasetTableId));
|
||||||
|
saveSucessLog(datasetTableTaskLog);
|
||||||
|
sendWebMsg(datasetTable, null, true);
|
||||||
|
deleteFile("all_scope", datasetTableId);
|
||||||
|
updateTableStatus(datasetTableId, datasetTable, JobStatus.Completed, execTime);
|
||||||
|
} catch (Exception e) {
|
||||||
|
saveErrorLog(datasetTableId, null, e);
|
||||||
|
sendWebMsg(datasetTable, null, false);
|
||||||
|
updateTableStatus(datasetTableId, datasetTable, JobStatus.Error, null);
|
||||||
|
dropDorisTable(DorisTableUtils.dorisTmpName(DorisTableUtils.dorisName(datasetTableId)));
|
||||||
|
deleteFile("all_scope", datasetTableId);
|
||||||
|
} finally {
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
|
case add_scope: // 增量更新
|
||||||
|
try {
|
||||||
|
datasetTableTaskLog = writeDatasetTableTaskLog(datasetTableTaskLog, datasetTableId, null);
|
||||||
|
generateTransFile("incremental_add", datasetTable, datasource, datasetTableFields, null);
|
||||||
|
generateJobFile("incremental_add", datasetTable, String.join(",", datasetTableFields.stream().map(DatasetTableField::getDataeaseName).collect(Collectors.toList())));
|
||||||
|
Long execTime = System.currentTimeMillis();
|
||||||
|
extractData(datasetTable, "incremental_add");
|
||||||
|
saveSucessLog(datasetTableTaskLog);
|
||||||
|
sendWebMsg(datasetTable, null, true);
|
||||||
|
updateTableStatus(datasetTableId, datasetTable, JobStatus.Completed, execTime);
|
||||||
|
} catch (Exception e) {
|
||||||
|
saveErrorLog(datasetTableId, null, e);
|
||||||
|
sendWebMsg(datasetTable, null, false);
|
||||||
|
updateTableStatus(datasetTableId, datasetTable, JobStatus.Error, null);
|
||||||
|
deleteFile("incremental_add", datasetTableId);
|
||||||
|
deleteFile("incremental_delete", datasetTableId);
|
||||||
|
} finally {
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
//侵入式清除下属视图缓存
|
||||||
|
List<String> viewIds = extChartViewMapper.allViewIds(datasetTableId);
|
||||||
|
if (CollectionUtils.isNotEmpty(viewIds)){
|
||||||
|
viewIds.forEach(viewId -> {
|
||||||
|
CacheUtils.remove(JdbcConstants.VIEW_CACHE_KEY, viewId);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public void extractData(String datasetTableId, String taskId, String type, JobExecutionContext context) {
|
public void extractData(String datasetTableId, String taskId, String type, JobExecutionContext context) {
|
||||||
DatasetTable datasetTable = getDatasetTable(datasetTableId);
|
DatasetTable datasetTable = getDatasetTable(datasetTableId);
|
||||||
if(datasetTable == null){
|
if(datasetTable == null){
|
||||||
@ -161,7 +241,10 @@ public class ExtractDataService {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
DatasetTableTask datasetTableTask = datasetTableTaskMapper.selectByPrimaryKey(taskId);
|
DatasetTableTask datasetTableTask = datasetTableTaskMapper.selectByPrimaryKey(taskId);
|
||||||
if(datasetTableTask.getStatus().equalsIgnoreCase(TaskStatus.Stopped.name()) && !datasetTableTask.getRate().equalsIgnoreCase(ScheduleType.SIMPLE.name())){
|
if(datasetTableTask == null){
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if(datasetTableTask.getStatus().equalsIgnoreCase(TaskStatus.Stopped.name())){
|
||||||
LogUtil.info("Skip synchronization task, task ID : " + datasetTableTask.getId());
|
LogUtil.info("Skip synchronization task, task ID : " + datasetTableTask.getId());
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@ -169,9 +252,6 @@ public class ExtractDataService {
|
|||||||
LogUtil.info("Skip synchronization task for dataset, dataset ID : " + datasetTableId);
|
LogUtil.info("Skip synchronization task for dataset, dataset ID : " + datasetTableId);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
datasetTableTask.setLastExecTime(System.currentTimeMillis());
|
|
||||||
datasetTableTask.setLastExecStatus(JobStatus.Underway.name());
|
|
||||||
dataSetTableTaskService.update(datasetTableTask);
|
|
||||||
|
|
||||||
DatasetTableTaskLog datasetTableTaskLog = new DatasetTableTaskLog();
|
DatasetTableTaskLog datasetTableTaskLog = new DatasetTableTaskLog();
|
||||||
UpdateType updateType = UpdateType.valueOf(type);
|
UpdateType updateType = UpdateType.valueOf(type);
|
||||||
@ -227,19 +307,12 @@ public class ExtractDataService {
|
|||||||
deleteFile("all_scope", datasetTableId);
|
deleteFile("all_scope", datasetTableId);
|
||||||
|
|
||||||
updateTableStatus(datasetTableId, datasetTable, JobStatus.Completed, execTime);
|
updateTableStatus(datasetTableId, datasetTable, JobStatus.Completed, execTime);
|
||||||
|
|
||||||
// if (datasetTableTask.getRate().equalsIgnoreCase(ScheduleType.SIMPLE.toString())) {
|
|
||||||
// datasetTableTask.setStatus(TaskStatus.Stopped.name());
|
|
||||||
// }
|
|
||||||
datasetTableTask.setLastExecStatus(JobStatus.Completed.name());
|
datasetTableTask.setLastExecStatus(JobStatus.Completed.name());
|
||||||
dataSetTableTaskService.update(datasetTableTask);
|
dataSetTableTaskService.update(datasetTableTask);
|
||||||
|
|
||||||
}catch (Exception e){
|
}catch (Exception e){
|
||||||
saveErrorLog(datasetTableId, taskId, e);
|
saveErrorLog(datasetTableId, taskId, e);
|
||||||
datasetTableTask.setLastExecStatus(JobStatus.Error.name());
|
datasetTableTask.setLastExecStatus(JobStatus.Error.name());
|
||||||
// if (datasetTableTask.getRate().equalsIgnoreCase(ScheduleType.SIMPLE.toString())) {
|
|
||||||
// datasetTableTask.setStatus(TaskStatus.Stopped.name());
|
|
||||||
// }
|
|
||||||
dataSetTableTaskService.update(datasetTableTask);
|
dataSetTableTaskService.update(datasetTableTask);
|
||||||
|
|
||||||
sendWebMsg(datasetTable, taskId,false);
|
sendWebMsg(datasetTable, taskId,false);
|
||||||
@ -279,7 +352,6 @@ public class ExtractDataService {
|
|||||||
if(datasetTableTask != null && datasetTableTask.getRate().equalsIgnoreCase(ScheduleType.SIMPLE.toString())) {
|
if(datasetTableTask != null && datasetTableTask.getRate().equalsIgnoreCase(ScheduleType.SIMPLE.toString())) {
|
||||||
datasetTableTaskLog = getDatasetTableTaskLog(datasetTableTaskLog, datasetTableId, taskId);
|
datasetTableTaskLog = getDatasetTableTaskLog(datasetTableTaskLog, datasetTableId, taskId);
|
||||||
}
|
}
|
||||||
|
|
||||||
Long execTime = System.currentTimeMillis();
|
Long execTime = System.currentTimeMillis();
|
||||||
if (StringUtils.isNotEmpty(datasetTableIncrementalConfig.getIncrementalAdd()) && StringUtils.isNotEmpty(datasetTableIncrementalConfig.getIncrementalAdd().replace(" ", ""))) {// 增量添加
|
if (StringUtils.isNotEmpty(datasetTableIncrementalConfig.getIncrementalAdd()) && StringUtils.isNotEmpty(datasetTableIncrementalConfig.getIncrementalAdd().replace(" ", ""))) {// 增量添加
|
||||||
String sql = datasetTableIncrementalConfig.getIncrementalAdd().replace(lastUpdateTime, datasetTable.getLastUpdateTime().toString())
|
String sql = datasetTableIncrementalConfig.getIncrementalAdd().replace(lastUpdateTime, datasetTable.getLastUpdateTime().toString())
|
||||||
@ -305,9 +377,6 @@ public class ExtractDataService {
|
|||||||
|
|
||||||
updateTableStatus(datasetTableId, datasetTable, JobStatus.Completed, execTime);
|
updateTableStatus(datasetTableId, datasetTable, JobStatus.Completed, execTime);
|
||||||
datasetTableTask.setLastExecStatus(JobStatus.Completed.name());
|
datasetTableTask.setLastExecStatus(JobStatus.Completed.name());
|
||||||
// if (datasetTableTask.getRate().equalsIgnoreCase(ScheduleType.SIMPLE.toString())) {
|
|
||||||
// datasetTableTask.setStatus(TaskStatus.Stopped.name());
|
|
||||||
// }
|
|
||||||
dataSetTableTaskService.update(datasetTableTask);
|
dataSetTableTaskService.update(datasetTableTask);
|
||||||
}
|
}
|
||||||
}catch (Exception e){
|
}catch (Exception e){
|
||||||
@ -315,9 +384,6 @@ public class ExtractDataService {
|
|||||||
sendWebMsg(datasetTable, taskId,false);
|
sendWebMsg(datasetTable, taskId,false);
|
||||||
updateTableStatus(datasetTableId, datasetTable, JobStatus.Error, null);
|
updateTableStatus(datasetTableId, datasetTable, JobStatus.Error, null);
|
||||||
datasetTableTask.setLastExecStatus(JobStatus.Error.name());
|
datasetTableTask.setLastExecStatus(JobStatus.Error.name());
|
||||||
// if (datasetTableTask.getRate().equalsIgnoreCase(ScheduleType.SIMPLE.toString())) {
|
|
||||||
// datasetTableTask.setStatus(TaskStatus.Stopped.name());
|
|
||||||
// }
|
|
||||||
dataSetTableTaskService.update(datasetTableTask);
|
dataSetTableTaskService.update(datasetTableTask);
|
||||||
deleteFile("incremental_add", datasetTableId);
|
deleteFile("incremental_add", datasetTableId);
|
||||||
deleteFile("incremental_delete", datasetTableId);
|
deleteFile("incremental_delete", datasetTableId);
|
||||||
|
Loading…
Reference in New Issue
Block a user