This is an automated email from the ASF dual-hosted git repository. nic pushed a commit to branch 3.0.x in repository https://gitbox.apache.org/repos/asf/kylin.git
commit b764400e3bd76cd6c4ca8f2345e369783a754284 Author: bigxiaochu <crow...@163.com> AuthorDate: Tue Nov 12 17:57:36 2019 +0800 KYLIN-4250 FechRunnner should skip the job to process other jobs instead of throwing exception when the job section metadata is not found --- .../kylin/job/impl/threadpool/DefaultFetcherRunner.java | 14 +++++++++++++- .../kylin/job/impl/threadpool/PriorityFetcherRunner.java | 14 +++++++++++++- 2 files changed, 26 insertions(+), 2 deletions(-) diff --git a/core-job/src/main/java/org/apache/kylin/job/impl/threadpool/DefaultFetcherRunner.java b/core-job/src/main/java/org/apache/kylin/job/impl/threadpool/DefaultFetcherRunner.java index 3f51018..1c21902 100644 --- a/core-job/src/main/java/org/apache/kylin/job/impl/threadpool/DefaultFetcherRunner.java +++ b/core-job/src/main/java/org/apache/kylin/job/impl/threadpool/DefaultFetcherRunner.java @@ -66,7 +66,14 @@ public class DefaultFetcherRunner extends FetcherRunner { continue; } - final Output outputDigest = getExecutableManager().getOutputDigest(id); + final Output outputDigest; + try { + outputDigest = getExecutableManager().getOutputDigest(id); + } catch (IllegalArgumentException e) { + logger.warn("job " + id + " output digest is null, skip.", e); + nOthers++; + continue; + } if ((outputDigest.getState() != ExecutableState.READY)) { // logger.debug("Job id:" + id + " not runnable"); jobStateCount(id); @@ -74,6 +81,11 @@ public class DefaultFetcherRunner extends FetcherRunner { } final AbstractExecutable executable = getExecutableManager().getJob(id); + if (executable == null) { + logger.info("job " + id + " get job is null, skip."); + nOthers++; + continue; + } if (!executable.isReady()) { nOthers++; continue; diff --git a/core-job/src/main/java/org/apache/kylin/job/impl/threadpool/PriorityFetcherRunner.java b/core-job/src/main/java/org/apache/kylin/job/impl/threadpool/PriorityFetcherRunner.java index 60bf77b..cb01475 100644 --- a/core-job/src/main/java/org/apache/kylin/job/impl/threadpool/PriorityFetcherRunner.java +++ b/core-job/src/main/java/org/apache/kylin/job/impl/threadpool/PriorityFetcherRunner.java @@ -99,13 +99,25 @@ public class PriorityFetcherRunner extends FetcherRunner { continue; } - final Output outputDigest = getExecutableManager().getOutputDigest(id); + final Output outputDigest; + try { + outputDigest = getExecutableManager().getOutputDigest(id); + } catch (IllegalArgumentException e) { + logger.warn("job " + id + " output digest is null, skip.", e); + nOthers++; + continue; + } if ((outputDigest.getState() != ExecutableState.READY)) { jobStateCount(id); continue; } AbstractExecutable executable = getExecutableManager().getJob(id); + if (executable == null) { + logger.info("job " + id + " get job is null, skip."); + nOthers++; + continue; + } if (!executable.isReady()) { nOthers++; continue;