[ https://issues.apache.org/jira/browse/KYLIN-2249?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15982703#comment-15982703 ]
Shaofeng SHI commented on KYLIN-2249: ------------------------------------- TrieDictionaryForest was introduced after 1.6, but user got error in 1.6, so it is not related with the "forest" implementation. >From the error "Not a valid value: 00000000122594010041", I think it is >related with KYLIN-2545 > Build cube error when use "inmem" but ok with "layer" > ----------------------------------------------------- > > Key: KYLIN-2249 > URL: https://issues.apache.org/jira/browse/KYLIN-2249 > Project: Kylin > Issue Type: Bug > Affects Versions: v1.6.0 > Environment: CentOS > Reporter: hoangle > Assignee: XIE FAN > Fix For: v2.0.0 > > Attachments: > 0001-KYLIN-2249-Bug-fix-build-cube-error-when-use-inmem-b.patch, Cube JSON.txt > > Original Estimate: 410h > Remaining Estimate: 410h > > My cube building is ok if I set configure: > kylin.cube.algorithm=layer > But It always error (at Step Name: Build Cube) when I change "layer" to > "inmem" > > 2016-12-05 17:17:37,451 ERROR [Thread-13] > org.apache.kylin.dict.TrieDictionary: Not a valid value: 00000000122594010041 > 2016-12-05 17:17:38,452 ERROR [pool-8-thread-1] > org.apache.kylin.cube.inmemcubing.DoggedCubeBuilder: Dogged Cube Build error > java.io.IOException: java.lang.IllegalArgumentException: Value not exists! > at > org.apache.kylin.cube.inmemcubing.DoggedCubeBuilder$BuildOnce.abort(DoggedCubeBuilder.java:196) > at > org.apache.kylin.cube.inmemcubing.DoggedCubeBuilder$BuildOnce.checkException(DoggedCubeBuilder.java:169) > at > org.apache.kylin.cube.inmemcubing.DoggedCubeBuilder$BuildOnce.build(DoggedCubeBuilder.java:116) > at > org.apache.kylin.cube.inmemcubing.DoggedCubeBuilder.build(DoggedCubeBuilder.java:75) > at > org.apache.kylin.cube.inmemcubing.AbstractInMemCubeBuilder$1.run(AbstractInMemCubeBuilder.java:82) > at > java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) > at java.util.concurrent.FutureTask.run(FutureTask.java:266) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) > at java.lang.Thread.run(Thread.java:745) > Caused by: java.lang.IllegalArgumentException: Value not exists! > at > org.apache.kylin.common.util.Dictionary.getIdFromValueBytes(Dictionary.java:162) > at > org.apache.kylin.dict.TrieDictionary.getIdFromValueImpl(TrieDictionary.java:167) > at > org.apache.kylin.common.util.Dictionary.getIdFromValue(Dictionary.java:98) > at > org.apache.kylin.dimension.DictionaryDimEnc$DictionarySerializer.serialize(DictionaryDimEnc.java:121) > at > org.apache.kylin.cube.gridtable.CubeCodeSystem.encodeColumnValue(CubeCodeSystem.java:121) > at > org.apache.kylin.cube.gridtable.CubeCodeSystem.encodeColumnValue(CubeCodeSystem.java:110) > at org.apache.kylin.gridtable.GTRecord.setValues(GTRecord.java:93) > at org.apache.kylin.gridtable.GTRecord.setValues(GTRecord.java:81) > at > org.apache.kylin.cube.inmemcubing.InMemCubeBuilderInputConverter.convert(InMemCubeBuilderInputConverter.java:74) > at > org.apache.kylin.cube.inmemcubing.InMemCubeBuilder$InputConverter$1.next(InMemCubeBuilder.java:544) > at > org.apache.kylin.cube.inmemcubing.InMemCubeBuilder$InputConverter$1.next(InMemCubeBuilder.java:525) > at > org.apache.kylin.gridtable.GTAggregateScanner.iterator(GTAggregateScanner.java:139) > at > org.apache.kylin.cube.inmemcubing.InMemCubeBuilder.createBaseCuboid(InMemCubeBuilder.java:341) > at > org.apache.kylin.cube.inmemcubing.InMemCubeBuilder.build(InMemCubeBuilder.java:168) > at > org.apache.kylin.cube.inmemcubing.InMemCubeBuilder.build(InMemCubeBuilder.java:137) > at > org.apache.kylin.cube.inmemcubing.DoggedCubeBuilder$SplitThread.run(DoggedCubeBuilder.java:284) -- This message was sent by Atlassian JIRA (v6.3.15#6346)