[ https://issues.apache.org/jira/browse/HIVE-15795?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15980150#comment-15980150 ]
Josh Elser commented on HIVE-15795: ----------------------------------- [~faganm], this isn't just an issue with encoding the table values? {noformat} 2017-04-22T15:02:11,706 ERROR [cfe6dade-9632-47f7-bc97-498c2e492bff main] CliDriver: Failed with exception java.io.IOException:java.lang.NumberFormatException: For input string: "4.5" java.io.IOException: java.lang.NumberFormatException: For input string: "4.5" at org.apache.hadoop.hive.ql.exec.FetchOperator.getNextRow(FetchOperator.java:525) at org.apache.hadoop.hive.ql.exec.FetchOperator.pushRow(FetchOperator.java:432) at org.apache.hadoop.hive.ql.exec.FetchTask.fetch(FetchTask.java:147) at org.apache.hadoop.hive.ql.Driver.getResults(Driver.java:2154) at org.apache.hadoop.hive.cli.CliDriver.processLocalCmd(CliDriver.java:253) at org.apache.hadoop.hive.cli.CliDriver.processCmd(CliDriver.java:184) at org.apache.hadoop.hive.cli.CliDriver.processLine(CliDriver.java:403) at org.apache.hadoop.hive.cli.CliDriver.processLine(CliDriver.java:336) at org.apache.hadoop.hive.ql.QTestUtil.executeClientInternal(QTestUtil.java:1340) at org.apache.hadoop.hive.ql.QTestUtil.executeClient(QTestUtil.java:1314) at org.apache.hadoop.hive.cli.control.CoreAccumuloCliDriver.runTest(CoreAccumuloCliDriver.java:92) at org.apache.hadoop.hive.cli.control.CliAdapter.runTest(CliAdapter.java:104) at org.apache.hadoop.hive.cli.TestAccumuloCliDriver.testCliDriver(TestAccumuloCliDriver.java:59) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47) at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12) at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44) at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17) at org.apache.hadoop.hive.cli.control.CliAdapter$2$1.evaluate(CliAdapter.java:92) at org.junit.rules.RunRules.evaluate(RunRules.java:20) at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:271) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:70) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50) at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238) at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63) at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236) at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53) at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229) at org.junit.runners.ParentRunner.run(ParentRunner.java:309) at org.junit.runners.Suite.runChild(Suite.java:127) at org.junit.runners.Suite.runChild(Suite.java:26) at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238) at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63) at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236) at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53) at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229) at org.apache.hadoop.hive.cli.control.CliAdapter$1$1.evaluate(CliAdapter.java:73) at org.junit.rules.RunRules.evaluate(RunRules.java:20) at org.junit.runners.ParentRunner.run(ParentRunner.java:309) at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:283) at org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:173) at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:153) at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:128) at org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:203) at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:155) at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:103) Caused by: java.lang.NumberFormatException: For input string: "4.5" at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65) at java.lang.Integer.parseInt(Integer.java:580) at java.math.BigInteger.<init>(BigInteger.java:470) at org.apache.hadoop.hive.accumulo.AccumuloIndexLexicoder.encodeStringValue(AccumuloIndexLexicoder.java:78) at org.apache.hadoop.hive.accumulo.AccumuloIndexLexicoder.encodeValue(AccumuloIndexLexicoder.java:56) at org.apache.hadoop.hive.accumulo.predicate.AccumuloRangeGenerator.getIndexedRowIds(AccumuloRangeGenerator.java:350) at org.apache.hadoop.hive.accumulo.predicate.AccumuloRangeGenerator.processExpression(AccumuloRangeGenerator.java:260) at org.apache.hadoop.hive.accumulo.predicate.AccumuloRangeGenerator.process(AccumuloRangeGenerator.java:112) at org.apache.hadoop.hive.ql.lib.DefaultRuleDispatcher.dispatch(DefaultRuleDispatcher.java:90) at org.apache.hadoop.hive.ql.lib.DefaultGraphWalker.dispatchAndReturn(DefaultGraphWalker.java:105) at org.apache.hadoop.hive.ql.lib.DefaultGraphWalker.dispatch(DefaultGraphWalker.java:89) at org.apache.hadoop.hive.ql.lib.DefaultGraphWalker.walk(DefaultGraphWalker.java:158) at org.apache.hadoop.hive.ql.lib.DefaultGraphWalker.startWalking(DefaultGraphWalker.java:120) at org.apache.hadoop.hive.accumulo.predicate.AccumuloPredicateHandler.generateRanges(AccumuloPredicateHandler.java:271) at org.apache.hadoop.hive.accumulo.predicate.AccumuloPredicateHandler.getRanges(AccumuloPredicateHandler.java:226) at org.apache.hadoop.hive.accumulo.mr.HiveAccumuloTableInputFormat.getSplits(HiveAccumuloTableInputFormat.java:130) at org.apache.hadoop.hive.ql.exec.FetchOperator.getNextSplits(FetchOperator.java:373) at org.apache.hadoop.hive.ql.exec.FetchOperator.getRecordReader(FetchOperator.java:305) at org.apache.hadoop.hive.ql.exec.FetchOperator.getNextRow(FetchOperator.java:463) ... 48 more {noformat} At a glance, this reads as though the code is expecting integers while the Hive type is actually telling us it might be a decimal. e.g. should {code} case serdeConstants.DECIMAL_TYPE_NAME : return BIG_INTEGER_LEXICODER.encode(new BigInteger(new String(value), 10)); {code} be {code} case serdeConstants.DECIMAL_TYPE_NAME : return BIG_DECIMAL_LEXICODER.encode(new BigDecimal(new String(value), 10)); {code} I am curious why I didn't run into this before Sergey committed. Sorry about that, folks. > Support Accumulo Index Tables in Hive Accumulo Connector > -------------------------------------------------------- > > Key: HIVE-15795 > URL: https://issues.apache.org/jira/browse/HIVE-15795 > Project: Hive > Issue Type: Improvement > Components: Accumulo Storage Handler > Reporter: Mike Fagan > Assignee: Mike Fagan > Priority: Minor > Fix For: 3.0.0 > > Attachments: HIVE-15795.1.patch, HIVE-15795.2.patch > > > Ability to specify an accumulo index table for an accumulo-hive table. > This would greatly improve performance for non-rowid query predicates -- This message was sent by Atlassian JIRA (v6.3.15#6346)