This is an automated email from the ASF dual-hosted git repository. dsmiley pushed a commit to branch branch_10x in repository https://gitbox.apache.org/repos/asf/solr.git
commit 302be104c53ee4243d8b13ff9ea5e298568a4f32 Author: David Smiley <[email protected]> AuthorDate: Tue Mar 17 20:17:42 2026 -0400 JettySolrRunner: catch TimeoutException from Jetty 12 graceful shutdown (#4220) Co-authored-by: Claude Opus 4.6 <[email protected]> --- .../src/java/org/apache/solr/embedded/JettySolrRunner.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/solr/test-framework/src/java/org/apache/solr/embedded/JettySolrRunner.java b/solr/test-framework/src/java/org/apache/solr/embedded/JettySolrRunner.java index e4224e44e6c..04c948b99c2 100644 --- a/solr/test-framework/src/java/org/apache/solr/embedded/JettySolrRunner.java +++ b/solr/test-framework/src/java/org/apache/solr/embedded/JettySolrRunner.java @@ -49,6 +49,7 @@ import java.util.Properties; import java.util.Random; import java.util.Set; import java.util.concurrent.TimeUnit; +import java.util.concurrent.TimeoutException; import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicLong; import org.apache.solr.client.solrj.SolrClient; @@ -676,7 +677,11 @@ public class JettySolrRunner { QueuedThreadPool qtp = (QueuedThreadPool) server.getThreadPool(); ReservedThreadExecutor rte = qtp.getBean(ReservedThreadExecutor.class); - server.stop(); + try { + server.stop(); + } catch (TimeoutException e) { + log.warn("Jetty server graceful stop timed out; proceeding with forceful cleanup", e); + } // stop timeout is 0, so we will interrupt right away while (!qtp.isStopped()) {
