[ 
https://issues.apache.org/jira/browse/HIVE-22092?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

mahesh kumar behera updated HIVE-22092:
---------------------------------------
    Description: 
The fetch task is created during query compilation with the config of the 
driver. That config will have the valid txn list set. Thus the fetch task will 
have valid txn list set while doing fetch for ACID tables. But when user does a 
refetch with cusrsor set to first position it reinitializes the fetch task with 
the driver config (cached in task config). But by that time, the select query 
would have cleaned up the valid txn list from the config and the fetch will 
happen with valid txn list as null. This will cause illegal argument exception.

 
Caused by: java.lang.IllegalArgumentException: No ValidTxnList fo
 at org.apache.hadoop.hive.ql.io.AcidUtils.isDirUsable(AcidUtils.java:1418) 
~[data_analytics_studio-webapp-1.3.1.1.3.1.0-12.jar:?]
 at org.apache.hadoop.hive.ql.io.AcidUtils.getChildState(AcidUtils.java:1393) 
~[data_analytics_studio-webapp-1.3.1.1.3.1.0-12.jar:?]
 at org.apache.hadoop.hive.ql.io.AcidUtils.getAcidState(AcidUtils.java:1205) 
~[data_analytics_studio-webapp-1.3.1.1.3.1.0-12.jar:?]
 at 
org.apache.hadoop.hive.ql.io.HiveInputFormat.processForWriteIds(HiveInputFormat.java:633)
 ~[data_analytics_studio-webapp-1.3.1.1.3.1.0-12.jar:?]
 at 
org.apache.hadoop.hive.ql.io.HiveInputFormat.processPathsForMmRead(HiveInputFormat.java:597)
 ~[data_analytics_studio-webapp-1.3.1.1.3.1.0-12.jar:?]
 at 
org.apache.hadoop.hive.ql.exec.FetchOperator.processCurrPathForMmWriteIds(FetchOperator.java:469)
 ~[data_analytics_studio-webapp-1.3.1.1.3.1.0-12.jar:?]
 at 
org.apache.hadoop.hive.ql.exec.FetchOperator.getNextSplits(FetchOperator.java:396)
 ~[data_analytics_studio-webapp-1.3.1.1.3.1.0-12.jar:?]
 at 
org.apache.hadoop.hive.ql.exec.FetchOperator.getRecordReader(FetchOperator.java:322)
 ~[data_analytics_studio-webapp-1.3.1.1.3.1.0-12.jar:?]
 at 
org.apache.hadoop.hive.ql.exec.FetchOperator.getNextRow(FetchOperator.java:563) 
~[data_analytics_studio-webapp-1.3.1.1.3.1.0-12.jar:?]
 at 
org.apache.hadoop.hive.ql.exec.FetchOperator.pushRow(FetchOperator.java:532) 
~[data_analytics_studio-webapp-1.3.1.1.3.1.0-12.jar:?]
 at org.apache.hadoop.hive.ql.exec.FetchTask.fetch(FetchTask.java:146) 
~[data_analytics_studio-webapp-1.3.1.1.3.1.0-12.jar:?]
 at org.apache.hadoop.hive.ql.Driver.getResults(Driver.java:2362) 
~[data_analytics_studio-webapp-1.3.1.1.3.1.0-12.jar:?]
 at 
org.apache.hadoop.hive.ql.reexec.ReExecDriver.getResults(ReExecDriver.java:229) 
~[data_analytics_studio-webapp-1.3.1.1.3.1.0-12.jar:?]
 at 
org.apache.hive.service.cli.operation.SQLOperation.getNextRowSet(SQLOperation.java:473)
 ~[data_analytics_studio-webapp-1.3.1.1.3.1.0-12.jar:?]
 at 
org.apache.hive.service.cli.operation.OperationManager.getOperationNextRowSet(OperationManager.java:328)
 ~[data_analytics_studio-webapp-1.3.1.1.3.1.0-12.jar:?]
 at 
org.apache.hive.service.cli.session.HiveSessionImpl.fetchResults(HiveSessionImpl.java:952)
 ~[data_analytics_studio-webapp-1.3.1.1.3.1.0-12.jar:?]
 at org.apache.hive.service.cli.CLIService.fetchResults(CLIService.java:565) 
~[data_analytics_studio-webapp-1.3.1.1.3.1.0-12.jar:?]
 at 
org.apache.hive.service.cli.thrift.ThriftCLIService.FetchResults(ThriftCLIService.java:792)
 ~[data_analytics_studio-webapp-1.3.1.1.3.1.0-12.jar:?]
 at 
org.apache.hive.service.rpc.thrift.TCLIService$Processor$FetchResults.getResult(TCLIService.java:1837)
 ~[data_analytics_studio-webapp-1.3.1.1.3.1.0-12.jar:?]
 at 
org.apache.hive.service.rpc.thrift.TCLIService$Processor$FetchResults.getResult(TCLIService.java:1822)
 ~[data_analytics_studio-webapp-1.3.1.1.3.1.0-12.jar:?]

  was:The fetch task is created during query compilation with the config of the 
driver. That config will have the valid txn list set. Thus the fetch task will 
have valid txn list set while doing fetch for ACID tables. But when user does a 
refetch with cusrsor set to first position it reinitializes the fetch task with 
the driver config (cached in task config). But by that time, the select query 
would have cleaned up the valid txn list from the config and the fetch will 
happen with valid txn list as null. This will cause illegal argument exception.


> Fetch is failing with IllegalArgumentException: No ValidTxnList when refetch 
> is done
> ------------------------------------------------------------------------------------
>
>                 Key: HIVE-22092
>                 URL: https://issues.apache.org/jira/browse/HIVE-22092
>             Project: Hive
>          Issue Type: Bug
>            Reporter: mahesh kumar behera
>            Assignee: mahesh kumar behera
>            Priority: Major
>
> The fetch task is created during query compilation with the config of the 
> driver. That config will have the valid txn list set. Thus the fetch task 
> will have valid txn list set while doing fetch for ACID tables. But when user 
> does a refetch with cusrsor set to first position it reinitializes the fetch 
> task with the driver config (cached in task config). But by that time, the 
> select query would have cleaned up the valid txn list from the config and the 
> fetch will happen with valid txn list as null. This will cause illegal 
> argument exception.
>  
> Caused by: java.lang.IllegalArgumentException: No ValidTxnList fo
>  at org.apache.hadoop.hive.ql.io.AcidUtils.isDirUsable(AcidUtils.java:1418) 
> ~[data_analytics_studio-webapp-1.3.1.1.3.1.0-12.jar:?]
>  at org.apache.hadoop.hive.ql.io.AcidUtils.getChildState(AcidUtils.java:1393) 
> ~[data_analytics_studio-webapp-1.3.1.1.3.1.0-12.jar:?]
>  at org.apache.hadoop.hive.ql.io.AcidUtils.getAcidState(AcidUtils.java:1205) 
> ~[data_analytics_studio-webapp-1.3.1.1.3.1.0-12.jar:?]
>  at 
> org.apache.hadoop.hive.ql.io.HiveInputFormat.processForWriteIds(HiveInputFormat.java:633)
>  ~[data_analytics_studio-webapp-1.3.1.1.3.1.0-12.jar:?]
>  at 
> org.apache.hadoop.hive.ql.io.HiveInputFormat.processPathsForMmRead(HiveInputFormat.java:597)
>  ~[data_analytics_studio-webapp-1.3.1.1.3.1.0-12.jar:?]
>  at 
> org.apache.hadoop.hive.ql.exec.FetchOperator.processCurrPathForMmWriteIds(FetchOperator.java:469)
>  ~[data_analytics_studio-webapp-1.3.1.1.3.1.0-12.jar:?]
>  at 
> org.apache.hadoop.hive.ql.exec.FetchOperator.getNextSplits(FetchOperator.java:396)
>  ~[data_analytics_studio-webapp-1.3.1.1.3.1.0-12.jar:?]
>  at 
> org.apache.hadoop.hive.ql.exec.FetchOperator.getRecordReader(FetchOperator.java:322)
>  ~[data_analytics_studio-webapp-1.3.1.1.3.1.0-12.jar:?]
>  at 
> org.apache.hadoop.hive.ql.exec.FetchOperator.getNextRow(FetchOperator.java:563)
>  ~[data_analytics_studio-webapp-1.3.1.1.3.1.0-12.jar:?]
>  at 
> org.apache.hadoop.hive.ql.exec.FetchOperator.pushRow(FetchOperator.java:532) 
> ~[data_analytics_studio-webapp-1.3.1.1.3.1.0-12.jar:?]
>  at org.apache.hadoop.hive.ql.exec.FetchTask.fetch(FetchTask.java:146) 
> ~[data_analytics_studio-webapp-1.3.1.1.3.1.0-12.jar:?]
>  at org.apache.hadoop.hive.ql.Driver.getResults(Driver.java:2362) 
> ~[data_analytics_studio-webapp-1.3.1.1.3.1.0-12.jar:?]
>  at 
> org.apache.hadoop.hive.ql.reexec.ReExecDriver.getResults(ReExecDriver.java:229)
>  ~[data_analytics_studio-webapp-1.3.1.1.3.1.0-12.jar:?]
>  at 
> org.apache.hive.service.cli.operation.SQLOperation.getNextRowSet(SQLOperation.java:473)
>  ~[data_analytics_studio-webapp-1.3.1.1.3.1.0-12.jar:?]
>  at 
> org.apache.hive.service.cli.operation.OperationManager.getOperationNextRowSet(OperationManager.java:328)
>  ~[data_analytics_studio-webapp-1.3.1.1.3.1.0-12.jar:?]
>  at 
> org.apache.hive.service.cli.session.HiveSessionImpl.fetchResults(HiveSessionImpl.java:952)
>  ~[data_analytics_studio-webapp-1.3.1.1.3.1.0-12.jar:?]
>  at org.apache.hive.service.cli.CLIService.fetchResults(CLIService.java:565) 
> ~[data_analytics_studio-webapp-1.3.1.1.3.1.0-12.jar:?]
>  at 
> org.apache.hive.service.cli.thrift.ThriftCLIService.FetchResults(ThriftCLIService.java:792)
>  ~[data_analytics_studio-webapp-1.3.1.1.3.1.0-12.jar:?]
>  at 
> org.apache.hive.service.rpc.thrift.TCLIService$Processor$FetchResults.getResult(TCLIService.java:1837)
>  ~[data_analytics_studio-webapp-1.3.1.1.3.1.0-12.jar:?]
>  at 
> org.apache.hive.service.rpc.thrift.TCLIService$Processor$FetchResults.getResult(TCLIService.java:1822)
>  ~[data_analytics_studio-webapp-1.3.1.1.3.1.0-12.jar:?]



--
This message was sent by Atlassian JIRA
(v7.6.14#76016)

Reply via email to