Productized org.apache.kafka:kafka-streams is causing side-effects
This was notice in Quckstarts run with RHBQ 3.8.6 CR2, TopologyProducerTest from kafka-streams-quickstart is failing because of NoSuchMethodError - https://main-jenkins-csb-quarkusqe.apps.ocp-c1.prod.psi.redhat.com/job/rhbq-3.8-rhel8-jdk17-quickstarts-ts-jvm/11/testReport/junit/org.acme.kafka.streams.aggregator.streams/TopologyProducerTest/test/
Run with upstream 3.8.6 works without problems
mvn clean verify -pl kafka-streams-quickstart/aggregator
Run with RHBQ 3.8.6 CR2 bits ends with the failure
mvn clean verify -pl kafka-streams-quickstart/aggregator -Dquarkus-plugin.version=3.8.6.redhat-00004 -Dquarkus.platform.version=3.8.6.redhat-00004 -Dmaven.repo.local=/home/hudson/quarkus-quickstarts/rh-quarkus-platform-3.8.6.GA-maven-repository/maven-repository/ -Dquarkus.platform.artifact-id=quarkus-bom -Dquarkus.platform.group-id=com.redhat.quarkus.platform
Test is passing again when I force community version of org.apache.kafka:kafka-streams by this into the kafka-streams-quickstart/aggregator/pom.xml
<dependency> <groupId>org.apache.kafka</groupId> <artifactId>kafka-streams</artifactId> <version>3.7.0</version> </dependency>
Stacktrace of the failure:
java.lang.NoSuchMethodError: 'void org.apache.kafka.streams.processor.internals.GlobalStateUpdateTask.<init>(org.apache.kafka.common.utils.LogContext, org.apache.kafka.streams.processor.internals.ProcessorTopology, org.apache.kafka.streams.processor.internals.InternalProcessorContext, org.apache.kafka.streams.processor.internals.GlobalStateManager, org.apache.kafka.streams.errors.DeserializationExceptionHandler)' at org.apache.kafka.streams.TopologyTestDriver.setupGlobalTask(TopologyTestDriver.java:457) at org.apache.kafka.streams.TopologyTestDriver.<init>(TopologyTestDriver.java:372) at org.apache.kafka.streams.TopologyTestDriver.<init>(TopologyTestDriver.java:300) at org.apache.kafka.streams.TopologyTestDriver.<init>(TopologyTestDriver.java:276) at org.acme.kafka.streams.aggregator.streams.TopologyProducerTest.setUp(TopologyProducerTest.java:55) at java.base/java.lang.reflect.Method.invoke(Method.java:569) at io.quarkus.test.junit.QuarkusTestExtension.runExtensionMethod(QuarkusTestExtension.java:1013) at io.quarkus.test.junit.QuarkusTestExtension.interceptBeforeEachMethod(QuarkusTestExtension.java:808) at java.base/java.util.ArrayList.forEach(ArrayList.java:1511) at java.base/java.util.ArrayList.forEach(ArrayList.java:1511) Suppressed: java.lang.NullPointerException: Cannot invoke "org.apache.kafka.streams.TopologyTestDriver.getTimestampedKeyValueStore(String)" because "this.testDriver" is null at org.acme.kafka.streams.aggregator.streams.TopologyProducerTest.tearDown(TopologyProducerTest.java:66) at java.base/java.lang.reflect.Method.invoke(Method.java:569) at io.quarkus.test.junit.QuarkusTestExtension.runExtensionMethod(QuarkusTestExtension.java:1013) at io.quarkus.test.junit.QuarkusTestExtension.interceptAfterEachMethod(QuarkusTestExtension.java:890) ... 2 more