You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kylin.apache.org by li...@apache.org on 2015/02/27 07:25:52 UTC
[39/41] incubator-kylin git commit: 1. auto-correct "com.kylinolap"
before Class.forName() 2. Rename KYLIN_CONF_HOME to KYLIN_CONF
1. auto-correct "com.kylinolap" before Class.forName()
2. Rename KYLIN_CONF_HOME to KYLIN_CONF
Project: http://git-wip-us.apache.org/repos/asf/incubator-kylin/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-kylin/commit/b928cc26
Tree: http://git-wip-us.apache.org/repos/asf/incubator-kylin/tree/b928cc26
Diff: http://git-wip-us.apache.org/repos/asf/incubator-kylin/diff/b928cc26
Branch: refs/heads/inverted-index
Commit: b928cc268e3474747baabd2fd37c170520abb144
Parents: a7d0ea3
Author: Li, Yang <ya...@ebay.com>
Authored: Fri Feb 27 13:22:22 2015 +0800
Committer: Li, Yang <ya...@ebay.com>
Committed: Fri Feb 27 13:22:22 2015 +0800
----------------------------------------------------------------------
.../org/apache/kylin/common/KylinConfig.java | 10 ++--
.../org/apache/kylin/common/util/ClassUtil.java | 53 ++++++++++++++++++++
.../apache/kylin/common/util/ClasspathUtil.java | 45 -----------------
.../common/persistence/ResourceToolTest.java | 4 +-
.../common/util/AbstractKylinTestCase.java | 6 +--
.../kylin/common/util/BasicHadoopTest.java | 2 +-
.../common/util/HBaseMetadataTestCase.java | 2 +-
.../common/util/LocalFileMetadataTestCase.java | 4 +-
.../kylin/dict/DictionaryInfoSerializer.java | 3 +-
.../org/apache/kylin/dict/TrieDictionary.java | 3 +-
.../main/java/org/apache/kylin/dict/Util.java | 44 ----------------
.../apache/kylin/job/CubeMetadataUpgrade.java | 2 +-
.../kylin/job/common/HadoopShellExecutable.java | 5 +-
.../kylin/job/common/MapReduceExecutable.java | 35 +++++++------
.../kylin/job/engine/JobEngineConfig.java | 2 +-
.../kylin/job/hadoop/AbstractHadoopJob.java | 2 +-
.../kylin/job/manager/ExecutableManager.java | 28 ++++++-----
.../kylin/job/BuildCubeWithEngineTest.java | 6 +--
.../apache/kylin/job/BuildIIWithEngineTest.java | 4 +-
.../org/apache/kylin/job/ExportHBaseData.java | 2 +-
.../org/apache/kylin/job/ImportHBaseData.java | 2 +-
.../apache/kylin/job/SampleCubeSetupTest.java | 4 +-
.../kylin/job/tools/CubeMigrationTests.java | 4 +-
.../java/org/apache/kylin/rest/DebugTomcat.java | 2 +-
24 files changed, 125 insertions(+), 149 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/b928cc26/common/src/main/java/org/apache/kylin/common/KylinConfig.java
----------------------------------------------------------------------
diff --git a/common/src/main/java/org/apache/kylin/common/KylinConfig.java b/common/src/main/java/org/apache/kylin/common/KylinConfig.java
index 5656fd3..113afd4 100644
--- a/common/src/main/java/org/apache/kylin/common/KylinConfig.java
+++ b/common/src/main/java/org/apache/kylin/common/KylinConfig.java
@@ -127,7 +127,7 @@ public class KylinConfig {
public static final String MAIL_SENDER = "mail.sender";
public static final String KYLIN_HOME = "KYLIN_HOME";
- public static final String KYLIN_CONF_HOME = "KYLIN_CONF_HOME";
+ public static final String KYLIN_CONF = "KYLIN_CONF";
private static final Logger logger = LoggerFactory.getLogger(KylinConfig.class);
@@ -532,17 +532,17 @@ public class KylinConfig {
}
private static File getKylinProperties() {
- String kylinConfHome = System.getProperty(KYLIN_CONF_HOME);
+ String kylinConfHome = System.getProperty(KYLIN_CONF);
if (!StringUtils.isEmpty(kylinConfHome)) {
- logger.info("Use KYLIN_CONF_HOME=" + kylinConfHome);
+ logger.info("Use KYLIN_CONF=" + kylinConfHome);
return getKylinPropertiesFile(kylinConfHome);
}
- logger.warn("KYLIN_CONF_HOME property was not set, will seek KYLIN_HOME env variable");
+ logger.warn("KYLIN_CONF property was not set, will seek KYLIN_HOME env variable");
String kylinHome = getKylinHome();
if (StringUtils.isEmpty(kylinHome))
- throw new RuntimeException("Didn't find KYLIN_CONF_HOME or KYLIN_HOME, please set one of them");
+ throw new RuntimeException("Didn't find KYLIN_CONF or KYLIN_HOME, please set one of them");
String path = kylinHome + File.separator + "conf";
return getKylinPropertiesFile(path);
http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/b928cc26/common/src/main/java/org/apache/kylin/common/util/ClassUtil.java
----------------------------------------------------------------------
diff --git a/common/src/main/java/org/apache/kylin/common/util/ClassUtil.java b/common/src/main/java/org/apache/kylin/common/util/ClassUtil.java
new file mode 100644
index 0000000..b474c58
--- /dev/null
+++ b/common/src/main/java/org/apache/kylin/common/util/ClassUtil.java
@@ -0,0 +1,53 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+*/
+
+package org.apache.kylin.common.util;
+
+import java.io.File;
+import java.lang.reflect.Method;
+import java.net.URL;
+import java.net.URLClassLoader;
+
+/**
+ * @author xduo
+ *
+ */
+public class ClassUtil {
+
+ public static void addClasspath(String path) throws Exception {
+ System.out.println("Adding path " + path + " to class path");
+ File file = new File(path);
+
+ if (file.exists()) {
+ URLClassLoader urlClassLoader = (URLClassLoader) ClassLoader.getSystemClassLoader();
+ Class<URLClassLoader> urlClass = URLClassLoader.class;
+ Method method = urlClass.getDeclaredMethod("addURL", new Class[] { URL.class });
+ method.setAccessible(true);
+ method.invoke(urlClassLoader, new Object[] { file.toURI().toURL() });
+ }
+ }
+
+ @SuppressWarnings("unchecked")
+ public static <T> Class<? extends T> forName(String name, Class<T> clz) throws ClassNotFoundException {
+ if (name.startsWith("com.kylinolap")) {
+ name = "org.apache.kylin" + name.substring("com.kylinolap".length());
+ }
+ return (Class<? extends T>) Class.forName(name);
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/b928cc26/common/src/main/java/org/apache/kylin/common/util/ClasspathUtil.java
----------------------------------------------------------------------
diff --git a/common/src/main/java/org/apache/kylin/common/util/ClasspathUtil.java b/common/src/main/java/org/apache/kylin/common/util/ClasspathUtil.java
deleted file mode 100644
index fc982f1..0000000
--- a/common/src/main/java/org/apache/kylin/common/util/ClasspathUtil.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
-*/
-
-package org.apache.kylin.common.util;
-
-import java.io.File;
-import java.lang.reflect.Method;
-import java.net.URL;
-import java.net.URLClassLoader;
-
-/**
- * @author xduo
- *
- */
-public class ClasspathUtil {
-
- public static void addClasspath(String path) throws Exception {
- System.out.println("Adding path " + path + " to class path");
- File file = new File(path);
-
- if (file.exists()) {
- URLClassLoader urlClassLoader = (URLClassLoader) ClassLoader.getSystemClassLoader();
- Class<URLClassLoader> urlClass = URLClassLoader.class;
- Method method = urlClass.getDeclaredMethod("addURL", new Class[] { URL.class });
- method.setAccessible(true);
- method.invoke(urlClassLoader, new Object[] { file.toURI().toURL() });
- }
- }
-
-}
http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/b928cc26/common/src/test/java/org/apache/kylin/common/persistence/ResourceToolTest.java
----------------------------------------------------------------------
diff --git a/common/src/test/java/org/apache/kylin/common/persistence/ResourceToolTest.java b/common/src/test/java/org/apache/kylin/common/persistence/ResourceToolTest.java
index bac8e00..8a72cdf 100644
--- a/common/src/test/java/org/apache/kylin/common/persistence/ResourceToolTest.java
+++ b/common/src/test/java/org/apache/kylin/common/persistence/ResourceToolTest.java
@@ -26,7 +26,7 @@ import org.junit.Before;
import org.junit.Ignore;
import org.junit.Test;
-import org.apache.kylin.common.util.ClasspathUtil;
+import org.apache.kylin.common.util.ClassUtil;
/**
* Created by honma on 9/18/14.
@@ -35,7 +35,7 @@ import org.apache.kylin.common.util.ClasspathUtil;
public class ResourceToolTest {
@Before
public void setup() throws Exception {
- ClasspathUtil.addClasspath(new File("../examples/test_case_data/hadoop-site").getAbsolutePath());
+ ClassUtil.addClasspath(new File("../examples/test_case_data/hadoop-site").getAbsolutePath());
}
@Test
http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/b928cc26/common/src/test/java/org/apache/kylin/common/util/AbstractKylinTestCase.java
----------------------------------------------------------------------
diff --git a/common/src/test/java/org/apache/kylin/common/util/AbstractKylinTestCase.java b/common/src/test/java/org/apache/kylin/common/util/AbstractKylinTestCase.java
index 7734e48..36a9287 100644
--- a/common/src/test/java/org/apache/kylin/common/util/AbstractKylinTestCase.java
+++ b/common/src/test/java/org/apache/kylin/common/util/AbstractKylinTestCase.java
@@ -50,14 +50,14 @@ public abstract class AbstractKylinTestCase {
KylinConfig.destoryInstance();
- if (System.getProperty(KylinConfig.KYLIN_CONF_HOME) == null && System.getenv(KylinConfig.KYLIN_CONF_HOME) == null)
- System.setProperty(KylinConfig.KYLIN_CONF_HOME, kylinConfigFolder);
+ if (System.getProperty(KylinConfig.KYLIN_CONF) == null && System.getenv(KylinConfig.KYLIN_CONF) == null)
+ System.setProperty(KylinConfig.KYLIN_CONF, kylinConfigFolder);
}
public static void staticCleanupTestMetadata() {
cleanupCache();
- System.clearProperty(KylinConfig.KYLIN_CONF_HOME);
+ System.clearProperty(KylinConfig.KYLIN_CONF);
KylinConfig.destoryInstance();
}
http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/b928cc26/common/src/test/java/org/apache/kylin/common/util/BasicHadoopTest.java
----------------------------------------------------------------------
diff --git a/common/src/test/java/org/apache/kylin/common/util/BasicHadoopTest.java b/common/src/test/java/org/apache/kylin/common/util/BasicHadoopTest.java
index 7d5f6f4..8278939 100644
--- a/common/src/test/java/org/apache/kylin/common/util/BasicHadoopTest.java
+++ b/common/src/test/java/org/apache/kylin/common/util/BasicHadoopTest.java
@@ -41,7 +41,7 @@ public class BasicHadoopTest {
@BeforeClass
public static void setup() throws Exception {
- ClasspathUtil.addClasspath(new File("../examples/test_case_data/hadoop-site").getAbsolutePath());
+ ClassUtil.addClasspath(new File("../examples/test_case_data/hadoop-site").getAbsolutePath());
}
@Test
http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/b928cc26/common/src/test/java/org/apache/kylin/common/util/HBaseMetadataTestCase.java
----------------------------------------------------------------------
diff --git a/common/src/test/java/org/apache/kylin/common/util/HBaseMetadataTestCase.java b/common/src/test/java/org/apache/kylin/common/util/HBaseMetadataTestCase.java
index 17f660d..90970e5 100644
--- a/common/src/test/java/org/apache/kylin/common/util/HBaseMetadataTestCase.java
+++ b/common/src/test/java/org/apache/kylin/common/util/HBaseMetadataTestCase.java
@@ -28,7 +28,7 @@ public class HBaseMetadataTestCase extends AbstractKylinTestCase {
static {
if (useSandbox()) {
try {
- ClasspathUtil.addClasspath(new File("../examples/test_case_data/sandbox/").getAbsolutePath());
+ ClassUtil.addClasspath(new File("../examples/test_case_data/sandbox/").getAbsolutePath());
} catch (Exception e) {
e.printStackTrace();
}
http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/b928cc26/common/src/test/java/org/apache/kylin/common/util/LocalFileMetadataTestCase.java
----------------------------------------------------------------------
diff --git a/common/src/test/java/org/apache/kylin/common/util/LocalFileMetadataTestCase.java b/common/src/test/java/org/apache/kylin/common/util/LocalFileMetadataTestCase.java
index 56afe51..60db6eb 100644
--- a/common/src/test/java/org/apache/kylin/common/util/LocalFileMetadataTestCase.java
+++ b/common/src/test/java/org/apache/kylin/common/util/LocalFileMetadataTestCase.java
@@ -47,8 +47,8 @@ public class LocalFileMetadataTestCase extends AbstractKylinTestCase {
e.printStackTrace();
}
- if (System.getProperty(KylinConfig.KYLIN_CONF_HOME) == null && System.getenv(KylinConfig.KYLIN_CONF_HOME) == null)
- System.setProperty(KylinConfig.KYLIN_CONF_HOME, tempTestMetadataUrl);
+ if (System.getProperty(KylinConfig.KYLIN_CONF) == null && System.getenv(KylinConfig.KYLIN_CONF) == null)
+ System.setProperty(KylinConfig.KYLIN_CONF, tempTestMetadataUrl);
KylinConfig.getInstanceFromEnv().setMetadataUrl(tempTestMetadataUrl);
}
http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/b928cc26/dictionary/src/main/java/org/apache/kylin/dict/DictionaryInfoSerializer.java
----------------------------------------------------------------------
diff --git a/dictionary/src/main/java/org/apache/kylin/dict/DictionaryInfoSerializer.java b/dictionary/src/main/java/org/apache/kylin/dict/DictionaryInfoSerializer.java
index 14cb845..5b7a318 100644
--- a/dictionary/src/main/java/org/apache/kylin/dict/DictionaryInfoSerializer.java
+++ b/dictionary/src/main/java/org/apache/kylin/dict/DictionaryInfoSerializer.java
@@ -23,6 +23,7 @@ import java.io.DataOutputStream;
import java.io.IOException;
import org.apache.kylin.common.persistence.Serializer;
+import org.apache.kylin.common.util.ClassUtil;
import org.apache.kylin.common.util.JsonUtil;
/**
@@ -61,7 +62,7 @@ public class DictionaryInfoSerializer implements Serializer<DictionaryInfo> {
if (infoOnly == false) {
Dictionary<?> dict;
try {
- dict = (Dictionary<?>) Util.classForName(obj.getDictionaryClass()).newInstance();
+ dict = (Dictionary<?>) ClassUtil.forName(obj.getDictionaryClass(), Dictionary.class).newInstance();
} catch (InstantiationException e) {
throw new RuntimeException(e);
} catch (IllegalAccessException e) {
http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/b928cc26/dictionary/src/main/java/org/apache/kylin/dict/TrieDictionary.java
----------------------------------------------------------------------
diff --git a/dictionary/src/main/java/org/apache/kylin/dict/TrieDictionary.java b/dictionary/src/main/java/org/apache/kylin/dict/TrieDictionary.java
index aafbcc4..ef845ce 100644
--- a/dictionary/src/main/java/org/apache/kylin/dict/TrieDictionary.java
+++ b/dictionary/src/main/java/org/apache/kylin/dict/TrieDictionary.java
@@ -29,6 +29,7 @@ import java.util.Arrays;
import java.util.HashMap;
import org.apache.kylin.common.util.BytesUtil;
+import org.apache.kylin.common.util.ClassUtil;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -101,7 +102,7 @@ public class TrieDictionary<T> extends Dictionary<T> {
String converterName = headIn.readUTF();
if (converterName.isEmpty() == false)
- this.bytesConvert = (BytesConverter<T>) Util.classForName(converterName).newInstance();
+ this.bytesConvert = (BytesConverter<T>) ClassUtil.forName(converterName, BytesConverter.class).newInstance();
this.nValues = BytesUtil.readUnsigned(trieBytes, headSize + sizeChildOffset, sizeNoValuesBeneath);
this.sizeOfId = BytesUtil.sizeForValue(baseId + nValues + 1); // note baseId could raise 1 byte in ID space, +1 to reserve all 0xFF for NULL case
http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/b928cc26/dictionary/src/main/java/org/apache/kylin/dict/Util.java
----------------------------------------------------------------------
diff --git a/dictionary/src/main/java/org/apache/kylin/dict/Util.java b/dictionary/src/main/java/org/apache/kylin/dict/Util.java
deleted file mode 100644
index f10041f..0000000
--- a/dictionary/src/main/java/org/apache/kylin/dict/Util.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
-*/
-
-package org.apache.kylin.dict;
-
-class Util {
-
- /*
- * There are class names serialized into dict files. After apache package renaming, the old class names
- * requires adjustment in order to find the right class under new package.
- */
- static Class<?> classForName(String className) throws ClassNotFoundException {
- try {
- return Class.forName(className);
- } catch (ClassNotFoundException e) {
-
- // if package names were changed?
- int cut = className.lastIndexOf('.');
- String pkg = className.substring(0, cut);
- String newPkg = Util.class.getPackage().getName();
- if (pkg.equals(newPkg))
- throw e;
-
- // find again under new package
- String newClassName = newPkg + className.substring(cut);
- return Class.forName(newClassName);
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/b928cc26/job/src/main/java/org/apache/kylin/job/CubeMetadataUpgrade.java
----------------------------------------------------------------------
diff --git a/job/src/main/java/org/apache/kylin/job/CubeMetadataUpgrade.java b/job/src/main/java/org/apache/kylin/job/CubeMetadataUpgrade.java
index fadaa8c..ae03e26 100644
--- a/job/src/main/java/org/apache/kylin/job/CubeMetadataUpgrade.java
+++ b/job/src/main/java/org/apache/kylin/job/CubeMetadataUpgrade.java
@@ -89,7 +89,7 @@ public class CubeMetadataUpgrade {
public CubeMetadataUpgrade(String newMetadataUrl) {
KylinConfig.destoryInstance();
- System.setProperty(KylinConfig.KYLIN_CONF_HOME, newMetadataUrl);
+ System.setProperty(KylinConfig.KYLIN_CONF, newMetadataUrl);
KylinConfig.getInstanceFromEnv().setMetadataUrl(newMetadataUrl);
http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/b928cc26/job/src/main/java/org/apache/kylin/job/common/HadoopShellExecutable.java
----------------------------------------------------------------------
diff --git a/job/src/main/java/org/apache/kylin/job/common/HadoopShellExecutable.java b/job/src/main/java/org/apache/kylin/job/common/HadoopShellExecutable.java
index bc1c419..371e078 100644
--- a/job/src/main/java/org/apache/kylin/job/common/HadoopShellExecutable.java
+++ b/job/src/main/java/org/apache/kylin/job/common/HadoopShellExecutable.java
@@ -25,6 +25,8 @@ import java.lang.reflect.Constructor;
import org.apache.hadoop.util.ToolRunner;
import com.google.common.base.Preconditions;
+
+import org.apache.kylin.common.util.ClassUtil;
import org.apache.kylin.job.exception.ExecuteException;
import org.apache.kylin.job.execution.ExecutableContext;
import org.apache.kylin.job.execution.ExecuteResult;
@@ -43,7 +45,6 @@ public class HadoopShellExecutable extends AbstractExecutable {
super();
}
- @SuppressWarnings("unchecked")
@Override
protected ExecuteResult doWork(ExecutableContext context) throws ExecuteException {
final String mapReduceJobClass = getJobClass();
@@ -51,7 +52,7 @@ public class HadoopShellExecutable extends AbstractExecutable {
Preconditions.checkNotNull(mapReduceJobClass);
Preconditions.checkNotNull(params);
try {
- final Constructor<? extends AbstractHadoopJob> constructor = (Constructor<? extends AbstractHadoopJob>) Class.forName(mapReduceJobClass).getConstructor();
+ final Constructor<? extends AbstractHadoopJob> constructor = ClassUtil.forName(mapReduceJobClass, AbstractHadoopJob.class).getConstructor();
final AbstractHadoopJob job = constructor.newInstance();
String[] args = params.trim().split("\\s+");
logger.info("parameters of the HadoopShellExecutable:");
http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/b928cc26/job/src/main/java/org/apache/kylin/job/common/MapReduceExecutable.java
----------------------------------------------------------------------
diff --git a/job/src/main/java/org/apache/kylin/job/common/MapReduceExecutable.java b/job/src/main/java/org/apache/kylin/job/common/MapReduceExecutable.java
index 1ea1620..0b8d5b6 100644
--- a/job/src/main/java/org/apache/kylin/job/common/MapReduceExecutable.java
+++ b/job/src/main/java/org/apache/kylin/job/common/MapReduceExecutable.java
@@ -18,27 +18,33 @@
package org.apache.kylin.job.common;
-import com.google.common.base.Preconditions;
+import java.io.IOException;
+import java.io.PrintWriter;
+import java.io.StringWriter;
+import java.lang.reflect.Constructor;
+import java.util.Map;
+
import org.apache.commons.lang.StringUtils;
-import org.apache.kylin.common.KylinConfig;
-import org.apache.kylin.job.constant.ExecutableConstants;
-import org.apache.kylin.job.constant.JobStepStatusEnum;
-import org.apache.kylin.job.exception.ExecuteException;
-import org.apache.kylin.job.execution.*;
-import org.apache.kylin.job.hadoop.AbstractHadoopJob;
-import org.apache.kylin.job.tools.HadoopStatusChecker;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.mapreduce.Cluster;
import org.apache.hadoop.mapreduce.Job;
import org.apache.hadoop.mapreduce.JobID;
import org.apache.hadoop.mapreduce.JobStatus;
import org.apache.hadoop.util.ToolRunner;
+import org.apache.kylin.common.KylinConfig;
+import org.apache.kylin.common.util.ClassUtil;
+import org.apache.kylin.job.constant.ExecutableConstants;
+import org.apache.kylin.job.constant.JobStepStatusEnum;
+import org.apache.kylin.job.exception.ExecuteException;
+import org.apache.kylin.job.execution.AbstractExecutable;
+import org.apache.kylin.job.execution.ExecutableContext;
+import org.apache.kylin.job.execution.ExecutableState;
+import org.apache.kylin.job.execution.ExecuteResult;
+import org.apache.kylin.job.execution.Output;
+import org.apache.kylin.job.hadoop.AbstractHadoopJob;
+import org.apache.kylin.job.tools.HadoopStatusChecker;
-import java.io.IOException;
-import java.io.PrintWriter;
-import java.io.StringWriter;
-import java.lang.reflect.Constructor;
-import java.util.Map;
+import com.google.common.base.Preconditions;
/**
* Created by qianzhou on 12/25/14.
@@ -82,7 +88,6 @@ public class MapReduceExecutable extends AbstractExecutable {
}
}
- @SuppressWarnings("unchecked")
@Override
protected ExecuteResult doWork(ExecutableContext context) throws ExecuteException {
final String mapReduceJobClass = getMapReduceJobClass();
@@ -96,7 +101,7 @@ public class MapReduceExecutable extends AbstractExecutable {
job = new Cluster(new Configuration()).getJob(JobID.forName(extra.get(ExecutableConstants.MR_JOB_ID)));
logger.info("mr_job_id:" + extra.get(ExecutableConstants.MR_JOB_ID + " resumed"));
} else {
- final Constructor<? extends AbstractHadoopJob> constructor = (Constructor<? extends AbstractHadoopJob>) Class.forName(mapReduceJobClass).getConstructor();
+ final Constructor<? extends AbstractHadoopJob> constructor = ClassUtil.forName(mapReduceJobClass, AbstractHadoopJob.class).getConstructor();
final AbstractHadoopJob hadoopJob = constructor.newInstance();
hadoopJob.setAsync(true); // so the ToolRunner.run() returns right away
logger.info("parameters of the MapReduceExecutable:");
http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/b928cc26/job/src/main/java/org/apache/kylin/job/engine/JobEngineConfig.java
----------------------------------------------------------------------
diff --git a/job/src/main/java/org/apache/kylin/job/engine/JobEngineConfig.java b/job/src/main/java/org/apache/kylin/job/engine/JobEngineConfig.java
index 08a5a2e..8cc44bf 100644
--- a/job/src/main/java/org/apache/kylin/job/engine/JobEngineConfig.java
+++ b/job/src/main/java/org/apache/kylin/job/engine/JobEngineConfig.java
@@ -35,7 +35,7 @@ public class JobEngineConfig {
public static String HADOOP_JOB_CONF_FILENAME = "kylin_job_conf";
private static File getJobConfig(String fileName) {
- String path = System.getProperty(KylinConfig.KYLIN_CONF_HOME);
+ String path = System.getProperty(KylinConfig.KYLIN_CONF);
if (StringUtils.isNotEmpty(path)) {
return new File(path, fileName);
}
http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/b928cc26/job/src/main/java/org/apache/kylin/job/hadoop/AbstractHadoopJob.java
----------------------------------------------------------------------
diff --git a/job/src/main/java/org/apache/kylin/job/hadoop/AbstractHadoopJob.java b/job/src/main/java/org/apache/kylin/job/hadoop/AbstractHadoopJob.java
index 1997327..a8dc687 100644
--- a/job/src/main/java/org/apache/kylin/job/hadoop/AbstractHadoopJob.java
+++ b/job/src/main/java/org/apache/kylin/job/hadoop/AbstractHadoopJob.java
@@ -303,7 +303,7 @@ public abstract class AbstractHadoopJob extends Configured implements Tool {
public static KylinConfig loadKylinPropsAndMetadata(Configuration conf) throws IOException {
File metaDir = new File("meta");
- System.setProperty(KylinConfig.KYLIN_CONF_HOME, metaDir.getAbsolutePath());
+ System.setProperty(KylinConfig.KYLIN_CONF, metaDir.getAbsolutePath());
logger.info("The absolute path for meta dir is " + metaDir.getAbsolutePath());
KylinConfig kylinConfig = KylinConfig.getInstanceFromEnv();
kylinConfig.setMetadataUrl(metaDir.getCanonicalPath());
http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/b928cc26/job/src/main/java/org/apache/kylin/job/manager/ExecutableManager.java
----------------------------------------------------------------------
diff --git a/job/src/main/java/org/apache/kylin/job/manager/ExecutableManager.java b/job/src/main/java/org/apache/kylin/job/manager/ExecutableManager.java
index 46c145f..f51ff69 100644
--- a/job/src/main/java/org/apache/kylin/job/manager/ExecutableManager.java
+++ b/job/src/main/java/org/apache/kylin/job/manager/ExecutableManager.java
@@ -18,29 +18,32 @@
package org.apache.kylin.job.manager;
-import com.google.common.base.Function;
-import com.google.common.base.Preconditions;
-import com.google.common.collect.Lists;
-import com.google.common.collect.Maps;
+import java.lang.reflect.Constructor;
+import java.util.List;
+import java.util.Map;
+import java.util.concurrent.ConcurrentHashMap;
+
+import javax.annotation.Nullable;
+
import org.apache.kylin.common.KylinConfig;
+import org.apache.kylin.common.util.ClassUtil;
import org.apache.kylin.job.dao.ExecutableDao;
import org.apache.kylin.job.dao.ExecutableOutputPO;
import org.apache.kylin.job.dao.ExecutablePO;
import org.apache.kylin.job.exception.IllegalStateTranferException;
import org.apache.kylin.job.exception.PersistentException;
+import org.apache.kylin.job.execution.AbstractExecutable;
+import org.apache.kylin.job.execution.DefaultChainedExecutable;
import org.apache.kylin.job.execution.DefaultOutput;
import org.apache.kylin.job.execution.ExecutableState;
import org.apache.kylin.job.execution.Output;
-import org.apache.kylin.job.execution.AbstractExecutable;
-import org.apache.kylin.job.execution.DefaultChainedExecutable;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import javax.annotation.Nullable;
-import java.lang.reflect.Constructor;
-import java.util.List;
-import java.util.Map;
-import java.util.concurrent.ConcurrentHashMap;
+import com.google.common.base.Function;
+import com.google.common.base.Preconditions;
+import com.google.common.collect.Lists;
+import com.google.common.collect.Maps;
/**
* Created by qianzhou on 12/16/14.
@@ -49,6 +52,7 @@ public class ExecutableManager {
private static final Logger logger = LoggerFactory.getLogger(ExecutableManager.class);
private static final ConcurrentHashMap<KylinConfig, ExecutableManager> CACHE = new ConcurrentHashMap<KylinConfig, ExecutableManager>();
+ @SuppressWarnings("unused")
private final KylinConfig config;
private ExecutableDao executableDao;
@@ -280,7 +284,7 @@ public class ExecutableManager {
}
String type = executablePO.getType();
try {
- Class<? extends AbstractExecutable> clazz = (Class<? extends AbstractExecutable>) Class.forName(type);
+ Class<? extends AbstractExecutable> clazz = ClassUtil.forName(type, AbstractExecutable.class);
Constructor<? extends AbstractExecutable> constructor = clazz.getConstructor();
AbstractExecutable result = constructor.newInstance();
result.setId(executablePO.getUuid());
http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/b928cc26/job/src/test/java/org/apache/kylin/job/BuildCubeWithEngineTest.java
----------------------------------------------------------------------
diff --git a/job/src/test/java/org/apache/kylin/job/BuildCubeWithEngineTest.java b/job/src/test/java/org/apache/kylin/job/BuildCubeWithEngineTest.java
index de15b94..5e5b191 100644
--- a/job/src/test/java/org/apache/kylin/job/BuildCubeWithEngineTest.java
+++ b/job/src/test/java/org/apache/kylin/job/BuildCubeWithEngineTest.java
@@ -23,7 +23,7 @@ import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.kylin.common.KylinConfig;
import org.apache.kylin.common.util.AbstractKylinTestCase;
-import org.apache.kylin.common.util.ClasspathUtil;
+import org.apache.kylin.common.util.ClassUtil;
import org.apache.kylin.common.util.HBaseMetadataTestCase;
import org.apache.kylin.cube.CubeInstance;
import org.apache.kylin.cube.CubeManager;
@@ -79,8 +79,8 @@ public class BuildCubeWithEngineTest {
@BeforeClass
public static void beforeClass() throws Exception {
logger.info("Adding to classpath: " + new File(HBaseMetadataTestCase.SANDBOX_TEST_DATA).getAbsolutePath());
- ClasspathUtil.addClasspath(new File(HBaseMetadataTestCase.SANDBOX_TEST_DATA).getAbsolutePath());
- System.setProperty(KylinConfig.KYLIN_CONF_HOME, "../examples/test_case_data/sandbox");
+ ClassUtil.addClasspath(new File(HBaseMetadataTestCase.SANDBOX_TEST_DATA).getAbsolutePath());
+ System.setProperty(KylinConfig.KYLIN_CONF, "../examples/test_case_data/sandbox");
System.setProperty("hdp.version", "2.2.0.0-2041"); // mapred-site.xml ref this
}
http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/b928cc26/job/src/test/java/org/apache/kylin/job/BuildIIWithEngineTest.java
----------------------------------------------------------------------
diff --git a/job/src/test/java/org/apache/kylin/job/BuildIIWithEngineTest.java b/job/src/test/java/org/apache/kylin/job/BuildIIWithEngineTest.java
index 522f280..01e1d62 100644
--- a/job/src/test/java/org/apache/kylin/job/BuildIIWithEngineTest.java
+++ b/job/src/test/java/org/apache/kylin/job/BuildIIWithEngineTest.java
@@ -45,7 +45,7 @@ import com.google.common.collect.Lists;
import org.apache.kylin.common.KylinConfig;
import org.apache.kylin.common.util.AbstractKylinTestCase;
-import org.apache.kylin.common.util.ClasspathUtil;
+import org.apache.kylin.common.util.ClassUtil;
import org.apache.kylin.common.util.HBaseMetadataTestCase;
import org.apache.kylin.invertedindex.IIInstance;
import org.apache.kylin.invertedindex.IIManager;
@@ -93,7 +93,7 @@ public class BuildIIWithEngineTest {
@BeforeClass
public static void beforeClass() throws Exception {
logger.info("Adding to classpath: " + new File(HBaseMetadataTestCase.SANDBOX_TEST_DATA).getAbsolutePath());
- ClasspathUtil.addClasspath(new File(HBaseMetadataTestCase.SANDBOX_TEST_DATA).getAbsolutePath());
+ ClassUtil.addClasspath(new File(HBaseMetadataTestCase.SANDBOX_TEST_DATA).getAbsolutePath());
System.setProperty("hdp.version", "2.2.0.0-2041"); // mapred-site.xml ref this
}
http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/b928cc26/job/src/test/java/org/apache/kylin/job/ExportHBaseData.java
----------------------------------------------------------------------
diff --git a/job/src/test/java/org/apache/kylin/job/ExportHBaseData.java b/job/src/test/java/org/apache/kylin/job/ExportHBaseData.java
index 802e934..919adeb 100644
--- a/job/src/test/java/org/apache/kylin/job/ExportHBaseData.java
+++ b/job/src/test/java/org/apache/kylin/job/ExportHBaseData.java
@@ -59,7 +59,7 @@ public class ExportHBaseData {
backupArchive = "/tmp/kylin_" + currentTIME + ".tar.gz";
KylinConfig.destoryInstance();
- System.setProperty(KylinConfig.KYLIN_CONF_HOME, AbstractKylinTestCase.SANDBOX_TEST_DATA);
+ System.setProperty(KylinConfig.KYLIN_CONF, AbstractKylinTestCase.SANDBOX_TEST_DATA);
kylinConfig = KylinConfig.getInstanceFromEnv();
cli = kylinConfig.getCliCommandExecutor();
http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/b928cc26/job/src/test/java/org/apache/kylin/job/ImportHBaseData.java
----------------------------------------------------------------------
diff --git a/job/src/test/java/org/apache/kylin/job/ImportHBaseData.java b/job/src/test/java/org/apache/kylin/job/ImportHBaseData.java
index 22ad069..0f77a20 100644
--- a/job/src/test/java/org/apache/kylin/job/ImportHBaseData.java
+++ b/job/src/test/java/org/apache/kylin/job/ImportHBaseData.java
@@ -51,7 +51,7 @@ public class ImportHBaseData {
public void setup() throws IOException {
KylinConfig.destoryInstance();
- System.setProperty(KylinConfig.KYLIN_CONF_HOME, AbstractKylinTestCase.SANDBOX_TEST_DATA);
+ System.setProperty(KylinConfig.KYLIN_CONF, AbstractKylinTestCase.SANDBOX_TEST_DATA);
kylinConfig = KylinConfig.getInstanceFromEnv();
cli = kylinConfig.getCliCommandExecutor();
http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/b928cc26/job/src/test/java/org/apache/kylin/job/SampleCubeSetupTest.java
----------------------------------------------------------------------
diff --git a/job/src/test/java/org/apache/kylin/job/SampleCubeSetupTest.java b/job/src/test/java/org/apache/kylin/job/SampleCubeSetupTest.java
index dabeef0..c643863 100644
--- a/job/src/test/java/org/apache/kylin/job/SampleCubeSetupTest.java
+++ b/job/src/test/java/org/apache/kylin/job/SampleCubeSetupTest.java
@@ -27,7 +27,7 @@ import org.junit.Before;
import org.junit.Test;
import org.apache.kylin.common.KylinConfig;
-import org.apache.kylin.common.util.ClasspathUtil;
+import org.apache.kylin.common.util.ClassUtil;
import org.apache.kylin.common.util.HBaseMetadataTestCase;
import org.apache.kylin.cube.CubeInstance;
import org.apache.kylin.cube.CubeManager;
@@ -50,7 +50,7 @@ public class SampleCubeSetupTest extends HBaseMetadataTestCase {
for (String path : paths) {
if (!StringUtils.isEmpty(path)) {
try {
- ClasspathUtil.addClasspath(new File(path).getAbsolutePath());
+ ClassUtil.addClasspath(new File(path).getAbsolutePath());
} catch (Exception e) {
System.out.println(e.getLocalizedMessage());
System.out.println(e.getStackTrace());
http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/b928cc26/job/src/test/java/org/apache/kylin/job/tools/CubeMigrationTests.java
----------------------------------------------------------------------
diff --git a/job/src/test/java/org/apache/kylin/job/tools/CubeMigrationTests.java b/job/src/test/java/org/apache/kylin/job/tools/CubeMigrationTests.java
index f02cdf8..0f204e6 100644
--- a/job/src/test/java/org/apache/kylin/job/tools/CubeMigrationTests.java
+++ b/job/src/test/java/org/apache/kylin/job/tools/CubeMigrationTests.java
@@ -28,7 +28,7 @@ import org.junit.Ignore;
import org.junit.Test;
import org.apache.kylin.common.util.AbstractKylinTestCase;
-import org.apache.kylin.common.util.ClasspathUtil;
+import org.apache.kylin.common.util.ClassUtil;
import org.apache.kylin.common.util.LocalFileMetadataTestCase;
/**
@@ -39,7 +39,7 @@ public class CubeMigrationTests extends LocalFileMetadataTestCase {
@Before
public void setup() throws Exception {
super.createTestMetadata();
- ClasspathUtil.addClasspath(new File(AbstractKylinTestCase.SANDBOX_TEST_DATA).getAbsolutePath());
+ ClassUtil.addClasspath(new File(AbstractKylinTestCase.SANDBOX_TEST_DATA).getAbsolutePath());
}
@After
http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/b928cc26/server/src/main/java/org/apache/kylin/rest/DebugTomcat.java
----------------------------------------------------------------------
diff --git a/server/src/main/java/org/apache/kylin/rest/DebugTomcat.java b/server/src/main/java/org/apache/kylin/rest/DebugTomcat.java
index 8588831..e3d0b09 100644
--- a/server/src/main/java/org/apache/kylin/rest/DebugTomcat.java
+++ b/server/src/main/java/org/apache/kylin/rest/DebugTomcat.java
@@ -42,7 +42,7 @@ public class DebugTomcat {
// test_case_data/sandbox/ contains HDP 2.2 site xmls which is dev sandbox
ClasspathUtil.addClasspath(new File("../examples/test_case_data/sandbox").getAbsolutePath());
- System.setProperty(KylinConfig.KYLIN_CONF_HOME, "../examples/test_case_data/sandbox");
+ System.setProperty(KylinConfig.KYLIN_CONF, "../examples/test_case_data/sandbox");
System.setProperty("hdp.version", "2.2.0.0-2041"); // mapred-site.xml ref this
// workaround for job submission from win to linux -- https://issues.apache.org/jira/browse/MAPREDUCE-4052