Github user laurentgo commented on a diff in the pull request: https://github.com/apache/drill/pull/1024#discussion_r149465309 --- Diff: exec/jdbc/src/main/java/org/apache/drill/jdbc/impl/DrillCursor.java --- @@ -239,6 +259,11 @@ QueryDataBatch getNext() throws UserException, InterruptedException { } return qdb; } + + // Check and throw SQLTimeoutException + if ( parent.timeoutInSeconds > 0 && parent.elapsedTimer.elapsed(TimeUnit.SECONDS) >= parent.timeoutInSeconds ) { --- End diff -- you don't really need a check after the pool: if it's not null, it means it completed before timeout and you can proceed forward. If it is null, then you would loop and redo the check based on the current time and might be able to throw a timeout exception
---