[ https://issues.apache.org/jira/browse/KYLIN-1345?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15170095#comment-15170095 ]
Edward Zhang commented on KYLIN-1345: ------------------------------------- Another place to trigger this issue is 2016-02-26 23:23:53,881 WARN [timeline] org.apache.hadoop.metrics2.sink.timeline.HadoopTimelineMetricsSink: Unable to send metrics to collector by address:http://sandbox.hortonworks.com:6188/ws/v1/timeline/metrics 2016-02-26 23:23:54,909 INFO [Thread-12] org.apache.kylin.cube.inmemcubing.InMemCubeBuilder: In Mem Cube Build end, testtest, takes 68031 ms 2016-02-26 23:23:54,909 ERROR [pool-5-thread-1] org.apache.kylin.cube.inmemcubing.DoggedCubeBuilder: Dogged Cube Build error java.io.IOException: java.lang.RuntimeException: java.io.IOException: java.lang.IllegalArgumentException: '92005.60' exceeds the expected length for type decimal(6,2) at org.apache.kylin.cube.inmemcubing.DoggedCubeBuilder$BuildOnce.abort(DoggedCubeBuilder.java:193) at org.apache.kylin.cube.inmemcubing.DoggedCubeBuilder$BuildOnce.checkException(DoggedCubeBuilder.java:166) at org.apache.kylin.cube.inmemcubing.DoggedCubeBuilder$BuildOnce.build(DoggedCubeBuilder.java:113) at org.apache.kylin.cube.inmemcubing.DoggedCubeBuilder.build(DoggedCubeBuilder.java:72) at org.apache.kylin.cube.inmemcubing.AbstractInMemCubeBuilder$1.run(AbstractInMemCubeBuilder.java:74) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) at java.util.concurrent.FutureTask.run(FutureTask.java:262) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:745) Caused by: java.lang.RuntimeException: java.io.IOException: java.lang.IllegalArgumentException: '92005.60' exceeds the expected length for type decimal(6,2) at org.apache.kylin.cube.inmemcubing.DoggedCubeBuilder$SplitThread.run(DoggedCubeBuilder.java:286) Caused by: java.io.IOException: java.lang.IllegalArgumentException: '92005.60' exceeds the expected length for type decimal(6,2) at org.apache.kylin.cube.inmemcubing.InMemCubeBuilder.throwExceptionIfAny(InMemCubeBuilder.java:222) at org.apache.kylin.cube.inmemcubing.InMemCubeBuilder.build(InMemCubeBuilder.java:182) at org.apache.kylin.cube.inmemcubing.InMemCubeBuilder.build(InMemCubeBuilder.java:133) at org.apache.kylin.cube.inmemcubing.DoggedCubeBuilder$SplitThread.run(DoggedCubeBuilder.java:281) Caused by: java.lang.IllegalArgumentException: '92005.60' exceeds the expected length for type decimal(6,2) at org.apache.kylin.metadata.datatype.BigDecimalSerializer.serialize(BigDecimalSerializer.java:58) at org.apache.kylin.metadata.datatype.BigDecimalSerializer.serialize(BigDecimalSerializer.java:33) at org.apache.kylin.cube.gridtable.CubeCodeSystem.encodeColumnValue(CubeCodeSystem.java:117) at org.apache.kylin.cube.gridtable.CubeCodeSystem.encodeColumnValue(CubeCodeSystem.java:104) at org.apache.kylin.gridtable.GTAggregateScanner$AggregationCache$ReturningRecord.load(GTAggregateScanner.java:357) at org.apache.kylin.gridtable.GTAggregateScanner$AggregationCache$2.next(GTAggregateScanner.java:301) at org.apache.kylin.gridtable.GTAggregateScanner$AggregationCache$2.next(GTAggregateScanner.java:288) at org.apache.kylin.cube.inmemcubing.InMemCubeBuilder.scanAndAggregateGridTable(InMemCubeBuilder.java:432) at org.apache.kylin.cube.inmemcubing.InMemCubeBuilder.aggregateCuboid(InMemCubeBuilder.java:395) at org.apache.kylin.cube.inmemcubing.InMemCubeBuilder.buildCuboid(InMemCubeBuilder.java:387) at org.apache.kylin.cube.inmemcubing.InMemCubeBuilder.access$300(InMemCubeBuilder.java:61) at org.apache.kylin.cube.inmemcubing.InMemCubeBuilder$CuboidTaskThread.run(InMemCubeBuilder.java:266) 2016-02-26 23:23:54,910 INFO [pool-5-thread-1] org.apache.kylin.cube.inmemcubing.DoggedCubeBuilder: Dogged Cube Build end, totally took 68041 ms 2016-02-26 23:23:54,910 INFO [pool-5-thread-1] org.apache.kylin.cube.inmemcubing.DoggedCubeBuilder: Dogged Cube Build return 2016-02-26 23:23:54,920 INFO [main] org.apache.hadoop.mapred.MapTask: Starting flush of map output 2016-02-26 23:23:54,945 WARN [main] org.apache.hadoop.mapred.YarnChild: Exception running child : java.io.IOException: Failed to build cube in mapper 0 at org.apache.kylin.engine.mr.steps.InMemCuboidMapper.cleanup(InMemCuboidMapper.java:124) at org.apache.hadoop.mapreduce.Mapper.run(Mapper.java:148) at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:784) at org.apache.hadoop.mapred.MapTask.run(MapTask.java:341) at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:163) at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.Subject.doAs(Subject.java:415) at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1628) at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:158) Caused by: java.util.concurrent.ExecutionException: java.lang.RuntimeException: java.io.IOException: java.io.IOException: java.lang.RuntimeException: java.io.IOException: java.lang.IllegalArgumentException: '92005.60' exceeds the expected length for type decimal(6,2) at java.util.concurrent.FutureTask.report(FutureTask.java:122) at java.util.concurrent.FutureTask.get(FutureTask.java:188) at org.apache.kylin.engine.mr.steps.InMemCuboidMapper.cleanup(InMemCuboidMapper.java:122) ... 8 more Caused by: java.lang.RuntimeException: java.io.IOException: java.io.IOException: java.lang.RuntimeException: java.io.IOException: java.lang.IllegalArgumentException: '92005.60' exceeds the expected length for type decimal(6,2) at org.apache.kylin.cube.inmemcubing.AbstractInMemCubeBuilder$1.run(AbstractInMemCubeBuilder.java:76) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) at java.util.concurrent.FutureTask.run(FutureTask.java:262) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:745) Caused by: java.io.IOException: java.io.IOException: java.lang.RuntimeException: java.io.IOException: java.lang.IllegalArgumentException: '92005.60' exceeds the expected length for type decimal(6,2) at org.apache.kylin.cube.inmemcubing.DoggedCubeBuilder$BuildOnce.build(DoggedCubeBuilder.java:125) at org.apache.kylin.cube.inmemcubing.DoggedCubeBuilder.build(DoggedCubeBuilder.java:72) at org.apache.kylin.cube.inmemcubing.AbstractInMemCubeBuilder$1.run(AbstractInMemCubeBuilder.java:74) ... 5 more Caused by: java.io.IOException: java.lang.RuntimeException: java.io.IOException: java.lang.IllegalArgumentException: '92005.60' exceeds the expected length for type decimal(6,2) at org.apache.kylin.cube.inmemcubing.DoggedCubeBuilder$BuildOnce.abort(DoggedCubeBuilder.java:193) at org.apache.kylin.cube.inmemcubing.DoggedCubeBuilder$BuildOnce.checkException(DoggedCubeBuilder.java:166) at org.apache.kylin.cube.inmemcubing.DoggedCubeBuilder$BuildOnce.build(DoggedCubeBuilder.java:113) ... 7 more Caused by: java.lang.RuntimeException: java.io.IOException: java.lang.IllegalArgumentException: '92005.60' exceeds the expected length for type decimal(6,2) at org.apache.kylin.cube.inmemcubing.DoggedCubeBuilder$SplitThread.run(DoggedCubeBuilder.java:286) Caused by: java.io.IOException: java.lang.IllegalArgumentException: '92005.60' exceeds the expected length for type decimal(6,2) at org.apache.kylin.cube.inmemcubing.InMemCubeBuilder.throwExceptionIfAny(InMemCubeBuilder.java:222) at org.apache.kylin.cube.inmemcubing.InMemCubeBuilder.build(InMemCubeBuilder.java:182) at org.apache.kylin.cube.inmemcubing.InMemCubeBuilder.build(InMemCubeBuilder.java:133) at org.apache.kylin.cube.inmemcubing.DoggedCubeBuilder$SplitThread.run(DoggedCubeBuilder.java:281) Caused by: java.lang.IllegalArgumentException: '92005.60' exceeds the expected length for type decimal(6,2) at org.apache.kylin.metadata.datatype.BigDecimalSerializer.serialize(BigDecimalSerializer.java:58) at org.apache.kylin.metadata.datatype.BigDecimalSerializer.serialize(BigDecimalSerializer.java:33) at org.apache.kylin.cube.gridtable.CubeCodeSystem.encodeColumnValue(CubeCodeSystem.java:117) at org.apache.kylin.cube.gridtable.CubeCodeSystem.encodeColumnValue(CubeCodeSystem.java:104) at org.apache.kylin.gridtable.GTAggregateScanner$AggregationCache$ReturningRecord.load(GTAggregateScanner.java:357) at org.apache.kylin.gridtable.GTAggregateScanner$AggregationCache$2.next(GTAggregateScanner.java:301) at org.apache.kylin.gridtable.GTAggregateScanner$AggregationCache$2.next(GTAggregateScanner.java:288) at org.apache.kylin.cube.inmemcubing.InMemCubeBuilder.scanAndAggregateGridTable(InMemCubeBuilder.java:432) at org.apache.kylin.cube.inmemcubing.InMemCubeBuilder.aggregateCuboid(InMemCubeBuilder.java:395) at org.apache.kylin.cube.inmemcubing.InMemCubeBuilder.buildCuboid(InMemCubeBuilder.java:387) at org.apache.kylin.cube.inmemcubing.InMemCubeBuilder.access$300(InMemCubeBuilder.java:61) at org.apache.kylin.cube.inmemcubing.InMemCubeBuilder$CuboidTaskThread.run(InMemCubeBuilder.java:266) 2016-02-26 23:23:55,014 INFO [main] org.apache.hadoop.mapred.Task: Runnning cleanup for the task 2016-02-26 23:23:55,083 WARN [main] org.apache.hadoop.mapreduce.lib.output.FileOutputCommitter: Could not delete hdfs://sandbox.hortonworks.com:8020/kylin/kylin_metadata/kylin-6446a86c-62a8-4523-96c8-ca444f8bdb02/testtest/cuboid/_temporary/1/_temporary/attempt_1456525194679_0016_m_000000_0 2016-02-26 23:23:55,371 INFO [main] org.apache.hadoop.metrics2.impl.MetricsSystemImpl: Stopping MapTask metrics system... 2016-02-26 23:23:55,373 INFO [timeline] org.apache.hadoop.metrics2.impl.MetricsSinkAdapter: timeline thread interrupted. 2016-02-26 23:23:55,373 INFO [main] org.apache.hadoop.metrics2.impl.MetricsSystemImpl: MapTask metrics system stopped. > measure type expansion when dealing sum of decimal metric > --------------------------------------------------------- > > Key: KYLIN-1345 > URL: https://issues.apache.org/jira/browse/KYLIN-1345 > Project: Kylin > Issue Type: Improvement > Reporter: hongbin ma > Assignee: Edward Zhang > Labels: newbie > > suppose a metric column price is of type decimal (6,2), the sum aggregator of > it might exceed the maximal of decimal (6,2). Currently for metric > aggregators we inherite the column's type in hive. We should think auto > expanding decimal type to decimal(18,4) (just an example) for such cases -- This message was sent by Atlassian JIRA (v6.3.4#6332)