From 23b2394dc719015407ade73b00fd5e8ea7e767fd Mon Sep 17 00:00:00 2001 From: Keith Turner Date: Mon, 2 Mar 2026 19:21:32 +0000 Subject: [PATCH 1/5] removes mutable list constant from DefaultKeySizeConstraint --- .../core/data/constraints/DefaultKeySizeConstraint.java | 4 +--- .../core/data/constraints/DefaultKeySizeConstraintTest.java | 3 ++- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/core/src/main/java/org/apache/accumulo/core/data/constraints/DefaultKeySizeConstraint.java b/core/src/main/java/org/apache/accumulo/core/data/constraints/DefaultKeySizeConstraint.java index 8f912dd48d1..8e79dab5235 100644 --- a/core/src/main/java/org/apache/accumulo/core/data/constraints/DefaultKeySizeConstraint.java +++ b/core/src/main/java/org/apache/accumulo/core/data/constraints/DefaultKeySizeConstraint.java @@ -52,14 +52,12 @@ public String getViolationDescription(short violationCode) { return null; } - static final List NO_VIOLATIONS = new ArrayList<>(); - @Override public List check(Environment env, Mutation mutation) { // fast size check if (mutation.numBytes() < maxSize) { - return NO_VIOLATIONS; + return null; } List violations = new ArrayList<>(); diff --git a/core/src/test/java/org/apache/accumulo/core/data/constraints/DefaultKeySizeConstraintTest.java b/core/src/test/java/org/apache/accumulo/core/data/constraints/DefaultKeySizeConstraintTest.java index 80624370c07..4ac0a533ab4 100644 --- a/core/src/test/java/org/apache/accumulo/core/data/constraints/DefaultKeySizeConstraintTest.java +++ b/core/src/test/java/org/apache/accumulo/core/data/constraints/DefaultKeySizeConstraintTest.java @@ -18,6 +18,7 @@ */ package org.apache.accumulo.core.data.constraints; +import static org.junit.Assert.assertNull; import static org.junit.jupiter.api.Assertions.assertEquals; import java.util.Collections; @@ -39,7 +40,7 @@ public void testConstraint() { // pass constraints Mutation m = new Mutation("rowId"); m.put("colf", "colq", new Value()); - assertEquals(Collections.emptyList(), constraint.check(null, m)); + assertNull(null, constraint.check(null, m)); // test with row id > 1mb m = new Mutation(oversized); From 4af2bd53e5e6e30bd33b2089b4687324ead4affd Mon Sep 17 00:00:00 2001 From: Keith Turner Date: Mon, 2 Mar 2026 19:27:53 +0000 Subject: [PATCH 2/5] fix test --- .../core/data/constraints/DefaultKeySizeConstraintTest.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/core/src/test/java/org/apache/accumulo/core/data/constraints/DefaultKeySizeConstraintTest.java b/core/src/test/java/org/apache/accumulo/core/data/constraints/DefaultKeySizeConstraintTest.java index 4ac0a533ab4..471d2add604 100644 --- a/core/src/test/java/org/apache/accumulo/core/data/constraints/DefaultKeySizeConstraintTest.java +++ b/core/src/test/java/org/apache/accumulo/core/data/constraints/DefaultKeySizeConstraintTest.java @@ -18,8 +18,8 @@ */ package org.apache.accumulo.core.data.constraints; -import static org.junit.Assert.assertNull; import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertNull; import java.util.Collections; @@ -40,7 +40,7 @@ public void testConstraint() { // pass constraints Mutation m = new Mutation("rowId"); m.put("colf", "colq", new Value()); - assertNull(null, constraint.check(null, m)); + assertNull(constraint.check(null, m)); // test with row id > 1mb m = new Mutation(oversized); From 2d13ad2b381c52d621c28740debed2d9399be3c4 Mon Sep 17 00:00:00 2001 From: Keith Turner Date: Tue, 3 Mar 2026 21:49:52 +0000 Subject: [PATCH 3/5] empty commit From b3e5f50490ff156baab726aa6bac305e67b857cd Mon Sep 17 00:00:00 2001 From: Keith Turner Date: Tue, 3 Mar 2026 22:11:10 +0000 Subject: [PATCH 4/5] fix test --- .../core/constraints/DeprecatedConstraintExtendTest.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/core/src/test/java/org/apache/accumulo/core/constraints/DeprecatedConstraintExtendTest.java b/core/src/test/java/org/apache/accumulo/core/constraints/DeprecatedConstraintExtendTest.java index e75bd160aac..66b04a32f3b 100644 --- a/core/src/test/java/org/apache/accumulo/core/constraints/DeprecatedConstraintExtendTest.java +++ b/core/src/test/java/org/apache/accumulo/core/constraints/DeprecatedConstraintExtendTest.java @@ -20,6 +20,7 @@ import static org.junit.jupiter.api.Assertions.assertEquals; +import java.util.ArrayList; import java.util.Collections; import java.util.List; @@ -92,10 +93,11 @@ private static class MinKeySizeConstraint extends DefaultKeySizeConstraint { @Override public List check(Constraint.Environment env, Mutation mutation) { List violations = super.check(env, mutation); - if (!violations.isEmpty()) { + if (violations != null && !violations.isEmpty()) { return violations; } + violations = new ArrayList<>(); for (ColumnUpdate cu : mutation.getUpdates()) { int size = mutation.getRow().length; size += cu.getColumnFamily().length; From 03b01fdaaa23f1c6ba0017989118c6627fcfff4b Mon Sep 17 00:00:00 2001 From: Keith Turner Date: Tue, 3 Mar 2026 23:25:25 +0000 Subject: [PATCH 5/5] fix another test --- .../core/constraints/DefaultKeySizeConstraintTest.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/core/src/test/java/org/apache/accumulo/core/constraints/DefaultKeySizeConstraintTest.java b/core/src/test/java/org/apache/accumulo/core/constraints/DefaultKeySizeConstraintTest.java index 1e094c465f0..c729d605ec8 100644 --- a/core/src/test/java/org/apache/accumulo/core/constraints/DefaultKeySizeConstraintTest.java +++ b/core/src/test/java/org/apache/accumulo/core/constraints/DefaultKeySizeConstraintTest.java @@ -19,6 +19,7 @@ package org.apache.accumulo.core.constraints; import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertNull; import java.util.Collections; @@ -41,7 +42,7 @@ public void testConstraint() { // pass constraints Mutation m = new Mutation("rowId"); m.put("colf", "colq", new Value()); - assertEquals(Collections.emptyList(), constraint.check(null, m)); + assertNull(constraint.check(null, m)); // test with row id > 1mb m = new Mutation(oversized);