diff --git a/plugin/trino-kudu/src/main/java/io/trino/plugin/kudu/KuduSplitManager.java b/plugin/trino-kudu/src/main/java/io/trino/plugin/kudu/KuduSplitManager.java index 0552eadff4e4..fbcc87a01ad0 100755 --- a/plugin/trino-kudu/src/main/java/io/trino/plugin/kudu/KuduSplitManager.java +++ b/plugin/trino-kudu/src/main/java/io/trino/plugin/kudu/KuduSplitManager.java @@ -123,6 +123,9 @@ public boolean isFinished() return splitSourceFuture.get().isFinished(); } catch (InterruptedException | ExecutionException e) { + if (e instanceof InterruptedException) { + Thread.currentThread().interrupt(); + } throw new RuntimeException(e); } } diff --git a/plugin/trino-pinot/src/main/java/io/trino/plugin/pinot/client/PinotLegacyDataFetcher.java b/plugin/trino-pinot/src/main/java/io/trino/plugin/pinot/client/PinotLegacyDataFetcher.java index c2166e6209b4..8ee8c534655b 100644 --- a/plugin/trino-pinot/src/main/java/io/trino/plugin/pinot/client/PinotLegacyDataFetcher.java +++ b/plugin/trino-pinot/src/main/java/io/trino/plugin/pinot/client/PinotLegacyDataFetcher.java @@ -246,6 +246,7 @@ public Iterator queryPinot(ConnectorSession session, Str return pinotDataTableWithSizeBuilder.build().iterator(); } catch (InterruptedException e) { + Thread.currentThread().interrupt(); throw new PinotException(PINOT_EXCEPTION, Optional.of(query), "Pinot query execution was interrupted", e); } } diff --git a/plugin/trino-raptor-legacy/src/main/java/io/trino/plugin/raptor/legacy/metadata/DatabaseShardManager.java b/plugin/trino-raptor-legacy/src/main/java/io/trino/plugin/raptor/legacy/metadata/DatabaseShardManager.java index 6d28312bbafd..8eec488bd1e3 100644 --- a/plugin/trino-raptor-legacy/src/main/java/io/trino/plugin/raptor/legacy/metadata/DatabaseShardManager.java +++ b/plugin/trino-raptor-legacy/src/main/java/io/trino/plugin/raptor/legacy/metadata/DatabaseShardManager.java @@ -375,6 +375,7 @@ private void runCommit(long transactionId, HandleConsumer callback SECONDS.sleep(multiplyExact(attempt, 2)); } catch (InterruptedException ie) { + Thread.currentThread().interrupt(); throw metadataError(ie); } } diff --git a/plugin/trino-raptor-legacy/src/main/java/io/trino/plugin/raptor/legacy/metadata/DatabaseShardRecorder.java b/plugin/trino-raptor-legacy/src/main/java/io/trino/plugin/raptor/legacy/metadata/DatabaseShardRecorder.java index 4a8f423fd805..2fa998d5948d 100644 --- a/plugin/trino-raptor-legacy/src/main/java/io/trino/plugin/raptor/legacy/metadata/DatabaseShardRecorder.java +++ b/plugin/trino-raptor-legacy/src/main/java/io/trino/plugin/raptor/legacy/metadata/DatabaseShardRecorder.java @@ -58,6 +58,7 @@ public void recordCreatedShard(long transactionId, UUID shardUuid) MILLISECONDS.sleep(millis + ThreadLocalRandom.current().nextLong(0, millis)); } catch (InterruptedException ie) { + Thread.currentThread().interrupt(); throw metadataError(ie); } }