http://git-wip-us.apache.org/repos/asf/kylin/blob/07537a9a/core-dictionary/src/main/java/org/apache/kylin/dict/DictionaryManager.java ---------------------------------------------------------------------- diff --git a/core-dictionary/src/main/java/org/apache/kylin/dict/DictionaryManager.java b/core-dictionary/src/main/java/org/apache/kylin/dict/DictionaryManager.java index 981e19a..2a1304a 100644 --- a/core-dictionary/src/main/java/org/apache/kylin/dict/DictionaryManager.java +++ b/core-dictionary/src/main/java/org/apache/kylin/dict/DictionaryManager.java @@ -223,11 +223,11 @@ public class DictionaryManager { } } - public DictionaryInfo buildDictionary(DataModelDesc model, String dict, TblColRef col, DistinctColumnValuesProvider factTableValueProvider) throws IOException { + public DictionaryInfo buildDictionary(DataModelDesc model, boolean usingDict, TblColRef col, DistinctColumnValuesProvider factTableValueProvider) throws IOException { logger.info("building dictionary for " + col); - TblColRef srcCol = decideSourceData(model, dict, col); + TblColRef srcCol = decideSourceData(model, usingDict, col); String srcTable = srcCol.getTable(); String srcColName = srcCol.getName(); int srcColIdx = srcCol.getColumnDesc().getZeroBasedIndex(); @@ -259,9 +259,9 @@ public class DictionaryManager { /** * Decide a dictionary's source data, leverage PK-FK relationship. */ - public TblColRef decideSourceData(DataModelDesc model, String dict, TblColRef col) throws IOException { + public TblColRef decideSourceData(DataModelDesc model, boolean usingDict, TblColRef col) throws IOException { // Note FK on fact table is supported by scan the related PK on lookup table - if ("true".equals(dict) || "string".equals(dict) || "number".equals(dict) || "any".equals(dict)) { + if (usingDict) { // FK on fact table and join type is inner, use PK from lookup instead if (model.isFactTable(col.getTable())) { TblColRef pkCol = model.findPKByFK(col, "inner"); @@ -270,7 +270,7 @@ public class DictionaryManager { } return col; } else - throw new IllegalArgumentException("Unknown dictionary value: " + dict); + throw new IllegalArgumentException("Not using Dictionary "); } private String checkDupByInfo(DictionaryInfo dictInfo) throws IOException {
http://git-wip-us.apache.org/repos/asf/kylin/blob/07537a9a/core-job/src/main/java/org/apache/kylin/job/manager/ExecutableManager.java ---------------------------------------------------------------------- diff --git a/core-job/src/main/java/org/apache/kylin/job/manager/ExecutableManager.java b/core-job/src/main/java/org/apache/kylin/job/manager/ExecutableManager.java index ff92a50..d73fd26 100644 --- a/core-job/src/main/java/org/apache/kylin/job/manager/ExecutableManager.java +++ b/core-job/src/main/java/org/apache/kylin/job/manager/ExecutableManager.java @@ -299,6 +299,7 @@ public class ExecutableManager { private static AbstractExecutable parseTo(ExecutablePO executablePO) { if (executablePO == null) { + logger.warn("executablePO is null"); return null; } String type = executablePO.getType(); @@ -318,8 +319,7 @@ public class ExecutableManager { } return result; } catch (ReflectiveOperationException e) { - logger.error("cannot parse this job:" + executablePO.getId(), e); - return null; + throw new IllegalStateException("cannot parse this job:" + executablePO.getId(), e); } } http://git-wip-us.apache.org/repos/asf/kylin/blob/07537a9a/core-metadata/src/main/java/org/apache/kylin/metadata/model/MeasureDesc.java ---------------------------------------------------------------------- diff --git a/core-metadata/src/main/java/org/apache/kylin/metadata/model/MeasureDesc.java b/core-metadata/src/main/java/org/apache/kylin/metadata/model/MeasureDesc.java index 618d25a..5d65771 100644 --- a/core-metadata/src/main/java/org/apache/kylin/metadata/model/MeasureDesc.java +++ b/core-metadata/src/main/java/org/apache/kylin/metadata/model/MeasureDesc.java @@ -31,8 +31,7 @@ import com.fasterxml.jackson.annotation.JsonProperty; @JsonAutoDetect(fieldVisibility = Visibility.NONE, getterVisibility = Visibility.NONE, isGetterVisibility = Visibility.NONE, setterVisibility = Visibility.NONE) public class MeasureDesc { - @JsonProperty("id") - private int id; + @JsonProperty("name") private String name; @JsonProperty("function") @@ -49,13 +48,7 @@ public class MeasureDesc { } } - public int getId() { - return id; - } - - public void setId(int id) { - this.id = id; - } + public String getName() { return name; @@ -103,11 +96,6 @@ public class MeasureDesc { } @Override - public int hashCode() { - return id; - } - - @Override public String toString() { return "MeasureDesc [name=" + name + ", function=" + function + "]"; } http://git-wip-us.apache.org/repos/asf/kylin/blob/07537a9a/engine-mr/src/main/java/org/apache/kylin/engine/mr/BatchCubingJobBuilder.java ---------------------------------------------------------------------- diff --git a/engine-mr/src/main/java/org/apache/kylin/engine/mr/BatchCubingJobBuilder.java b/engine-mr/src/main/java/org/apache/kylin/engine/mr/BatchCubingJobBuilder.java index 12cac94..3c10c09 100644 --- a/engine-mr/src/main/java/org/apache/kylin/engine/mr/BatchCubingJobBuilder.java +++ b/engine-mr/src/main/java/org/apache/kylin/engine/mr/BatchCubingJobBuilder.java @@ -63,7 +63,7 @@ public class BatchCubingJobBuilder extends JobBuilderSupport { // Phase 3: Build Cube RowKeyDesc rowKeyDesc = ((CubeSegment) seg).getCubeDesc().getRowkey(); - final int groupRowkeyColumnsCount = rowKeyDesc.getNCuboidBuildLevels(); + final int groupRowkeyColumnsCount = ((CubeSegment) seg).getCubeDesc().getBuildLevel(); final int totalRowkeyColumnsCount = rowKeyDesc.getRowKeyColumns().length; final String[] cuboidOutputTempPath = getCuboidOutputPaths(cuboidRootPath, totalRowkeyColumnsCount, groupRowkeyColumnsCount); // base cuboid step http://git-wip-us.apache.org/repos/asf/kylin/blob/07537a9a/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/FactDistinctColumnsMapperBase.java ---------------------------------------------------------------------- diff --git a/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/FactDistinctColumnsMapperBase.java b/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/FactDistinctColumnsMapperBase.java index 2279b8b..5e83add 100644 --- a/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/FactDistinctColumnsMapperBase.java +++ b/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/FactDistinctColumnsMapperBase.java @@ -61,7 +61,7 @@ public class FactDistinctColumnsMapperBase<KEYIN, VALUEIN> extends KylinMapper<K for (int i = 0; i < dictionaryColumns.size(); i++) { TblColRef col = dictionaryColumns.get(i); - String scanTable = dictMgr.decideSourceData(cubeDesc.getModel(), "true", col).getTable(); + String scanTable = dictMgr.decideSourceData(cubeDesc.getModel(), true, col).getTable(); if (cubeDesc.getModel().isFactTable(scanTable)) { factDictCols.add(i); } http://git-wip-us.apache.org/repos/asf/kylin/blob/07537a9a/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/FactDistinctHiveColumnsMapper.java ---------------------------------------------------------------------- diff --git a/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/FactDistinctHiveColumnsMapper.java b/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/FactDistinctHiveColumnsMapper.java index eb67ad9..a4fd59b 100644 --- a/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/FactDistinctHiveColumnsMapper.java +++ b/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/FactDistinctHiveColumnsMapper.java @@ -91,8 +91,7 @@ public class FactDistinctHiveColumnsMapper<KEYIN> extends FactDistinctColumnsMap private void addCuboidBitSet(long cuboidId, List<Integer[]> allCuboidsBitSet, List<Long> allCuboids) { allCuboids.add(cuboidId); - BitSet bitSet = BitSet.valueOf(new long[] { cuboidId }); - Integer[] indice = new Integer[bitSet.cardinality()]; + Integer[] indice = new Integer[Long.bitCount(cuboidId)]; long mask = Long.highestOneBit(baseCuboidId); int position = 0; http://git-wip-us.apache.org/repos/asf/kylin/blob/07537a9a/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/MapContextGTRecordWriter.java ---------------------------------------------------------------------- diff --git a/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/MapContextGTRecordWriter.java b/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/MapContextGTRecordWriter.java index 6098381..8416d95 100644 --- a/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/MapContextGTRecordWriter.java +++ b/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/MapContextGTRecordWriter.java @@ -88,7 +88,7 @@ public class MapContextGTRecordWriter implements ICuboidWriter { rowKeyEncoder = AbstractRowKeyEncoder.createInstance(cubeSegment, Cuboid.findById(cubeDesc, cuboidId)); keyBuf = rowKeyEncoder.createBuf(); - dimensions = BitSet.valueOf(new long[] { cuboidId }).cardinality(); + dimensions = Long.bitCount(cuboidId); measureColumnsIndex = new int[measureCount]; for (int i = 0; i < measureCount; i++) { measureColumnsIndex[i] = dimensions + i; http://git-wip-us.apache.org/repos/asf/kylin/blob/07537a9a/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/MergeCuboidFromStorageMapper.java ---------------------------------------------------------------------- diff --git a/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/MergeCuboidFromStorageMapper.java b/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/MergeCuboidFromStorageMapper.java index fc616fa..22324ba 100644 --- a/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/MergeCuboidFromStorageMapper.java +++ b/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/MergeCuboidFromStorageMapper.java @@ -209,7 +209,7 @@ public class MergeCuboidFromStorageMapper extends KylinMapper<Object, Object, By else { ret = cubeDesc.getRowkey().isUseDictionary(col); if (ret) { - String dictTable = DictionaryManager.getInstance(config).decideSourceData(cubeDesc.getModel(), cubeDesc.getRowkey().getDictionary(col), col).getTable(); + String dictTable = DictionaryManager.getInstance(config).decideSourceData(cubeDesc.getModel(), cubeDesc.getRowkey().isUseDictionary(col), col).getTable(); ret = cubeDesc.getFactTable().equalsIgnoreCase(dictTable); } dimensionsNeedDict.put(col, ret); http://git-wip-us.apache.org/repos/asf/kylin/blob/07537a9a/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/MergeCuboidMapper.java ---------------------------------------------------------------------- diff --git a/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/MergeCuboidMapper.java b/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/MergeCuboidMapper.java index 6c2679e..b5a63cb 100644 --- a/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/MergeCuboidMapper.java +++ b/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/MergeCuboidMapper.java @@ -233,7 +233,7 @@ public class MergeCuboidMapper extends KylinMapper<Text, Text, Text, Text> { else { ret = cubeDesc.getRowkey().isUseDictionary(col); if (ret) { - String dictTable = DictionaryManager.getInstance(config).decideSourceData(cubeDesc.getModel(), cubeDesc.getRowkey().getDictionary(col), col).getTable(); + String dictTable = DictionaryManager.getInstance(config).decideSourceData(cubeDesc.getModel(), cubeDesc.getRowkey().isUseDictionary(col), col).getTable(); ret = cubeDesc.getFactTable().equalsIgnoreCase(dictTable); } dimensionsNeedDict.put(col, ret); http://git-wip-us.apache.org/repos/asf/kylin/blob/07537a9a/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/MergeDictionaryStep.java ---------------------------------------------------------------------- diff --git a/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/MergeDictionaryStep.java b/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/MergeDictionaryStep.java index b73fda4..8fced61 100644 --- a/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/MergeDictionaryStep.java +++ b/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/MergeDictionaryStep.java @@ -112,7 +112,7 @@ public class MergeDictionaryStep extends AbstractExecutable { CubeDesc cubeDesc = cube.getDescriptor(); for (TblColRef col : cubeDesc.getAllColumnsNeedDictionary()) { - String dictTable = dictMgr.decideSourceData(cubeDesc.getModel(), "true", col).getTable(); + String dictTable = dictMgr.decideSourceData(cubeDesc.getModel(),true, col).getTable(); if (cubeDesc.getFactTable().equalsIgnoreCase(dictTable)) { colsNeedMeringDict.add(col); } else { http://git-wip-us.apache.org/repos/asf/kylin/blob/07537a9a/engine-mr/src/test/java/org/apache/kylin/engine/mr/steps/CubeSamplingTest.java ---------------------------------------------------------------------- diff --git a/engine-mr/src/test/java/org/apache/kylin/engine/mr/steps/CubeSamplingTest.java b/engine-mr/src/test/java/org/apache/kylin/engine/mr/steps/CubeSamplingTest.java index fc016fc..410cec7 100644 --- a/engine-mr/src/test/java/org/apache/kylin/engine/mr/steps/CubeSamplingTest.java +++ b/engine-mr/src/test/java/org/apache/kylin/engine/mr/steps/CubeSamplingTest.java @@ -77,8 +77,7 @@ public class CubeSamplingTest { } private void addCuboidBitSet(long cuboidId, List<Integer[]> allCuboidsBitSet) { - BitSet bitSet = BitSet.valueOf(new long[] { cuboidId }); - Integer[] indice = new Integer[bitSet.cardinality()]; + Integer[] indice = new Integer[Long.bitCount(cuboidId)]; long mask = Long.highestOneBit(baseCuboidId); int position = 0; http://git-wip-us.apache.org/repos/asf/kylin/blob/07537a9a/engine-spark/src/main/java/org/apache/kylin/engine/spark/SparkCubing.java ---------------------------------------------------------------------- diff --git a/engine-spark/src/main/java/org/apache/kylin/engine/spark/SparkCubing.java b/engine-spark/src/main/java/org/apache/kylin/engine/spark/SparkCubing.java index 01d97fd..32d4d2a 100644 --- a/engine-spark/src/main/java/org/apache/kylin/engine/spark/SparkCubing.java +++ b/engine-spark/src/main/java/org/apache/kylin/engine/spark/SparkCubing.java @@ -229,8 +229,7 @@ public class SparkCubing extends AbstractApplication { final ByteArray[] row_hashcodes = new ByteArray[nRowKey]; for (Long cuboidId : allCuboidIds) { - BitSet bitSet = BitSet.valueOf(new long[]{cuboidId}); - Integer[] cuboidBitSet = new Integer[bitSet.cardinality()]; + Integer[] cuboidBitSet = new Integer[Long.bitCount(cuboidId)]; long mask = Long.highestOneBit(baseCuboidId); int position = 0; @@ -480,7 +479,7 @@ public class SparkCubing extends AbstractApplication { final Configuration hbaseConf = HBaseConnection.getCurrentHBaseConfiguration(); FileSystem fs = FileSystem.get(hbaseConf); FsPermission permission = new FsPermission((short) 0777); - for (HBaseColumnFamilyDesc cf : cubeDesc.getHBaseMapping().getColumnFamily()) { + for (HBaseColumnFamilyDesc cf : cubeDesc.getHbaseMapping().getColumnFamily()) { String cfName = cf.getName(); Path columnFamilyPath = new Path(hfileLocation, cfName); http://git-wip-us.apache.org/repos/asf/kylin/blob/07537a9a/engine-spark/src/main/java/org/apache/kylin/engine/spark/cube/DefaultTupleConverter.java ---------------------------------------------------------------------- diff --git a/engine-spark/src/main/java/org/apache/kylin/engine/spark/cube/DefaultTupleConverter.java b/engine-spark/src/main/java/org/apache/kylin/engine/spark/cube/DefaultTupleConverter.java index 6b3a82c..9c1d681 100644 --- a/engine-spark/src/main/java/org/apache/kylin/engine/spark/cube/DefaultTupleConverter.java +++ b/engine-spark/src/main/java/org/apache/kylin/engine/spark/cube/DefaultTupleConverter.java @@ -18,7 +18,6 @@ package org.apache.kylin.engine.spark.cube; import java.nio.ByteBuffer; -import java.util.BitSet; import java.util.Map; import org.apache.kylin.common.util.ByteArray; @@ -70,7 +69,7 @@ public final class DefaultTupleConverter implements TupleConverter { Cuboid cuboid = Cuboid.findById(segment.getCubeDesc(), cuboidId); RowKeyEncoder rowkeyEncoder = rowKeyEncoderProvider.getRowkeyEncoder(cuboid); - final int dimensions = BitSet.valueOf(new long[] { cuboidId }).cardinality(); + final int dimensions = Long.bitCount(cuboidId); int[] measureColumnsIndex = getMeasureColumnsIndex(); for (int i = 0; i < measureCount; i++) { measureColumnsIndex[i] = dimensions + i; http://git-wip-us.apache.org/repos/asf/kylin/blob/07537a9a/server/src/main/java/org/apache/kylin/rest/service/CubeService.java ---------------------------------------------------------------------- diff --git a/server/src/main/java/org/apache/kylin/rest/service/CubeService.java b/server/src/main/java/org/apache/kylin/rest/service/CubeService.java index 5e1a3d9..5767f15 100644 --- a/server/src/main/java/org/apache/kylin/rest/service/CubeService.java +++ b/server/src/main/java/org/apache/kylin/rest/service/CubeService.java @@ -194,7 +194,7 @@ public class CubeService extends BasicService { } try { - int cuboidCount = CuboidCLI.simulateCuboidGeneration(createdDesc); + int cuboidCount = CuboidCLI.simulateCuboidGeneration(createdDesc,false); logger.info("New cube " + cubeName + " has " + cuboidCount + " cuboids"); } catch (Exception e) { getCubeDescManager().removeCubeDesc(createdDesc); @@ -260,7 +260,7 @@ public class CubeService extends BasicService { } CubeDesc updatedCubeDesc = getCubeDescManager().updateCubeDesc(desc); - int cuboidCount = CuboidCLI.simulateCuboidGeneration(updatedCubeDesc); + int cuboidCount = CuboidCLI.simulateCuboidGeneration(updatedCubeDesc,false); logger.info("Updated cube " + cube.getName() + " has " + cuboidCount + " cuboids"); ProjectManager projectManager = getProjectManager(); http://git-wip-us.apache.org/repos/asf/kylin/blob/07537a9a/server/src/test/java/org/apache/kylin/rest/controller/CubeControllerTest.java ---------------------------------------------------------------------- diff --git a/server/src/test/java/org/apache/kylin/rest/controller/CubeControllerTest.java b/server/src/test/java/org/apache/kylin/rest/controller/CubeControllerTest.java index c8496a0..1230886 100644 --- a/server/src/test/java/org/apache/kylin/rest/controller/CubeControllerTest.java +++ b/server/src/test/java/org/apache/kylin/rest/controller/CubeControllerTest.java @@ -60,11 +60,9 @@ public class CubeControllerTest extends ServiceTestBase { cubeController.setCubeService(cubeService); cubeController.setJobService(jobService); cubeController.setStreamingService(streamingService); - - + cubeDescController = new CubeDescController(); cubeDescController.setCubeService(cubeService); - } @@ -89,10 +87,11 @@ public class CubeControllerTest extends ServiceTestBase { newCube.setModelName(cube.getModelName()); newCube.setModel(cube.getModel()); newCube.setDimensions(cube.getDimensions()); - newCube.setHBaseMapping(cube.getHBaseMapping()); + newCube.setHbaseMapping(cube.getHbaseMapping()); newCube.setMeasures(cube.getMeasures()); newCube.setConfig(cube.getConfig()); newCube.setRowkey(cube.getRowkey()); + newCube.setAggregationGroups(cube.getAggregationGroups()); newCube.getModel().setLastModified(0); http://git-wip-us.apache.org/repos/asf/kylin/blob/07537a9a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/cube/v1/CubeStorageQuery.java ---------------------------------------------------------------------- diff --git a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/cube/v1/CubeStorageQuery.java b/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/cube/v1/CubeStorageQuery.java index 2fa0490..652d558 100644 --- a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/cube/v1/CubeStorageQuery.java +++ b/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/cube/v1/CubeStorageQuery.java @@ -141,7 +141,7 @@ public class CubeStorageQuery implements ICachableStorageQuery { List<HBaseKeyRange> scans = buildScanRanges(flattenToOrAndFilter(filterD), dimensionsD); // check involved measures, build value decoder for each each family:column - List<RowValueDecoder> valueDecoders = translateAggregation(cubeDesc.getHBaseMapping(), metrics, context); + List<RowValueDecoder> valueDecoders = translateAggregation(cubeDesc.getHbaseMapping(), metrics, context); // memory hungry distinct count are pushed down to coprocessor, no need to set threshold any more // setThreshold(dimensionsD, valueDecoders, context); // set cautious threshold to prevent out of memory http://git-wip-us.apache.org/repos/asf/kylin/blob/07537a9a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/cube/v1/CubeTupleConverter.java ---------------------------------------------------------------------- diff --git a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/cube/v1/CubeTupleConverter.java b/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/cube/v1/CubeTupleConverter.java index 8813901..6a15bc3 100644 --- a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/cube/v1/CubeTupleConverter.java +++ b/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/cube/v1/CubeTupleConverter.java @@ -12,7 +12,6 @@ import org.apache.kylin.common.topn.Counter; import org.apache.kylin.common.topn.TopNCounter; import org.apache.kylin.common.util.Array; import org.apache.kylin.common.util.ByteArray; -import org.apache.kylin.common.util.Bytes; import org.apache.kylin.common.util.BytesUtil; import org.apache.kylin.cube.CubeManager; import org.apache.kylin.cube.CubeSegment; @@ -21,12 +20,9 @@ import org.apache.kylin.cube.kv.RowKeyDecoder; import org.apache.kylin.cube.model.CubeDesc.DeriveInfo; import org.apache.kylin.dict.Dictionary; import org.apache.kylin.dict.lookup.LookupStringTable; -import org.apache.kylin.metadata.model.DataType; import org.apache.kylin.metadata.model.FunctionDesc; import org.apache.kylin.metadata.model.MeasureDesc; import org.apache.kylin.metadata.model.TblColRef; -import org.apache.kylin.metadata.tuple.ITuple; -import org.apache.kylin.storage.StorageContext; import org.apache.kylin.storage.hbase.steps.RowValueDecoder; import org.apache.kylin.storage.tuple.Tuple; import org.apache.kylin.storage.tuple.TupleInfo; @@ -104,7 +100,7 @@ public class CubeTupleConverter { } // prepare derived columns and filler - Map<Array<TblColRef>, List<DeriveInfo>> hostToDerivedInfo = cuboid.getCube().getHostToDerivedInfo(dimCols, null); + Map<Array<TblColRef>, List<DeriveInfo>> hostToDerivedInfo = cuboid.getCubeDesc().getHostToDerivedInfo(dimCols, null); for (Entry<Array<TblColRef>, List<DeriveInfo>> entry : hostToDerivedInfo.entrySet()) { TblColRef[] hostCols = entry.getKey().data; for (DeriveInfo deriveInfo : entry.getValue()) { http://git-wip-us.apache.org/repos/asf/kylin/blob/07537a9a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/cube/v2/CubeStorageQuery.java ---------------------------------------------------------------------- diff --git a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/cube/v2/CubeStorageQuery.java b/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/cube/v2/CubeStorageQuery.java index 59ed99b..ca4c8aa 100644 --- a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/cube/v2/CubeStorageQuery.java +++ b/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/cube/v2/CubeStorageQuery.java @@ -101,7 +101,7 @@ public class CubeStorageQuery implements ICachableStorageQuery { try { scanner = new CubeSegmentScanner(cubeSeg, cuboid, dimensionsD, groupsD, metrics, filterD, !isExactAggregation); } catch (NotEnoughGTInfoException e) { - logger.info("Cannot construct Segment {}'s GTInfo, this may due to empty segment or broken metadata"); + logger.info("Cannot construct Segment {}'s GTInfo, this may due to empty segment or broken metadata", cubeSeg); continue; } scanners.add(scanner); http://git-wip-us.apache.org/repos/asf/kylin/blob/07537a9a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/cube/v2/CubeTupleConverter.java ---------------------------------------------------------------------- diff --git a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/cube/v2/CubeTupleConverter.java b/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/cube/v2/CubeTupleConverter.java index c89cce2..f09ce8a 100644 --- a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/cube/v2/CubeTupleConverter.java +++ b/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/cube/v2/CubeTupleConverter.java @@ -24,7 +24,6 @@ import java.util.Map; import java.util.Map.Entry; import java.util.Set; -import org.apache.hadoop.hbase.client.Result; import org.apache.kylin.common.topn.Counter; import org.apache.kylin.common.topn.TopNCounter; import org.apache.kylin.common.util.Array; @@ -114,7 +113,7 @@ public class CubeTupleConverter { } // prepare derived columns and filler - Map<Array<TblColRef>, List<DeriveInfo>> hostToDerivedInfo = cuboid.getCube().getHostToDerivedInfo(cuboidDims, null); + Map<Array<TblColRef>, List<DeriveInfo>> hostToDerivedInfo = cuboid.getCubeDesc().getHostToDerivedInfo(cuboidDims, null); for (Entry<Array<TblColRef>, List<DeriveInfo>> entry : hostToDerivedInfo.entrySet()) { TblColRef[] hostCols = entry.getKey().data; for (DeriveInfo deriveInfo : entry.getValue()) { http://git-wip-us.apache.org/repos/asf/kylin/blob/07537a9a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/BulkLoadJob.java ---------------------------------------------------------------------- diff --git a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/BulkLoadJob.java b/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/BulkLoadJob.java index b31a078..d2a18c9 100644 --- a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/BulkLoadJob.java +++ b/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/BulkLoadJob.java @@ -69,7 +69,7 @@ public class BulkLoadJob extends AbstractHadoopJob { CubeInstance cube = cubeMgr.getCube(cubeName); CubeDesc cubeDesc = cube.getDescriptor(); FsPermission permission = new FsPermission((short) 0777); - for (HBaseColumnFamilyDesc cf : cubeDesc.getHBaseMapping().getColumnFamily()) { + for (HBaseColumnFamilyDesc cf : cubeDesc.getHbaseMapping().getColumnFamily()) { String cfName = cf.getName(); Path columnFamilyPath = new Path(input, cfName); http://git-wip-us.apache.org/repos/asf/kylin/blob/07537a9a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/CubeHFileMapper.java ---------------------------------------------------------------------- diff --git a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/CubeHFileMapper.java b/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/CubeHFileMapper.java index 9f97b0e..509df42 100644 --- a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/CubeHFileMapper.java +++ b/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/CubeHFileMapper.java @@ -66,7 +66,7 @@ public class CubeHFileMapper extends KylinMapper<Text, Text, ImmutableBytesWrita inputMeasures = new Object[cubeDesc.getMeasures().size()]; keyValueCreators = Lists.newArrayList(); - for (HBaseColumnFamilyDesc cfDesc : cubeDesc.getHBaseMapping().getColumnFamily()) { + for (HBaseColumnFamilyDesc cfDesc : cubeDesc.getHbaseMapping().getColumnFamily()) { for (HBaseColumnDesc colDesc : cfDesc.getColumns()) { keyValueCreators.add(new KeyValueCreator(cubeDesc, colDesc)); } http://git-wip-us.apache.org/repos/asf/kylin/blob/07537a9a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/CubeHTableUtil.java ---------------------------------------------------------------------- diff --git a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/CubeHTableUtil.java b/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/CubeHTableUtil.java index cdc259b..864765e 100644 --- a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/CubeHTableUtil.java +++ b/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/CubeHTableUtil.java @@ -47,7 +47,7 @@ public class CubeHTableUtil { tableDesc.addCoprocessor("org.apache.hadoop.hbase.security.access.SecureBulkLoadEndpoint"); } - for (HBaseColumnFamilyDesc cfDesc : cubeDesc.getHBaseMapping().getColumnFamily()) { + for (HBaseColumnFamilyDesc cfDesc : cubeDesc.getHbaseMapping().getColumnFamily()) { HColumnDescriptor cf = new HColumnDescriptor(cfDesc.getName()); cf.setMaxVersions(1); http://git-wip-us.apache.org/repos/asf/kylin/blob/07537a9a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/HBaseCuboidWriter.java ---------------------------------------------------------------------- diff --git a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/HBaseCuboidWriter.java b/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/HBaseCuboidWriter.java index 31cce7b..c4dc0b5 100644 --- a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/HBaseCuboidWriter.java +++ b/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/HBaseCuboidWriter.java @@ -76,7 +76,7 @@ public final class HBaseCuboidWriter implements ICuboidWriter { this.keyValueCreators = Lists.newArrayList(); this.cubeSegment = segment; this.cubeDesc = cubeSegment.getCubeDesc(); - for (HBaseColumnFamilyDesc cfDesc : cubeDesc.getHBaseMapping().getColumnFamily()) { + for (HBaseColumnFamilyDesc cfDesc : cubeDesc.getHbaseMapping().getColumnFamily()) { for (HBaseColumnDesc colDesc : cfDesc.getColumns()) { keyValueCreators.add(new KeyValueCreator(cubeDesc, colDesc)); } http://git-wip-us.apache.org/repos/asf/kylin/blob/07537a9a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/HBaseMROutput2.java ---------------------------------------------------------------------- diff --git a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/HBaseMROutput2.java b/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/HBaseMROutput2.java index f99ddb5..205c0db 100644 --- a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/HBaseMROutput2.java +++ b/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/HBaseMROutput2.java @@ -140,7 +140,7 @@ public class HBaseMROutput2 implements IMROutput2 { List<RowValueDecoder> valueDecoderList = Lists.newArrayList(); List<MeasureDesc> measuresDescs = Lists.newArrayList(); - for (HBaseColumnFamilyDesc cfDesc : seg.getCubeDesc().getHBaseMapping().getColumnFamily()) { + for (HBaseColumnFamilyDesc cfDesc : seg.getCubeDesc().getHbaseMapping().getColumnFamily()) { for (HBaseColumnDesc colDesc : cfDesc.getColumns()) { valueDecoderList.add(new RowValueDecoder(colDesc)); for (MeasureDesc measure : colDesc.getMeasures()) { @@ -238,7 +238,7 @@ public class HBaseMROutput2 implements IMROutput2 { @Override public void doReducerOutput(ByteArrayWritable key, Object[] value, Reducer.Context context) throws IOException, InterruptedException { if (keyValueCreators.size() == 0) { - for (HBaseColumnFamilyDesc cfDesc : seg.getCubeDesc().getHBaseMapping().getColumnFamily()) { + for (HBaseColumnFamilyDesc cfDesc : seg.getCubeDesc().getHbaseMapping().getColumnFamily()) { for (HBaseColumnDesc colDesc : cfDesc.getColumns()) { keyValueCreators.add(new KeyValueCreator(seg.getCubeDesc(), colDesc)); } http://git-wip-us.apache.org/repos/asf/kylin/blob/07537a9a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/HBaseMROutput2Transition.java ---------------------------------------------------------------------- diff --git a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/HBaseMROutput2Transition.java b/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/HBaseMROutput2Transition.java index e7c4cf5..8cb8f13 100644 --- a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/HBaseMROutput2Transition.java +++ b/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/HBaseMROutput2Transition.java @@ -274,7 +274,7 @@ public class HBaseMROutput2Transition implements IMROutput2 { if (rowValueDecoders == null) { List<RowValueDecoder> valueDecoderList = Lists.newArrayList(); List<MeasureDesc> measuresDescs = Lists.newArrayList(); - for (HBaseColumnFamilyDesc cfDesc : seg.getCubeDesc().getHBaseMapping().getColumnFamily()) { + for (HBaseColumnFamilyDesc cfDesc : seg.getCubeDesc().getHbaseMapping().getColumnFamily()) { for (HBaseColumnDesc colDesc : cfDesc.getColumns()) { valueDecoderList.add(new RowValueDecoder(colDesc)); for (MeasureDesc measure : colDesc.getMeasures()) { http://git-wip-us.apache.org/repos/asf/kylin/blob/07537a9a/storage-hbase/src/test/java/org/apache/kylin/storage/hbase/steps/RowValueDecoderTest.java ---------------------------------------------------------------------- diff --git a/storage-hbase/src/test/java/org/apache/kylin/storage/hbase/steps/RowValueDecoderTest.java b/storage-hbase/src/test/java/org/apache/kylin/storage/hbase/steps/RowValueDecoderTest.java index ba79305..68a2e76 100644 --- a/storage-hbase/src/test/java/org/apache/kylin/storage/hbase/steps/RowValueDecoderTest.java +++ b/storage-hbase/src/test/java/org/apache/kylin/storage/hbase/steps/RowValueDecoderTest.java @@ -55,7 +55,7 @@ public class RowValueDecoderTest extends LocalFileMetadataTestCase { @Test public void testDecode() throws Exception { CubeDesc cubeDesc = CubeManager.getInstance(getTestConfig()).getCube("test_kylin_cube_with_slr_ready").getDescriptor(); - HBaseColumnDesc hbaseCol = cubeDesc.getHBaseMapping().getColumnFamily()[0].getColumns()[0]; + HBaseColumnDesc hbaseCol = cubeDesc.getHbaseMapping().getColumnFamily()[0].getColumns()[0]; MeasureCodec codec = new MeasureCodec(hbaseCol.getMeasures()); BigDecimal sum = new BigDecimal("333.1234567"); @@ -86,7 +86,7 @@ public class RowValueDecoderTest extends LocalFileMetadataTestCase { @Test(expected = IllegalArgumentException.class) public void testError() throws Exception { CubeDesc cubeDesc = CubeManager.getInstance(getTestConfig()).getCube("test_kylin_cube_with_slr_ready").getDescriptor(); - HBaseColumnDesc hbaseCol = cubeDesc.getHBaseMapping().getColumnFamily()[0].getColumns()[0]; + HBaseColumnDesc hbaseCol = cubeDesc.getHbaseMapping().getColumnFamily()[0].getColumns()[0]; MeasureCodec codec = new MeasureCodec(hbaseCol.getMeasures()); BigDecimal sum = new BigDecimal("11111111111111111111333.1234567");