From d656319ccbfdbeb6feca7ca4a8e09acbd8fcf164 Mon Sep 17 00:00:00 2001 From: kangkaisen Date: Wed, 17 May 2017 12:15:18 +0800 Subject: [PATCH] KYLIN-2626 Fix InstantiationException in ZookeeperDistributedJobLock --- .../src/main/java/org/apache/kylin/common/KylinConfigBase.java | 4 ---- .../src/main/java/org/apache/kylin/rest/service/JobService.java | 9 ++------- 2 files changed, 2 insertions(+), 11 deletions(-) diff --git a/core-common/src/main/java/org/apache/kylin/common/KylinConfigBase.java b/core-common/src/main/java/org/apache/kylin/common/KylinConfigBase.java index 956518fb2..b51037c3f 100644 --- a/core-common/src/main/java/org/apache/kylin/common/KylinConfigBase.java +++ b/core-common/src/main/java/org/apache/kylin/common/KylinConfigBase.java @@ -435,10 +435,6 @@ abstract public class KylinConfigBase implements Serializable { return Integer.parseInt(getOptional("kylin.job.sampling-hll-precision", "14")); } - public String getJobControllerLock() { - return getOptional("kylin.job.lock", "org.apache.kylin.storage.hbase.util.ZookeeperJobLock"); - } - public Map getSchedulers() { Map r = Maps.newLinkedHashMap(); r.put(0, "org.apache.kylin.job.impl.threadpool.DefaultScheduler"); diff --git a/server-base/src/main/java/org/apache/kylin/rest/service/JobService.java b/server-base/src/main/java/org/apache/kylin/rest/service/JobService.java index 4ba426e9d..e8c4c10ef 100644 --- a/server-base/src/main/java/org/apache/kylin/rest/service/JobService.java +++ b/server-base/src/main/java/org/apache/kylin/rest/service/JobService.java @@ -30,7 +30,6 @@ import java.util.TimeZone; import org.apache.commons.lang3.StringUtils; import org.apache.kylin.common.KylinConfig; -import org.apache.kylin.common.util.ClassUtil; import org.apache.kylin.cube.CubeInstance; import org.apache.kylin.cube.CubeSegment; import org.apache.kylin.cube.CubeUpdate; @@ -51,7 +50,6 @@ import org.apache.kylin.job.execution.AbstractExecutable; import org.apache.kylin.job.execution.DefaultChainedExecutable; import org.apache.kylin.job.execution.ExecutableState; import org.apache.kylin.job.execution.Output; -import org.apache.kylin.job.lock.JobLock; import org.apache.kylin.metadata.model.SegmentStatusEnum; import org.apache.kylin.metadata.realization.RealizationStatusEnum; import org.apache.kylin.rest.constant.Constant; @@ -59,6 +57,7 @@ import org.apache.kylin.rest.exception.BadRequestException; import org.apache.kylin.source.ISource; import org.apache.kylin.source.SourceFactory; import org.apache.kylin.source.SourcePartition; +import org.apache.kylin.storage.hbase.util.ZookeeperJobLock; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.InitializingBean; @@ -85,8 +84,6 @@ public class JobService extends BasicService implements InitializingBean { private static final Logger logger = LoggerFactory.getLogger(JobService.class); - private JobLock jobLock; - @Autowired private AccessService accessService; @@ -107,13 +104,11 @@ public class JobService extends BasicService implements InitializingBean { final KylinConfig kylinConfig = KylinConfig.getInstanceFromEnv(); final Scheduler scheduler = (Scheduler) SchedulerFactory.scheduler(kylinConfig.getSchedulerType()); - jobLock = (JobLock) ClassUtil.newInstance(kylinConfig.getJobControllerLock()); - new Thread(new Runnable() { @Override public void run() { try { - scheduler.init(new JobEngineConfig(kylinConfig), jobLock); + scheduler.init(new JobEngineConfig(kylinConfig), new ZookeeperJobLock()); if (!scheduler.hasStarted()) { logger.info("scheduler has not been started"); } -- 2.11.0 (Apple Git-81)