From 21eceac3831d6df4220732e3322bab5519d74193 Mon Sep 17 00:00:00 2001 From: Keith Turner Date: Wed, 18 Feb 2026 22:09:00 +0000 Subject: [PATCH 1/2] avoids creating lots of site config on startup --- .../accumulo/server/util/ServerKeywordExecutable.java | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/server/base/src/main/java/org/apache/accumulo/server/util/ServerKeywordExecutable.java b/server/base/src/main/java/org/apache/accumulo/server/util/ServerKeywordExecutable.java index 0c406f24e0c..da07039abac 100644 --- a/server/base/src/main/java/org/apache/accumulo/server/util/ServerKeywordExecutable.java +++ b/server/base/src/main/java/org/apache/accumulo/server/util/ServerKeywordExecutable.java @@ -31,14 +31,17 @@ public abstract class ServerKeywordExecutable extends BaseKeywordExecutable { - private final ServerContext context; + private ServerContext context; public ServerKeywordExecutable(OPTS options) { super(options); - context = new ServerContext(SiteConfiguration.auto()); } - public ServerContext getServerContext() { + public synchronized ServerContext getServerContext() { + if(context == null){ + context = new ServerContext(SiteConfiguration.auto()); + } + if (context.isClosed()) { throw new IllegalStateException( "Cannot use context after execute method has completed. Context is closed."); From a7d090eff472446a6e263ff5658c08c320405769 Mon Sep 17 00:00:00 2001 From: Keith Turner Date: Wed, 18 Feb 2026 22:16:20 +0000 Subject: [PATCH 2/2] format code --- .../apache/accumulo/server/util/ServerKeywordExecutable.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/server/base/src/main/java/org/apache/accumulo/server/util/ServerKeywordExecutable.java b/server/base/src/main/java/org/apache/accumulo/server/util/ServerKeywordExecutable.java index da07039abac..04251f250df 100644 --- a/server/base/src/main/java/org/apache/accumulo/server/util/ServerKeywordExecutable.java +++ b/server/base/src/main/java/org/apache/accumulo/server/util/ServerKeywordExecutable.java @@ -38,7 +38,7 @@ public ServerKeywordExecutable(OPTS options) { } public synchronized ServerContext getServerContext() { - if(context == null){ + if (context == null) { context = new ServerContext(SiteConfiguration.auto()); }