Alexey Serbin created KUDU-2931:
-----------------------------------
Summary: RowIterator.hasNext might hang in certain scenarios
Key: KUDU-2931
URL: https://issues.apache.org/jira/browse/KUDU-2931
Project: Kudu
Issue Type: Bug
Components: client, java, spark
Affects Versions: 1.7.1, 1.7.0, 1.6.0, 1.5.0, 1.4.0, 1.3.1, 1.3.0
Reporter: Alexey Serbin
It seems the following code might lead to calling {{KuduScanner.nextRows()}}
again after it has returned {{null}} already in case of the underlying scanner
had expired and closed by tablet server serving the request:
https://github.com/apache/kudu/blob/737930f3cd0c0caba3c36944f91058ffaead4714/java/kudu-spark/src/main/scala/org/apache/kudu/spark/kudu/KuduRDD.scala#L88-L91
However, calling {{Kudu.nextRows()}} after it returned {{null}} might lead to
undefined behavior:
https://github.com/apache/kudu/blob/737930f3cd0c0caba3c36944f91058ffaead4714/java/kudu-client/src/main/java/org/apache/kudu/client/KuduScanner.java#L48-L59
Starting Kudu 1.8, the auto-keepalive provision makes the described issue less
likely to manifest itself:
https://github.com/apache/kudu/commit/cf1b1f42cbcc3ee67477ddc44cd0ff5070f1caac
--
This message was sent by Atlassian Jira
(v8.3.2#803003)