[
https://issues.apache.org/jira/browse/DRILL-6882?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16710744#comment-16710744
]
ASF GitHub Bot commented on DRILL-6882:
---------------------------------------
gparai commented on a change in pull request #1562: DRILL-6882: Handle the
cases where RowKeyJoin's left pipeline being called multiple times.
URL: https://github.com/apache/drill/pull/1562#discussion_r239278274
##########
File path:
exec/java-exec/src/main/java/org/apache/drill/exec/physical/impl/validate/IteratorValidatorBatchIterator.java
##########
@@ -257,7 +264,9 @@ public IterOutcome next() {
// NONE is allowed even without seeing a OK_NEW_SCHEMA. Such NONE is
called
// FAST NONE.
// NONE moves to terminal high-level state.
- validationState = ValidationState.TERMINAL;
+ if (!isRepeatable) {
Review comment:
Done
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
> Handle the cases where RowKeyJoin's left pipeline being called multiple times.
> ------------------------------------------------------------------------------
>
> Key: DRILL-6882
> URL: https://issues.apache.org/jira/browse/DRILL-6882
> Project: Apache Drill
> Issue Type: Bug
> Affects Versions: 1.15.0
> Reporter: Gautam Parai
> Assignee: Gautam Parai
> Priority: Blocker
> Fix For: 1.15.0
>
>
> RowKeyJoin operator's leftStream pipeline uses IterOutcome.NONE state to
> repeat the pipeline multiple times. This should be avoided as
> IterOutcome.NONE will assertion checks in validator. We ran into this issue
> when trying to fix DRILL-6878.
> Sample unit test failure from DRILL-6878
> select t1.id.ssn as ssn from hbase.`index_test_primary` t1,
> hbase.`index_test_primary` t2 where t1._id = t2.rowid and
> cast(t2.activity.irs.firstlogin as timestamp) = to_timestamp('2013-02-04
> 22:34:38.0', 'YYYY-MM-dd HH:mm:ss.S')
> at
> org.apache.drill.test.DrillTestWrapper.compareMergedOnHeapVectors(DrillTestWrapper.java:630)
> ~[drill-java-exec-1.15.0-SNAPSHOT-tests.jar:1.15.0-SNAPSHOT]
> at
> org.apache.drill.test.DrillTestWrapper.compareOrderedResults(DrillTestWrapper.java:584)
> ~[drill-java-exec-1.15.0-SNAPSHOT-tests.jar:1.15.0-SNAPSHOT]
> at org.apache.drill.test.DrillTestWrapper.run(DrillTestWrapper.java:157)
> ~[drill-java-exec-1.15.0-SNAPSHOT-tests.jar:1.15.0-SNAPSHOT]
> at org.apache.drill.test.TestBuilder.go(TestBuilder.java:139)
> ~[drill-java-exec-1.15.0-SNAPSHOT-tests.jar:1.15.0-SNAPSHOT]
> at
> com.mapr.drill.maprdb.tests.index.IndexPlanTest.testRowkeyJoinPushdown_7(IndexPlanTest.java:1828)
> ~[test-classes/:na]
> at java.lang.Thread.run(Thread.java:748) ~[na:1.8.0_141]
> Caused by: org.apache.drill.exec.rpc.RpcException:
> org.apache.drill.common.exceptions.UserRemoteException: SYSTEM ERROR:
> IllegalStateException: next() [on #851, ScanBatch] called again after it
> returned NONE. Caller should not have called next() again.
>
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)