This is an automated email from the ASF dual-hosted git repository.
kturner pushed a commit to branch 2.1
in repository https://gitbox.apache.org/repos/asf/accumulo.git
The following commit(s) were added to refs/heads/2.1 by this push:
new d5756e8f2d decrements total queued mutation size when update idles
(#5236)
d5756e8f2d is described below
commit d5756e8f2d39ed114794d5a695d2e09203ee57ae
Author: Keith Turner <[email protected]>
AuthorDate: Wed Jan 8 11:42:58 2025 -0500
decrements total queued mutation size when update idles (#5236)
fixes #5235
---
.../org/apache/accumulo/tserver/TabletClientHandler.java | 16 +++++++++++++++-
.../java/org/apache/accumulo/tserver/TabletServer.java | 7 ++++++-
2 files changed, 21 insertions(+), 2 deletions(-)
diff --git
a/server/tserver/src/main/java/org/apache/accumulo/tserver/TabletClientHandler.java
b/server/tserver/src/main/java/org/apache/accumulo/tserver/TabletClientHandler.java
index c6b3873902..7ef64352d9 100644
---
a/server/tserver/src/main/java/org/apache/accumulo/tserver/TabletClientHandler.java
+++
b/server/tserver/src/main/java/org/apache/accumulo/tserver/TabletClientHandler.java
@@ -258,7 +258,21 @@ public class TabletClientHandler implements
TabletClientService.Iface {
UpdateSession us =
new UpdateSession(new TservConstraintEnv(server.getContext(),
security, credentials),
- credentials, durability);
+ credentials, durability) {
+ @Override
+ public boolean cleanup() {
+ // This is called when a client abandons a session. When this
happens need to decrement
+ // any queued mutations.
+ if (queuedMutationSize > 0) {
+ log.trace(
+ "cleaning up abandoned update session, decrementing
totalQueuedMutationSize by {}",
+ queuedMutationSize);
+ server.updateTotalQueuedMutationSize(-queuedMutationSize);
+ queuedMutationSize = 0;
+ }
+ return true;
+ }
+ };
return server.sessionManager.createSession(us, false);
}
diff --git
a/server/tserver/src/main/java/org/apache/accumulo/tserver/TabletServer.java
b/server/tserver/src/main/java/org/apache/accumulo/tserver/TabletServer.java
index 3a3ad3f3b1..beb2e550a6 100644
--- a/server/tserver/src/main/java/org/apache/accumulo/tserver/TabletServer.java
+++ b/server/tserver/src/main/java/org/apache/accumulo/tserver/TabletServer.java
@@ -417,7 +417,12 @@ public class TabletServer extends AbstractServer
implements TabletHostingServer
}
public long updateTotalQueuedMutationSize(long additionalMutationSize) {
- return totalQueuedMutationSize.addAndGet(additionalMutationSize);
+ var newTotal = totalQueuedMutationSize.addAndGet(additionalMutationSize);
+ if (log.isTraceEnabled()) {
+ log.trace("totalQueuedMutationSize is now {} after adding {}", newTotal,
+ additionalMutationSize);
+ }
+ return newTotal;
}
@Override