This is an automated email from the ASF dual-hosted git repository.

dlmarion pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/accumulo.git


The following commit(s) were added to refs/heads/main by this push:
     new 6ce09f9b2f Remove TODOs from RootTabletMutatorImpl.java (#6494)
6ce09f9b2f is described below

commit 6ce09f9b2fb368251957400ed4e9f14e9cb67b3c
Author: Amanda Villarreal <[email protected]>
AuthorDate: Tue Aug 11 07:27:30 2026 -0500

    Remove TODOs from RootTabletMutatorImpl.java (#6494)
    
    Remove code that was clearing ZooCache before mutating
    the root tablet in ZooKeeper, but retained the code that
    was clearing the entry in ZooCache after mutating.
    Removed associated TODO comments.
---
 .../server/metadata/RootConditionalWriter.java     |  5 -----
 .../server/metadata/RootTabletMutatorImpl.java     | 23 ++++++++--------------
 2 files changed, 8 insertions(+), 20 deletions(-)

diff --git 
a/server/base/src/main/java/org/apache/accumulo/server/metadata/RootConditionalWriter.java
 
b/server/base/src/main/java/org/apache/accumulo/server/metadata/RootConditionalWriter.java
index fcc8b300f8..f214ee8090 100644
--- 
a/server/base/src/main/java/org/apache/accumulo/server/metadata/RootConditionalWriter.java
+++ 
b/server/base/src/main/java/org/apache/accumulo/server/metadata/RootConditionalWriter.java
@@ -89,8 +89,6 @@ public class RootConditionalWriter implements 
ConditionalWriter {
 
     ServerConditionalMutation scm = new ServerConditionalMutation(tcm);
 
-    context.getZooCache().clear(RootTable.ZROOT_TABLET);
-
     List<ServerConditionalMutation> okMutations = new ArrayList<>();
     List<TCMResult> results = new ArrayList<>();
 
@@ -129,10 +127,7 @@ public class RootConditionalWriter implements 
ConditionalWriter {
     } catch (Exception e) {
       throw new RuntimeException(e);
     }
-
-    // TODO this is racy...
     context.getZooCache().clear(RootTable.ZROOT_TABLET);
-
     return getResult(okMutations, results, mutation);
   }
 
diff --git 
a/server/base/src/main/java/org/apache/accumulo/server/metadata/RootTabletMutatorImpl.java
 
b/server/base/src/main/java/org/apache/accumulo/server/metadata/RootTabletMutatorImpl.java
index 5d65ed33dc..986f5d75f3 100644
--- 
a/server/base/src/main/java/org/apache/accumulo/server/metadata/RootTabletMutatorImpl.java
+++ 
b/server/base/src/main/java/org/apache/accumulo/server/metadata/RootTabletMutatorImpl.java
@@ -97,24 +97,17 @@ public class RootTabletMutatorImpl extends 
TabletMutatorBase<Ample.TabletMutator
     }
 
     try {
+      
context.getZooSession().asReaderWriter().mutateExisting(RootTable.ZROOT_TABLET, 
currVal -> {
+        String currJson = new String(currVal, UTF_8);
+        var rtm = new RootTabletMetadata(currJson);
+        rtm.update(mutation);
+        String newJson = rtm.toJson();
+        log.debug("mutation: from:[{}] to: [{}]", currJson, newJson);
+        return newJson.getBytes(UTF_8);
+      });
 
       context.getZooCache().clear(RootTable.ZROOT_TABLET);
 
-      // TODO examine implementation of getZooReaderWriter().mutate()
-      // TODO for efficiency this should maybe call mutateExisting
-      
context.getZooSession().asReaderWriter().mutateOrCreate(RootTable.ZROOT_TABLET, 
new byte[0],
-          currVal -> {
-            String currJson = new String(currVal, UTF_8);
-            var rtm = new RootTabletMetadata(currJson);
-            rtm.update(mutation);
-            String newJson = rtm.toJson();
-            log.debug("mutation: from:[{}] to: [{}]", currJson, newJson);
-            return newJson.getBytes(UTF_8);
-          });
-
-      // TODO this is racy...
-      context.getZooCache().clear(RootTable.ZROOT_TABLET);
-
       if (closeAfterMutate != null) {
         closeAfterMutate.close();
       }

Reply via email to