apache/seatunnel · warning
Interrupted while waiting for Kudu client executor to…
Error message
Interrupted while waiting for Kudu client executor to terminate.
What it means
KuduClientResource logs this warning when the thread waiting for the Kudu client's internal executor to shut down is interrupted during resource close. It responds by forcing executor shutdown via shutdownNow() and re-interrupting the current thread so upstream cancellation logic sees the interruption.
Solutions
- No action usually needed — the resource correctly shuts down and preserves the interrupt flag; treat as informational during cancellation.
- If seen unexpectedly, check why close() is blocking: ensure no in-flight Kudu operations keep the executor busy; call client.close() promptly after use.
- Avoid canceling/interrupting the thread that owns the client close; shut down jobs through the engine's normal cancel API.
- Upgrade the connector if repeated interruption leaves threads alive; verify executor termination with jstack/thread dumps.
Defensive patterns
Strategy: try-catch
Try / catch
try { awaitTermination(...) } catch (InterruptedException e) { executorService.shutdownNow(); Thread.currentThread().interrupt(); } Prevention
- Close Kudu clients promptly when no longer used
- Cancel jobs via the engine cancel API instead of raw thread interruption
- Avoid long-lived operations on the thread that owns client close
When it happens
Trigger: close() calls awaitExecutorTermination() which blocks on executorService.awaitTermination(); if the thread is interrupted while blocked (task cancellation, job teardown, process shutdown), the catch (InterruptedException) branch logs the message.
Common situations: Job cancellation while a Kudu sink/source is being closed; Zeta engine task-thread interruption during checkpoint failover; JVM shutdown hook racing resource cleanup.
Related errors
- Kudu client executor did not terminate gracefully, forcing…
- Kudu client executor did not terminate after forced…
- Already an MDCExecutor
- An exception occurred while obtaining the table
- Both channel and connection closing failed. Logging channel…
AI-assisted analysis of apache/seatunnel@cf67b549a7 (2026-09-10).
Data as JSON: /api/errors/c6085f92e0ff322e.
Report an issue: GitHub.
Appendix: source
Thrown at seatunnel-connectors-v2/connector-kudu/src/main/java/org/apache/seatunnel/connectors/seatunnel/kudu/kuduclient/KuduClientResource.java:79
private void awaitExecutorTermination() {
executorService.shutdown();
try {
if (executorService.awaitTermination(
GRACEFUL_SHUTDOWN_TIMEOUT_SECONDS, TimeUnit.SECONDS)) {
return;
}
log.warn("Kudu client executor did not terminate gracefully, forcing shutdown.");
executorService.shutdownNow();
if (!executorService.awaitTermination(
FORCED_SHUTDOWN_TIMEOUT_SECONDS, TimeUnit.SECONDS)) {
log.warn("Kudu client executor did not terminate after forced shutdown.");
}
} catch (InterruptedException e) {
executorService.shutdownNow();
Thread.currentThread().interrupt();
log.warn("Interrupted while waiting for Kudu client executor to terminate.", e);
}
}
}
View on GitHub (pinned to cf67b549a7)