Aditya Shah created HIVE-22582: ---------------------------------- Summary: Avoid reading table as ACID when table name is starting with "delta" , but table is not transactional and BI Split Strategy is used Key: HIVE-22582 URL: https://issues.apache.org/jira/browse/HIVE-22582 Project: Hive Issue Type: Bug Reporter: Aditya Shah
The issue is fixed in HIVE-22473 but missed a check for BI Split Strategy. Steps to reproduce: {code:java} set hive.exec.orc.split.strategy=BI; create table delta_result (a int) stored as orc tblproperties('transactional'='false'); insert into delta_result select 1; select * from delta_result; {code} Exception Stack Trace: {code:java} Caused by: java.lang.RuntimeException: ORC split generation failed with exception: String index out of range: -1 at org.apache.hadoop.hive.ql.io.orc.OrcInputFormat.generateSplitsInfo(OrcInputFormat.java:1929) at org.apache.hadoop.hive.ql.io.orc.OrcInputFormat.getSplits(OrcInputFormat.java:2016) at org.apache.hadoop.hive.ql.exec.FetchOperator.generateWrappedSplits(FetchOperator.java:461) at org.apache.hadoop.hive.ql.exec.FetchOperator.getNextSplits(FetchOperator.java:430) at org.apache.hadoop.hive.ql.exec.FetchOperator.getRecordReader(FetchOperator.java:336) at org.apache.hadoop.hive.ql.exec.FetchOperator.getNextRow(FetchOperator.java:576) ... 50 more Caused by: java.lang.StringIndexOutOfBoundsException: String index out of range: -1 at java.lang.String.substring(String.java:1967) at org.apache.hadoop.hive.ql.io.AcidUtils.parsedDelta(AcidUtils.java:1128) at org.apache.hadoop.hive.ql.io.AcidUtils$ParsedDeltaLight.parse(AcidUtils.java:921) at org.apache.hadoop.hive.ql.io.AcidUtils.getLogicalLength(AcidUtils.java:2084) at org.apache.hadoop.hive.ql.io.orc.OrcInputFormat$BISplitStrategy.getSplits(OrcInputFormat.java:1115) at org.apache.hadoop.hive.ql.io.orc.OrcInputFormat.generateSplitsInfo(OrcInputFormat.java:1905) ... 55 more {code} -- This message was sent by Atlassian Jira (v8.3.4#803005)