From 4c27b90a0ea8dc775e2eccaf12e1e8a6d71cfd23 Mon Sep 17 00:00:00 2001 From: Andrew Nguyen Date: Fri, 10 Jul 2026 18:25:08 +0000 Subject: [PATCH] dt/tests: declare Kafka 4.2 in sarama compatibility tests Sarama negotiates API versions and clamps down to the broker since v1.46, so declaring 4.x no longer risks sending requests the broker rejects. Add Kafka 4.2 (the pinned v1.48.0 library's max) to the declared-version matrix, alongside the existing 2.1 and 2.6. --- tests/go/sarama/produce_test/main.go | 2 +- tests/rptest/tests/compatibility/sarama_produce_test.py | 2 +- tests/rptest/tests/compatibility/sarama_test.py | 8 ++++---- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/tests/go/sarama/produce_test/main.go b/tests/go/sarama/produce_test/main.go index bded5e330b92d..5018e2341fa23 100644 --- a/tests/go/sarama/produce_test/main.go +++ b/tests/go/sarama/produce_test/main.go @@ -14,7 +14,7 @@ import ( var ( brokers = flag.String("brokers", "127.0.0.1:9092", "Th Redpanda brokers to connect to, as a comma separated list") count = flag.Int64("count", 100, "Optional count to run") - version = flag.String("version", "2.1.0", "Kafka version to use, e.g. 2.1.0") + version = flag.String("version", "4.2.0", "Kafka version to use, e.g. 2.1.0") ) func main() { diff --git a/tests/rptest/tests/compatibility/sarama_produce_test.py b/tests/rptest/tests/compatibility/sarama_produce_test.py index 56e39c6afc04e..0111a9a53f308 100644 --- a/tests/rptest/tests/compatibility/sarama_produce_test.py +++ b/tests/rptest/tests/compatibility/sarama_produce_test.py @@ -46,7 +46,7 @@ def __init__(self, test_context): ) @cluster(num_nodes=3, log_allow_list=TX_ERROR_LOGS) - @matrix(version=["2.1.0", "2.6.0"]) + @matrix(version=["2.1.0", "2.6.0", "4.2.0"]) def test_produce(self, version): verifier_bin = "/opt/redpanda-tests/go/sarama/produce_test/produce_test" diff --git a/tests/rptest/tests/compatibility/sarama_test.py b/tests/rptest/tests/compatibility/sarama_test.py index f69fdda0a0804..2ef0c7e57ca52 100644 --- a/tests/rptest/tests/compatibility/sarama_test.py +++ b/tests/rptest/tests/compatibility/sarama_test.py @@ -43,7 +43,7 @@ def __init__(self, test_context): self._timeout = 30 if self.scale.local else 1200 @cluster(num_nodes=4) - @matrix(version=["2.1.0", "2.6.0"]) + @matrix(version=["2.1.0", "2.6.0", "4.2.0"]) def test_sarama_interceptors(self, version): sarama_example = SaramaExamples.SaramaInterceptors( self.redpanda, version, self.topic @@ -56,7 +56,7 @@ def test_sarama_interceptors(self, version): wait_until(example.condition_met, timeout_sec=self._timeout, backoff_sec=1) @cluster(num_nodes=4) - @matrix(version=["2.1.0", "2.6.0"]) + @matrix(version=["2.1.0", "2.6.0", "4.2.0"]) def test_sarama_http_server(self, version): sarama_example = SaramaExamples.SaramaHttpServer(self.redpanda, version) example = ExampleRunner(self._ctx, sarama_example, timeout_sec=self._timeout) @@ -91,7 +91,7 @@ def try_curl(): ) @cluster(num_nodes=5) - @matrix(version=["2.1.0", "2.6.0"]) + @matrix(version=["2.1.0", "2.6.0", "4.2.0"]) def test_sarama_consumergroup(self, version): count = 10 if self.scale.local else 5000 @@ -144,7 +144,7 @@ def __init__(self, test_context): super(SaramaScramTest, self).__init__(test_context, security=security) @cluster(num_nodes=3) - @matrix(version=["2.1.0", "2.6.0"]) + @matrix(version=["2.1.0", "2.6.0", "4.2.0"]) def test_sarama_sasl_scram(self, version): # Get the SASL SCRAM command and a ducktape node cmd = SaramaExamples.sarama_sasl_scram(self.redpanda, version, self.topic)