This is an automated email from the ASF dual-hosted git repository.
squah-confluent pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/kafka.git
The following commit(s) were added to refs/heads/trunk by this push:
new 2ed663e65c2 MINOR: some code cleanup (#22288)
2ed663e65c2 is described below
commit 2ed663e65c276ad9634fb80133e6d9fe03e12bd2
Author: Matthias J. Sax <[email protected]>
AuthorDate: Mon May 18 02:47:43 2026 -0700
MINOR: some code cleanup (#22288)
Follow up to https://github.com/apache/kafka/pull/21737
Reviewers: Sean Quah <[email protected]>
---
build.gradle | 6 +++
.../kafka/coordinator/group/GroupConfigTest.java | 2 +-
.../group/GroupMetadataManagerTest.java | 6 ++-
.../kafka/tools/ConfigCommandIntegrationTest.java | 45 ++++++++++++----------
4 files changed, 37 insertions(+), 22 deletions(-)
diff --git a/build.gradle b/build.gradle
index 715fe2f4163..f302df7aea4 100644
--- a/build.gradle
+++ b/build.gradle
@@ -2626,6 +2626,12 @@ project(':tools') {
configurations {
releaseOnly
+ // ApacheDS 2.0.0-M24 pulls in the stale bcprov-jdk15on:1.56, which ships
the same
+ // RosstandartObjectIdentifiers class as the modern bcprov-jdk18on we
already depend on
+ // but is missing fields referenced by bcpkix-jdk18on:1.84. When
IntelliJ's test runner
+ // orders the old JAR first, BC provider registration fails with
NoSuchFieldError. Drop it.
+ testCompileClasspath.exclude group: 'org.bouncycastle', module:
'bcprov-jdk15on'
+ testRuntimeClasspath.exclude group: 'org.bouncycastle', module:
'bcprov-jdk15on'
}
dependencies {
diff --git
a/group-coordinator/src/test/java/org/apache/kafka/coordinator/group/GroupConfigTest.java
b/group-coordinator/src/test/java/org/apache/kafka/coordinator/group/GroupConfigTest.java
index e5c69e71adb..7c3549cc1ab 100644
---
a/group-coordinator/src/test/java/org/apache/kafka/coordinator/group/GroupConfigTest.java
+++
b/group-coordinator/src/test/java/org/apache/kafka/coordinator/group/GroupConfigTest.java
@@ -731,7 +731,7 @@ public class GroupConfigTest {
/**
* Data source for configs with min-only evaluation (no max bound enforced
by evaluate).
- * Each entry: (configKey, tooLow, expectedMax).
+ * Each entry: (configKey, tooLow, expectedMin).
*/
private static Stream<Arguments> minBoundedConfigs() {
return Stream.of(
diff --git
a/group-coordinator/src/test/java/org/apache/kafka/coordinator/group/GroupMetadataManagerTest.java
b/group-coordinator/src/test/java/org/apache/kafka/coordinator/group/GroupMetadataManagerTest.java
index a9a39133521..d208e09760b 100644
---
a/group-coordinator/src/test/java/org/apache/kafka/coordinator/group/GroupMetadataManagerTest.java
+++
b/group-coordinator/src/test/java/org/apache/kafka/coordinator/group/GroupMetadataManagerTest.java
@@ -21686,6 +21686,8 @@ public class GroupMetadataManagerTest {
"num.standby.replicas",
String.valueOf(GroupCoordinatorConfig.STREAMS_GROUP_NUM_STANDBY_REPLICAS_DEFAULT)
),
assignor.lastPassedAssignmentConfigs());
+
assertEquals(GroupCoordinatorConfig.STREAMS_GROUP_TASK_OFFSET_INTERVAL_MS_DEFAULT,
+ result.response().data().taskOffsetIntervalMs());
// Advance time.
assertEquals(
List.of(),
@@ -21695,7 +21697,7 @@ public class GroupMetadataManagerTest {
// Dynamic update group config with out-of-range values.
// Session timeout 70000 exceeds max 60000; heartbeat interval 1 is
below min 5000;
// num standby replicas 100 exceeds max 2.
- // task offset interval 100 exceeds min 15000.
+ // task offset interval 100 is below min 15000.
Properties newGroupConfig = new Properties();
newGroupConfig.put(STREAMS_SESSION_TIMEOUT_MS_CONFIG, 70000);
newGroupConfig.put(STREAMS_HEARTBEAT_INTERVAL_MS_CONFIG, 1);
@@ -21726,6 +21728,8 @@ public class GroupMetadataManagerTest {
"num.standby.replicas",
String.valueOf(GroupCoordinatorConfig.STREAMS_GROUP_MAX_STANDBY_REPLICAS_DEFAULT)
),
assignor.lastPassedAssignmentConfigs());
+
assertEquals(GroupCoordinatorConfig.STREAMS_GROUP_MIN_TASK_OFFSET_INTERVAL_MS_DEFAULT,
+ result.response().data().taskOffsetIntervalMs());
}
@Test
diff --git
a/tools/src/test/java/org/apache/kafka/tools/ConfigCommandIntegrationTest.java
b/tools/src/test/java/org/apache/kafka/tools/ConfigCommandIntegrationTest.java
index 3ff74fc3d2e..85a718c139f 100644
---
a/tools/src/test/java/org/apache/kafka/tools/ConfigCommandIntegrationTest.java
+++
b/tools/src/test/java/org/apache/kafka/tools/ConfigCommandIntegrationTest.java
@@ -367,7 +367,7 @@ public class ConfigCommandIntegrationTest {
}
@ClusterTest
- public void testAlterStreamsGroupNumOfStandbyReplicas() {
+ public void testAlterStreamsGroupNumOfStandbyReplicas() throws Exception {
// Verify the initial config
Stream<String> command = Stream.concat(quorumArgs(), Stream.of(
"--entity-type", "groups",
@@ -385,14 +385,16 @@ public class ConfigCommandIntegrationTest {
assertEquals("Completed updating config for group group.", message);
// Verify the updated config
- command = Stream.concat(quorumArgs(), Stream.of(
- "--entity-type", "groups",
- "--entity-name", "group",
- "--describe"));
- message = captureStandardOut(run(command));
- assertTrue(message.contains("streams.num.standby.replicas=1"));
+ TestUtils.waitForCondition(() -> {
+ final Stream<String> cmd = Stream.concat(quorumArgs(), Stream.of(
+ "--entity-type", "groups",
+ "--entity-name", "group",
+ "--describe"));
+
+ return
captureStandardOut(run(cmd)).contains("streams.num.standby.replicas=1");
+ }, "Expected streams.num.standby.replicas=1 for group group");
- // Should fail to set above max timeout
+ // Should fail to set above max standby replicas
command = Stream.concat(quorumArgs(), Stream.of(
"--entity-type", "groups",
"--entity-name", "group",
@@ -402,7 +404,7 @@ public class ConfigCommandIntegrationTest {
}
@ClusterTest
- public void testAlterStreamsGroupTaskOffsetInterval() {
+ public void testAlterStreamsGroupTaskOffsetInterval() throws Exception {
// Verify the initial config
Stream<String> command = Stream.concat(quorumArgs(), Stream.of(
"--entity-type", "groups",
@@ -420,11 +422,12 @@ public class ConfigCommandIntegrationTest {
assertEquals("Completed updating config for group group.", message);
// Verify the updated config
- command = Stream.concat(quorumArgs(), Stream.of(
- "--entity-type", "groups",
- "--describe"));
- message = captureStandardOut(run(command));
- assertTrue(message.contains("streams.task.offset.interval.ms=45000"));
+ TestUtils.waitForCondition(() -> {
+ final Stream<String> cmd = Stream.concat(quorumArgs(), Stream.of(
+ "--entity-type", "groups",
+ "--describe"));
+ return
captureStandardOut(run(cmd)).contains("streams.task.offset.interval.ms=45000");
+ }, "Expected streams.task.offset.interval.ms=45000 for group group");
// Should fail to set below min interval
command = Stream.concat(quorumArgs(), Stream.of(
@@ -437,7 +440,7 @@ public class ConfigCommandIntegrationTest {
}
@ClusterTest
- public void testAlterStreamsGroupNumWarmupReplicas() {
+ public void testAlterStreamsGroupNumWarmupReplicas() throws Exception {
// Verify the initial config
Stream<String> command = Stream.concat(quorumArgs(), Stream.of(
"--entity-type", "groups",
@@ -455,11 +458,13 @@ public class ConfigCommandIntegrationTest {
assertEquals("Completed updating config for group group.", message);
// Verify the updated config
- command = Stream.concat(quorumArgs(), Stream.of(
- "--entity-type", "groups",
- "--describe"));
- message = captureStandardOut(run(command));
- assertTrue(message.contains("streams.num.warmup.replicas=5"));
+ TestUtils.waitForCondition(() -> {
+ final Stream<String> cmd = Stream.concat(quorumArgs(), Stream.of(
+ "--entity-type", "groups",
+ "--describe"));
+
+ return
captureStandardOut(run(cmd)).contains("streams.num.warmup.replicas=5");
+ }, "Expected streams.num.warmup.replicas=5 for group group");
// Should fail to set above max
command = Stream.concat(quorumArgs(), Stream.of(