diff options
author | Steven Phillips <sphillips@maprtech.com> | 2014-06-24 19:21:03 -0700 |
---|---|---|
committer | Jacques Nadeau <jacques@apache.org> | 2014-06-25 14:33:55 -0700 |
commit | 8a22910f2aa1ea933e122357f52e13b68801d2b6 (patch) | |
tree | 3d0b938faccc487e6deef35f175585496a0af81c /exec/jdbc | |
parent | 33c28f624df83bfc7195ad33877b3be7c963e0b5 (diff) |
DRILL-1073: Include intermediate fragments when initializing remainingFragmentCount
Ignore QueryState.COMPLETED messages in jdbc.
This was causing the Query Complete message to get sent before the query had actually completed.
Diffstat (limited to 'exec/jdbc')
-rw-r--r-- | exec/jdbc/src/main/java/org/apache/drill/jdbc/DrillResultSet.java | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/exec/jdbc/src/main/java/org/apache/drill/jdbc/DrillResultSet.java b/exec/jdbc/src/main/java/org/apache/drill/jdbc/DrillResultSet.java index 594e3ffa3..61fca6193 100644 --- a/exec/jdbc/src/main/java/org/apache/drill/jdbc/DrillResultSet.java +++ b/exec/jdbc/src/main/java/org/apache/drill/jdbc/DrillResultSet.java @@ -31,6 +31,7 @@ import net.hydromatic.avatica.AvaticaStatement; import org.apache.drill.exec.client.DrillClient; import org.apache.drill.exec.proto.UserBitShared.QueryId; +import org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState; import org.apache.drill.exec.proto.UserBitShared.QueryType; import org.apache.drill.exec.record.RecordBatchLoader; import org.apache.drill.exec.rpc.RpcException; @@ -129,6 +130,11 @@ public class DrillResultSet extends AvaticaResultSet { public void resultArrived(QueryResultBatch result, ConnectionThrottle throttle) { logger.debug("Result arrived {}", result); + if (result.getHeader().hasQueryState() && result.getHeader().getQueryState() == QueryState.COMPLETED && result.getHeader().getRowCount() == 0) { + result.release(); + return; + } + // if we're in a closed state, just release the message. if (closed) { result.release(); |