[ 
https://issues.apache.org/jira/browse/KYLIN-689?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14496050#comment-14496050
 ] 

Shaofeng SHI commented on KYLIN-689:
------------------------------------

Xiao yu, a column need either be a dimension or be a measure; Otherwise it will 
be ignored when generating the flat table, that means you will not be able to 
run SQL query on that column from cube.

The inverted index function will not be available for use in V0.7.1; Even later 
with Inverted Index, the column need be specified as either a dimension or 
measure;

> Too many digits for NumberDictionary
> ------------------------------------
>
>                 Key: KYLIN-689
>                 URL: https://issues.apache.org/jira/browse/KYLIN-689
>             Project: Kylin
>          Issue Type: Bug
>          Components: Metadata
>    Affects Versions: v0.6.5, v0.7.1
>            Reporter: Xiaoyu Wang
>            Assignee: Shaofeng SHI
>
> The double field value is 35.800000000000004
> Build cube got error:
> java.lang.IllegalArgumentException: Too many digits for NumberDictionary: 
> 35.800000000000004. Expect 16 digits before decimal point at max.
>         at 
> com.kylinolap.dict.NumberDictionary$NumberBytesCodec.encodeNumber(NumberDictionary.java:76)
>         at 
> com.kylinolap.dict.NumberDictionaryBuilder.addValue(NumberDictionaryBuilder.java:35)
>         at 
> com.kylinolap.dict.TrieDictionaryBuilder.addValue(TrieDictionaryBuilder.java:83)
>         at 
> com.kylinolap.dict.DictionaryGenerator.buildNumberDict(DictionaryGenerator.java:164)
>         at 
> com.kylinolap.dict.DictionaryGenerator.buildDictionaryFromValueList(DictionaryGenerator.java:63)
>         at 
> com.kylinolap.dict.DictionaryGenerator.buildDictionary(DictionaryGenerator.java:114)
>         at 
> com.kylinolap.dict.DictionaryManager.buildDictionary(DictionaryManager.java:166)
>         at 
> com.kylinolap.cube.CubeManager.buildDictionary(CubeManager.java:171)
>         at 
> com.kylinolap.cube.cli.DictionaryGeneratorCLI.processSegment(DictionaryGeneratorCLI.java:50)
>         at 
> com.kylinolap.cube.cli.DictionaryGeneratorCLI.processSegment(DictionaryGeneratorCLI.java:39)
>  at 
> com.kylinolap.cube.cli.DictionaryGeneratorCLI.processSegment(DictionaryGeneratorCLI.java:39)
>         at 
> com.kylinolap.job.hadoop.dict.CreateDictionaryJob.run(CreateDictionaryJob.java:51)
>         at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
>         at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:84)
>         at com.kylinolap.job.cmd.JavaHadoopCmd.execute(JavaHadoopCmd.java:54)
>         at com.kylinolap.job.flow.JobFlowNode.execute(JobFlowNode.java:77)
>         at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
>         at 
> org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573)
> [QuartzScheduler_Worker-19]:[2015-04-15 
> 10:29:39,381][ERROR][com.kylinolap.job.hadoop.dict.CreateDictionaryJob.run(CreateDictionaryJob.java:55)]
>  - Too many digits for NumberDictionary: 35.800000000000004. Expect 16 digits 
> before decimal point at max.
> java.lang.IllegalArgumentException: Too many digits for NumberDictionary: 
> 35.800000000000004. Expect 16 digits before decimal point at max.
>         at 
> com.kylinolap.dict.NumberDictionary$NumberBytesCodec.encodeNumber(NumberDictionary.java:76)
>         at 
> com.kylinolap.dict.NumberDictionaryBuilder.addValue(NumberDictionaryBuilder.java:35)
>         at 
> com.kylinolap.dict.TrieDictionaryBuilder.addValue(TrieDictionaryBuilder.java:83)
>         at 
> com.kylinolap.dict.DictionaryGenerator.buildNumberDict(DictionaryGenerator.java:164)
>         at 
> com.kylinolap.dict.DictionaryGenerator.buildDictionaryFromValueList(DictionaryGenerator.java:63)
>         at 
> com.kylinolap.dict.DictionaryGenerator.buildDictionary(DictionaryGenerator.java:114)
>         at 
> com.kylinolap.dict.DictionaryManager.buildDictionary(DictionaryManager.java:166)
>         at 
> com.kylinolap.cube.CubeManager.buildDictionary(CubeManager.java:171)
>         at 
> com.kylinolap.cube.cli.DictionaryGeneratorCLI.processSegment(DictionaryGeneratorCLI.java:50)
>         at 
> com.kylinolap.cube.cli.DictionaryGeneratorCLI.processSegment(DictionaryGeneratorCLI.java:39)
>         at 
> com.kylinolap.job.hadoop.dict.CreateDictionaryJob.run(CreateDictionaryJob.java:51)
>         at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
>         at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:84)
>         at com.kylinolap.job.cmd.JavaHadoopCmd.execute(JavaHadoopCmd.java:54)
>         at com.kylinolap.job.flow.JobFlowNode.execute(JobFlowNode.java:77)
>         at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
>         at 
> org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573)



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to