You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kylin.apache.org by bi...@apache.org on 2016/12/13 07:54:48 UTC
[2/9] kylin git commit: KYLIN-2263 display reasonable message when
could not load kafka dependency
KYLIN-2263 display reasonable message when could not load kafka dependency
Project: http://git-wip-us.apache.org/repos/asf/kylin/repo
Commit: http://git-wip-us.apache.org/repos/asf/kylin/commit/25bbb30b
Tree: http://git-wip-us.apache.org/repos/asf/kylin/tree/25bbb30b
Diff: http://git-wip-us.apache.org/repos/asf/kylin/diff/25bbb30b
Branch: refs/heads/yang22-cdh5.7
Commit: 25bbb30b9ec5e52c93c111da3140ad7c302c3a58
Parents: 7a9273a
Author: Billy Liu <bi...@apache.org>
Authored: Fri Dec 9 14:31:52 2016 +0800
Committer: Billy Liu <bi...@apache.org>
Committed: Fri Dec 9 14:32:25 2016 +0800
----------------------------------------------------------------------
.../kylin/rest/controller/CubeController.java | 20 ++++++++++++++++----
1 file changed, 16 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/kylin/blob/25bbb30b/server-base/src/main/java/org/apache/kylin/rest/controller/CubeController.java
----------------------------------------------------------------------
diff --git a/server-base/src/main/java/org/apache/kylin/rest/controller/CubeController.java b/server-base/src/main/java/org/apache/kylin/rest/controller/CubeController.java
index 4c07f7c..d98f78f 100644
--- a/server-base/src/main/java/org/apache/kylin/rest/controller/CubeController.java
+++ b/server-base/src/main/java/org/apache/kylin/rest/controller/CubeController.java
@@ -271,14 +271,26 @@ public class CubeController extends BasicController {
/** Build/Rebuild a cube segment by source offset */
@RequestMapping(value = "/{cubeName}/build2", method = { RequestMethod.PUT })
@ResponseBody
- public JobInstance build(@PathVariable String cubeName, @RequestBody JobBuildRequest2 req) {
- return rebuild(cubeName, req);
+ public JobInstance build2(@PathVariable String cubeName, @RequestBody JobBuildRequest2 req) {
+ boolean existKafkaClient = false;
+ try {
+ Class<?> clazz = Class.forName("org.apache.kafka.clients.consumer.KafkaConsumer");
+ if (clazz != null) {
+ existKafkaClient = true;
+ }
+ } catch (ClassNotFoundException e) {
+ existKafkaClient = false;
+ }
+ if (!existKafkaClient) {
+ throw new InternalErrorException("Could not find Kafka dependency");
+ }
+ return rebuild2(cubeName, req);
}
/** Build/Rebuild a cube segment by source offset */
@RequestMapping(value = "/{cubeName}/rebuild2", method = { RequestMethod.PUT })
@ResponseBody
- public JobInstance rebuild(@PathVariable String cubeName, @RequestBody JobBuildRequest2 req) {
+ public JobInstance rebuild2(@PathVariable String cubeName, @RequestBody JobBuildRequest2 req) {
return buildInternal(cubeName, 0, 0, req.getSourceOffsetStart(), req.getSourceOffsetEnd(), req.getSourcePartitionOffsetStart(), req.getSourcePartitionOffsetEnd(), req.getBuildType(), req.isForce());
}
@@ -587,7 +599,7 @@ public class CubeController extends BasicController {
request.setSourceOffsetEnd(hole.getSourceOffsetEnd());
request.setSourcePartitionOffsetEnd(hole.getSourcePartitionOffsetEnd());
try {
- JobInstance job = build(cubeName, request);
+ JobInstance job = build2(cubeName, request);
jobs.add(job);
} catch (Exception e) {
// it may exceed the max allowed job number