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

dlmarion 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 5e1e4be6a2 Fix NPE in Compactor.updateCompactionFailed (#6009)
5e1e4be6a2 is described below

commit 5e1e4be6a2763bf72b24bbe46f67d58a89729efe
Author: Dave Marion <[email protected]>
AuthorDate: Mon Dec 15 09:55:34 2025 -0500

    Fix NPE in Compactor.updateCompactionFailed (#6009)
---
 .../src/main/java/org/apache/accumulo/compactor/Compactor.java      | 6 +++---
 .../src/test/java/org/apache/accumulo/compactor/CompactorTest.java  | 2 +-
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git 
a/server/compactor/src/main/java/org/apache/accumulo/compactor/Compactor.java 
b/server/compactor/src/main/java/org/apache/accumulo/compactor/Compactor.java
index a317525b50..65432852be 100644
--- 
a/server/compactor/src/main/java/org/apache/accumulo/compactor/Compactor.java
+++ 
b/server/compactor/src/main/java/org/apache/accumulo/compactor/Compactor.java
@@ -487,14 +487,14 @@ public class Compactor extends AbstractServer
    * @param exception cause of failure
    * @throws RetriesExceededException thrown when retries have been exceeded
    */
-  protected void updateCompactionFailed(TExternalCompactionJob job, Throwable 
exception)
+  protected void updateCompactionFailed(TExternalCompactionJob job, String 
exception)
       throws RetriesExceededException {
     RetryableThriftCall<String> thriftCall =
         new RetryableThriftCall<>(1000, RetryableThriftCall.MAX_WAIT_TIME, 25, 
() -> {
           Client coordinatorClient = getCoordinatorClient();
           try {
             coordinatorClient.compactionFailed(TraceUtil.traceInfo(), 
getContext().rpcCreds(),
-                job.getExternalCompactionId(), job.extent, 
exception.getClass().getName());
+                job.getExternalCompactionId(), job.extent, exception);
             return "";
           } finally {
             ThriftUtil.returnClient(coordinatorClient, getContext());
@@ -959,7 +959,7 @@ public class Compactor extends AbstractServer
                     TCompactionState.FAILED, "Compaction failed due to: " + 
err.get().getMessage(),
                     -1, -1, -1, fcr.getCompactionAge().toNanos());
                 updateCompactionState(job, update);
-                updateCompactionFailed(job, err.get());
+                updateCompactionFailed(job, err.get().getClass().getName());
                 failed.incrementAndGet();
                 errorHistory.addError(fromThriftExtent.tableId(), err.get());
               } catch (RetriesExceededException e) {
diff --git 
a/server/compactor/src/test/java/org/apache/accumulo/compactor/CompactorTest.java
 
b/server/compactor/src/test/java/org/apache/accumulo/compactor/CompactorTest.java
index 228b6911a5..c3f92f8fb5 100644
--- 
a/server/compactor/src/test/java/org/apache/accumulo/compactor/CompactorTest.java
+++ 
b/server/compactor/src/test/java/org/apache/accumulo/compactor/CompactorTest.java
@@ -272,7 +272,7 @@ public class CompactorTest {
     }
 
     @Override
-    protected void updateCompactionFailed(TExternalCompactionJob job, 
Throwable exception)
+    protected void updateCompactionFailed(TExternalCompactionJob job, String 
exception)
         throws RetriesExceededException {
       failedCalled = true;
     }

Reply via email to