[
https://issues.apache.org/jira/browse/HIVE-22473?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16988522#comment-16988522
]
Aditya Shah commented on HIVE-22473:
------------------------------------
[~lpinter], I faced the same issue after the fix. I think, we should add a
similar check for table to be acid in BISplitStategy's getSplit function?
> Avoid reading table as ACID when table name is starting with "delta", but
> table is not transactional
> ----------------------------------------------------------------------------------------------------
>
> Key: HIVE-22473
> URL: https://issues.apache.org/jira/browse/HIVE-22473
> Project: Hive
> Issue Type: Bug
> Components: Hive
> Reporter: Laszlo Pinter
> Assignee: Laszlo Pinter
> Priority: Major
> Fix For: 4.0.0
>
> Attachments: HIVE-22473.01.patch, HIVE-22473.02.patch,
> HIVE-22473.03.patch, HIVE-22473.04.patch
>
>
> {code:sql}
> create table delta_result (a int) stored as orc
> tblproperties('transactional'='false');
> insert into delta_result select 1;
> select * from delta_result;
> {code}
> The above query will result in the following exception:
> 2019-11-08T13:49:05,780 WARN [HiveServer2-Handler-Pool: Thread-7906]
> thrift.ThriftCLIService: Error fetching results:2019-11-08T13:49:05,780 WARN
> [HiveServer2-Handler-Pool: Thread-7906] thrift.ThriftCLIService: Error
> fetching results:org.apache.hive.service.cli.HiveSQLException:
> java.io.IOException: java.lang.RuntimeException: ORC split generation failed
> with exception: java.lang.StringIndexOutOfBoundsException: String index out
> of range: -1 at
> org.apache.hive.service.cli.operation.SQLOperation.getNextRowSet(SQLOperation.java:481)
> ~[hive-service-4.0.0-SNAPSHOT.jar:4.0.0-SNAPSHOT] at
> org.apache.hive.service.cli.operation.OperationManager.getOperationNextRowSet(OperationManager.java:331)
> ~[hive-service-4.0.0-SNAPSHOT.jar:4.0.0-SNAPSHOT] at
> org.apache.hive.service.cli.session.HiveSessionImpl.fetchResults(HiveSessionImpl.java:946)
> ~[hive-service-4.0.0-SNAPSHOT.jar:4.0.0-SNAPSHOT] at
> org.apache.hive.service.cli.CLIService.fetchResults(CLIService.java:567)
> ~[hive-service-4.0.0-SNAPSHOT.jar:4.0.0-SNAPSHOT] at
> org.apache.hive.service.cli.thrift.ThriftCLIService.FetchResults(ThriftCLIService.java:801)
> ~[hive-service-4.0.0-SNAPSHOT.jar:4.0.0-SNAPSHOT] at
> org.apache.hive.service.rpc.thrift.TCLIService$Processor$FetchResults.getResult(TCLIService.java:1837)
> ~[hive-exec-4.0.0-SNAPSHOT.jar:4.0.0-SNAPSHOT] at
> org.apache.hive.service.rpc.thrift.TCLIService$Processor$FetchResults.getResult(TCLIService.java:1822)
> ~[hive-exec-4.0.0-SNAPSHOT.jar:4.0.0-SNAPSHOT] at
> org.apache.thrift.ProcessFunction.process(ProcessFunction.java:39)
> ~[hive-exec-4.0.0-SNAPSHOT.jar:4.0.0-SNAPSHOT] at
> org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:39)
> ~[hive-exec-4.0.0-SNAPSHOT.jar:4.0.0-SNAPSHOT] at
> org.apache.hive.service.auth.TSetIpAddressProcessor.process(TSetIpAddressProcessor.java:56)
> ~[hive-service-4.0.0-SNAPSHOT.jar:4.0.0-SNAPSHOT] at
> org.apache.thrift.server.TThreadPoolServer$WorkerProcess.run(TThreadPoolServer.java:286)
> ~[hive-exec-4.0.0-SNAPSHOT.jar:4.0.0-SNAPSHOT] at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
> ~[?:1.8.0_211] at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
> ~[?:1.8.0_211] at java.lang.Thread.run(Thread.java:748) [?:1.8.0_211]Caused
> by: java.io.IOException: java.lang.RuntimeException: ORC split generation
> failed with exception: java.lang.StringIndexOutOfBoundsException: String
> index out of range: -1 at
> org.apache.hadoop.hive.ql.exec.FetchOperator.getNextRow(FetchOperator.java:638)
> ~[hive-exec-4.0.0-SNAPSHOT.jar:4.0.0-SNAPSHOT] at
> org.apache.hadoop.hive.ql.exec.FetchOperator.pushRow(FetchOperator.java:545)
> ~[hive-exec-4.0.0-SNAPSHOT.jar:4.0.0-SNAPSHOT] at
> org.apache.hadoop.hive.ql.exec.FetchTask.fetch(FetchTask.java:151)
> ~[hive-exec-4.0.0-SNAPSHOT.jar:4.0.0-SNAPSHOT] at
> org.apache.hadoop.hive.ql.Driver.getResults(Driver.java:2142)
> ~[hive-exec-4.0.0-SNAPSHOT.jar:4.0.0-SNAPSHOT] at
> org.apache.hadoop.hive.ql.reexec.ReExecDriver.getResults(ReExecDriver.java:241)
> ~[hive-exec-4.0.0-SNAPSHOT.jar:4.0.0-SNAPSHOT] at
> org.apache.hive.service.cli.operation.SQLOperation.getNextRowSet(SQLOperation.java:476)
> ~[hive-service-4.0.0-SNAPSHOT.jar:4.0.0-SNAPSHOT] ... 13 moreCaused by:
> java.lang.RuntimeException: ORC split generation failed with exception:
> java.lang.StringIndexOutOfBoundsException: String index out of range: -1 at
> org.apache.hadoop.hive.ql.io.orc.OrcInputFormat.generateSplitsInfo(OrcInputFormat.java:1929)
> ~[hive-exec-4.0.0-SNAPSHOT.jar:4.0.0-SNAPSHOT] at
> org.apache.hadoop.hive.ql.io.orc.OrcInputFormat.getSplits(OrcInputFormat.java:2016)
> ~[hive-exec-4.0.0-SNAPSHOT.jar:4.0.0-SNAPSHOT] at
> org.apache.hadoop.hive.ql.exec.FetchOperator.generateWrappedSplits(FetchOperator.java:461)
> ~[hive-exec-4.0.0-SNAPSHOT.jar:4.0.0-SNAPSHOT] at
> org.apache.hadoop.hive.ql.exec.FetchOperator.getNextSplits(FetchOperator.java:430)
> ~[hive-exec-4.0.0-SNAPSHOT.jar:4.0.0-SNAPSHOT] at
> org.apache.hadoop.hive.ql.exec.FetchOperator.getRecordReader(FetchOperator.java:336)
> ~[hive-exec-4.0.0-SNAPSHOT.jar:4.0.0-SNAPSHOT] at
> org.apache.hadoop.hive.ql.exec.FetchOperator.getNextRow(FetchOperator.java:576)
> ~[hive-exec-4.0.0-SNAPSHOT.jar:4.0.0-SNAPSHOT] at
> org.apache.hadoop.hive.ql.exec.FetchOperator.pushRow(FetchOperator.java:545)
> ~[hive-exec-4.0.0-SNAPSHOT.jar:4.0.0-SNAPSHOT] at
> org.apache.hadoop.hive.ql.exec.FetchTask.fetch(FetchTask.java:151)
> ~[hive-exec-4.0.0-SNAPSHOT.jar:4.0.0-SNAPSHOT] at
> org.apache.hadoop.hive.ql.Driver.getResults(Driver.java:2142)
> ~[hive-exec-4.0.0-SNAPSHOT.jar:4.0.0-SNAPSHOT] at
> org.apache.hadoop.hive.ql.reexec.ReExecDriver.getResults(ReExecDriver.java:241)
> ~[hive-exec-4.0.0-SNAPSHOT.jar:4.0.0-SNAPSHOT] at
> org.apache.hive.service.cli.operation.SQLOperation.getNextRowSet(SQLOperation.java:476)
> ~[hive-service-4.0.0-SNAPSHOT.jar:4.0.0-SNAPSHOT]
--
This message was sent by Atlassian Jira
(v8.3.4#803005)