diff --git a/jdbc/src/main/java/tech/ydb/jdbc/context/StreamQueryResult.java b/jdbc/src/main/java/tech/ydb/jdbc/context/StreamQueryResult.java index 49da5dde..c64a0983 100644 --- a/jdbc/src/main/java/tech/ydb/jdbc/context/StreamQueryResult.java +++ b/jdbc/src/main/java/tech/ydb/jdbc/context/StreamQueryResult.java @@ -148,17 +148,15 @@ private void closeResultSet(int index) throws SQLException { } } - private boolean isStreamStopped() { + private void checkStream() { if (!resultClosed) { - return false; + return; } if (!streamFuture.isDone() && streamCancelled.compareAndSet(false, true)) { LOGGER.log(Level.FINE, "Stream cancel"); stopRunnable.run(); } - - return true; } @Override @@ -311,10 +309,7 @@ public void cleanQueue() { public void addResultSet(ResultSetReader rsr) { try { do { - if (isStreamStopped()) { - close(); - return; - } + checkStream(); } while (!readers.offer(rsr, 100, TimeUnit.MILLISECONDS)); } catch (InterruptedException ex) { if (streamFuture.completeExceptionally(ex)) {