diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/processor/AbstractDataSyncJobProcessor.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/processor/AbstractDataSyncJobProcessor.java index 950c397c2d..2f3062448b 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/processor/AbstractDataSyncJobProcessor.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/processor/AbstractDataSyncJobProcessor.java @@ -80,6 +80,10 @@ public abstract class AbstractDataSyncJobProcessor { RLock lock = null; try { lock = distributedLock.getLock(getDistributeLockKey(), getDistributeLockLeaseTime(), getDistributeLockWaitTime(), TimeUnit.SECONDS); + if (lock == null) { + log.warn("【异步数据更新】{}获取锁为空", getJobType()); + return; + } // 查询可执行的任务列表,并且异步执行 List icSyncJobToExec = icSyncJobDao.selectJobListByStatus("waiting", getJobType(), null, leftCount); if (!CollectionUtils.isEmpty(icSyncJobToExec)) { @@ -89,9 +93,7 @@ public abstract class AbstractDataSyncJobProcessor { } catch (Exception e) { log.error("【异步数据更新】出错:{}", ExceptionUtils.getErrorStackTrace(e)); } finally { - if (lock != null) { - lock.unlock(); - } + distributedLock.unLock(lock); } }