Repository: kylin Updated Branches: refs/heads/v1.6.0-rc1 [created] f708274db
KYLIN-2078 Can't see generated SQL at Web UI Project: http://git-wip-us.apache.org/repos/asf/kylin/repo Commit: http://git-wip-us.apache.org/repos/asf/kylin/commit/9acc20e4 Tree: http://git-wip-us.apache.org/repos/asf/kylin/tree/9acc20e4 Diff: http://git-wip-us.apache.org/repos/asf/kylin/diff/9acc20e4 Branch: refs/heads/v1.6.0-rc1 Commit: 9acc20e46c9cf83e65edc21d0d8cdf037894209d Parents: eb39437 Author: shaofengshi <shaofeng...@apache.org> Authored: Tue Oct 25 12:57:46 2016 +0800 Committer: shaofengshi <shaofeng...@apache.org> Committed: Tue Oct 25 12:57:46 2016 +0800 ---------------------------------------------------------------------- .../org/apache/kylin/job/JoinedFlatTable.java | 18 ++++++++++-------- .../kylin/rest/controller/CubeController.java | 16 ++++++++++------ 2 files changed, 20 insertions(+), 14 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/kylin/blob/9acc20e4/core-job/src/main/java/org/apache/kylin/job/JoinedFlatTable.java ---------------------------------------------------------------------- diff --git a/core-job/src/main/java/org/apache/kylin/job/JoinedFlatTable.java b/core-job/src/main/java/org/apache/kylin/job/JoinedFlatTable.java index 3cc27ba..79cf924 100644 --- a/core-job/src/main/java/org/apache/kylin/job/JoinedFlatTable.java +++ b/core-job/src/main/java/org/apache/kylin/job/JoinedFlatTable.java @@ -128,15 +128,17 @@ public class JoinedFlatTable { sql.append(tableAlias + "." + col.getName() + "\n"); } appendJoinStatement(flatDesc, sql, tableAliasMap); - appendWhereStatement(flatDesc, sql, tableAliasMap); - if (redistribute == true) { - String redistributeCol = null; - TblColRef distDcol = flatDesc.getDistributedBy(); - if (distDcol != null) { - String tblAlias = tableAliasMap.get(distDcol.getTable()); - redistributeCol = tblAlias + "." + distDcol.getName(); + if (flatDesc.getSegment() != null) { + appendWhereStatement(flatDesc, sql, tableAliasMap); + if (redistribute == true) { + String redistributeCol = null; + TblColRef distDcol = flatDesc.getDistributedBy(); + if (distDcol != null) { + String tblAlias = tableAliasMap.get(distDcol.getTable()); + redistributeCol = tblAlias + "." + distDcol.getName(); + } + appendDistributeStatement(sql, redistributeCol); } - appendDistributeStatement(sql, redistributeCol); } return sql.toString(); } http://git-wip-us.apache.org/repos/asf/kylin/blob/9acc20e4/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 c70b506..f78f439 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 @@ -27,7 +27,6 @@ import java.util.Map; import java.util.Set; import java.util.UUID; -import com.google.common.collect.Lists; import org.apache.commons.lang.StringUtils; import org.apache.kylin.common.util.JsonUtil; import org.apache.kylin.cube.CubeInstance; @@ -35,13 +34,13 @@ import org.apache.kylin.cube.CubeManager; import org.apache.kylin.cube.CubeSegment; import org.apache.kylin.cube.model.CubeBuildTypeEnum; import org.apache.kylin.cube.model.CubeDesc; +import org.apache.kylin.cube.model.CubeJoinedFlatTableDesc; import org.apache.kylin.dimension.DimensionEncodingFactory; import org.apache.kylin.engine.EngineFactory; import org.apache.kylin.job.JobInstance; import org.apache.kylin.job.JoinedFlatTable; import org.apache.kylin.metadata.model.IJoinedFlatTableDesc; import org.apache.kylin.metadata.model.ISourceAware; -import org.apache.kylin.metadata.model.SegmentStatusEnum; import org.apache.kylin.metadata.project.ProjectInstance; import org.apache.kylin.metadata.realization.RealizationStatusEnum; import org.apache.kylin.rest.exception.BadRequestException; @@ -74,6 +73,7 @@ import com.fasterxml.jackson.core.JsonParseException; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.JsonMappingException; import com.google.common.base.Joiner; +import com.google.common.collect.Lists; import com.google.common.collect.Sets; /** @@ -144,10 +144,15 @@ public class CubeController extends BasicController { @ResponseBody public GeneralResponse getSql(@PathVariable String cubeName, @PathVariable String segmentName) { CubeInstance cube = cubeService.getCubeManager().getCube(cubeName); - CubeSegment cubeSegment = cube.getSegment(segmentName, SegmentStatusEnum.READY); - IJoinedFlatTableDesc flatTableDesc = EngineFactory.getJoinedFlatTableDesc(cubeSegment); - String sql = JoinedFlatTable.generateSelectDataStatement(flatTableDesc, false); + IJoinedFlatTableDesc flatTableDesc = null; + CubeSegment segment = cube.getSegment(segmentName, null); + if (segment != null) { + flatTableDesc = EngineFactory.getJoinedFlatTableDesc(segment); + } else { + flatTableDesc = new CubeJoinedFlatTableDesc(cube.getDescriptor()); + } + String sql = JoinedFlatTable.generateSelectDataStatement(flatTableDesc, false); GeneralResponse repsonse = new GeneralResponse(); repsonse.setProperty("sql", sql); @@ -611,7 +616,6 @@ public class CubeController extends BasicController { } - /** * Initiate the very beginning of a streaming cube. Will seek the latest offests of each partition from streaming * source (kafka) and record in the cube descriptor; In the first build job, it will use these offests as the start point.