Repository: redpanda-data/redpanda
Pull request #25915: [CORE-9868] kafka: Support Metadata API v9
Author: login: BenPope
Labels: name: area/redpanda
Created: 2025-04-24T11:49:57Z | Merged: 2025-04-25T12:49:46Z

Support Metadata API v9

## Backports Required

<!-- Checking at least one of the checkboxes is REQUIRED if this PR is not a backport. -->

- [x] none - not a bug fix
- [ ] none - this is a backport
- [ ] none - issue does not exist in previous branches
- [ ] none - papercut/not impactful enough to backport
- [ ] v25.1.x
- [ ] v24.3.x
- [ ] v24.2.x
- [ ] v24.1.x

## Release Notes

* none



Diff:
diff --git a/src/v/kafka/server/handlers/metadata.h b/src/v/kafka/server/handlers/metadata.h
index c457fcd8a411a..bff168a0f5532 100644
--- a/src/v/kafka/server/handlers/metadata.h
+++ b/src/v/kafka/server/handlers/metadata.h
@@ -27,9 +27,7 @@ memory_estimate_fn metadata_memory_estimator;
 // IMPORTANT: Do not bump support to v11 (or beyond) unless DescribeCluster v0
 // has been implemented.  v11 drops support for the authorized operations list
 // and moves those lists to DCv0
-// Keep this at v8.  Moving to v9 appears to cause issues with the Kafka Java
-// Client
 using metadata_handler
-  = single_stage_handler<metadata_api, 0, 8, metadata_memory_estimator>;
+  = single_stage_handler<metadata_api, 0, 9, metadata_memory_estimator>;
 
 } // namespace kafka
diff --git a/tests/docker/ducktape-deps/sarama-examples b/tests/docker/ducktape-deps/sarama-examples
index e6522ce13fead..682985685c032 100644
--- a/tests/docker/ducktape-deps/sarama-examples
+++ b/tests/docker/ducktape-deps/sarama-examples
@@ -1,6 +1,6 @@
 #!/usr/bin/env bash
 set -e
-git -C /opt clone -b v1.32.0 --single-branch https://github.com/Shopify/sarama.git
+git -C /opt clone -b v1.45.1 --single-branch https://github.com/IBM/sarama.git
 cd /opt/sarama/examples/interceptors
 go mod tidy
 go build
diff --git a/tests/go/sarama/produce_test/go.mod b/tests/go/sarama/produce_test/go.mod
index d628ac770cbf0..af9e482c7e1e6 100644
--- a/tests/go/sarama/produce_test/go.mod
+++ b/tests/go/sarama/produce_test/go.mod
@@ -2,4 +2,4 @@ module produce_test
 
 go 1.19
 
-require github.com/Shopify/sarama v1.37.2
+require github.com/IBM/sarama v1.45.1
diff --git a/tests/go/sarama/produce_test/main.go b/tests/go/sarama/produce_test/main.go
index 87461fbda5100..bded5e330b92d 100644
--- a/tests/go/sarama/produce_test/main.go
+++ b/tests/go/sarama/produce_test/main.go
@@ -8,17 +8,24 @@ import (
 	"strings"
 	"time"
 
-	"github.com/Shopify/sarama"
+	"github.com/IBM/sarama"
 )
 
 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")
 )
 
 func main() {
 	flag.Parse()
 
+	version, err := sarama.ParseKafkaVersion(*version)
+	if err != nil {
+		fmt.Printf("Error creating producer, %v", err)
+		os.Exit(1)
+	}
+
 	brokerList := strings.Split(*brokers, ",")
 	fmt.Printf("Redpanda brokers: %s\n", strings.Join(brokerList, ", "))
 
@@ -26,7 +33,7 @@ func main() {
 		"topic1",
 	}
 
-	producer, err := newProducer(brokerList)
+	producer, err := newProducer(brokerList, version)
 	if err != nil {
 		fmt.Printf("Error creating producer, %v", err)
 		os.Exit(1)
@@ -39,7 +46,7 @@ func main() {
 	}
 }
 
-func newProducer(brokers []string) (sarama.SyncProducer, error) {
+func newProducer(brokers []string, version sarama.KafkaVersion) (sarama.SyncProducer, error) {
 	config := sarama.NewConfig()
 
 	config.Metadata.Full = false
@@ -50,7 +57,7 @@ func newProducer(brokers []string) (sarama.SyncProducer, error) {
 	config.Producer.Retry.Max = 10                   //hard
 	config.Producer.Return.Successes = true
 	config.Net.MaxOpenRequests = 1
-	config.Version = sarama.V2_1_0_0
+	config.Version = version
 
 	producer, err := sarama.NewSyncProducer(brokers, config)
 
diff --git a/tests/rptest/services/compatibility/sarama_examples.py b/tests/rptest/services/compatibility/sarama_examples.py
index 292373c35238e..33db96f90e4f6 100644
--- a/tests/rptest/services/compatibility/sarama_examples.py
+++ b/tests/rptest/services/compatibility/sarama_examples.py
@@ -18,21 +18,22 @@ class SaramaInterceptors(ExampleBase):
     """
     The helper class for Sarama's interceptors example
     """
-    def __init__(self, redpanda, topic):
+    def __init__(self, redpanda, version, topic):
         super(SaramaInterceptors, self).__init__(redpanda)
 
         # The kafka topic
         self._topic = topic
+        self._version = version
 
     # The internal condition to determine if the
     # example is successful. Returns boolean.
     def _condition(self, line):
-        return 'SpanContext' in line
+        return 'producing 2 messages to topic' in line
 
     # Return the command to call in the shell
     def cmd(self):
         EXAMPLE_DIR = os.path.join(TESTS_DIR, "examples/interceptors")
-        cmd = f"interceptors -brokers {self._redpanda.brokers()} -topic {self._topic}"
+        cmd = f"interceptors -brokers {self._redpanda.brokers()} -topic {self._topic} -version {self._version}"
         return os.path.join(EXAMPLE_DIR, cmd)
 
     # Return the process name to kill
@@ -44,11 +45,12 @@ class SaramaHttpServer(ExampleBase):
     """
     The helper class for Sarama's http server example
     """
-    def __init__(self, redpanda):
+    def __init__(self, redpanda, version):
         super(SaramaHttpServer, self).__init__(redpanda)
 
         # The name of the node assigned to this example
         self._node_name = ""
+        self._version = version
 
     # The internal condition to determine if the
     # example is successful. Returns boolean.
@@ -58,7 +60,7 @@ def _condition(self, line):
     # Return the command to call in the shell
     def cmd(self):
         EXAMPLE_DIR = os.path.join(TESTS_DIR, "examples/http_server")
-        cmd = f"http_server -addr {self._node_name}:8080 -brokers {self._redpanda.brokers()}"
+        cmd = f"http_server -addr {self._node_name}:8080 -brokers {self._redpanda.brokers()} -version {self._version}"
         return os.path.join(EXAMPLE_DIR, cmd)
 
     # Return the process name to kill
@@ -80,14 +82,15 @@ class SaramaConsumerGroup(ExampleBase):
     """
     The helper class for Sarama's consumergroup example
     """
-    def __init__(self, redpanda, topic, count):
+    def __init__(self, redpanda, version, topic, count):
         super(SaramaConsumerGroup, self).__init__(redpanda)
 
         # The kafka topic
         self._topic = topic
-
         self._count = count
 
+        self._version = version
+
     # The internal condition to determine if the
     # example is successful. Returns boolean.
     def _condition(self, line):
@@ -97,7 +100,7 @@ def _condition(self, line):
     # Return the command to call in the shell
     def cmd(self):
         EXAMPLE_DIR = os.path.join(TESTS_DIR, "examples/consumergroup")
-        cmd = f"consumer -brokers=\"{self._redpanda.brokers()}\" -topics=\"{self._topic}\" -group=\"example\""
+        cmd = f"consumer -brokers=\"{self._redpanda.brokers()}\" -topics=\"{self._topic}\" -group=\"example\" -version {self._version}"
         return os.path.join(EXAMPLE_DIR, cmd)
 
     # Return the process name to kill
@@ -109,9 +112,9 @@ def process_to_kill(self):
 # Sarama's SASL/SCRAM authentication example.
 # Here, we do not create a ExampleBase because
 # the SASL/SCRAM example runs in the foreground.
-def sarama_sasl_scram(redpanda, topic):
+def sarama_sasl_scram(redpanda, version, topic):
     EXAMPLE_DIR = os.path.join(TESTS_DIR, "examples/sasl_scram_client")
     creds = redpanda.SUPERUSER_CREDENTIALS
-    cmd = f"sasl_scram_client -brokers {redpanda.brokers()} -username {creds[0]} -passwd {creds[1]} -topic {topic} -algorithm sha256"
+    cmd = f"sasl_scram_client -brokers {redpanda.brokers()} -username {creds[0]} -passwd {creds[1]} -topic {topic} -algorithm sha256 -version {version}"
 
     return os.path.join(EXAMPLE_DIR, cmd)
diff --git a/tests/rptest/tests/compatibility/sarama_produce_test.py b/tests/rptest/tests/compatibility/sarama_produce_test.py
index f0597d6e359cd..7262b4fcc5f2a 100644
--- a/tests/rptest/tests/compatibility/sarama_produce_test.py
+++ b/tests/rptest/tests/compatibility/sarama_produce_test.py
@@ -7,12 +7,14 @@
 # the Business Source License, use of this software will be governed
 # by the Apache License, Version 2.0
 
-from rptest.services.cluster import cluster
-from ducktape.errors import DucktapeError
 from time import sleep
 
-from rptest.tests.redpanda_test import RedpandaTest
+from ducktape.errors import DucktapeError
+from ducktape.mark import matrix
+
 from rptest.clients.rpk import RpkTool
+from rptest.services.cluster import cluster
+from rptest.tests.redpanda_test import RedpandaTest
 
 import subprocess
 
@@ -38,7 +40,8 @@ def __init__(self, test_context):
                                                 extra_rp_conf=extra_rp_conf)
 
     @cluster(num_nodes=3, log_allow_list=TX_ERROR_LOGS)
-    def test_produce(self):
+    @matrix(version=["2.1.0", "2.6.0"])
+    def test_produce(self, version):
         verifier_bin = "/opt/redpanda-tests/go/sarama/produce_test/produce_test"
 
         self.redpanda.logger.info("creating topics")
@@ -50,8 +53,10 @@ def test_produce(self):
         retries = 5
         for i in range(0, retries):
             try:
-                cmd = "{verifier_bin} --brokers {brokers}".format(
-                    verifier_bin=verifier_bin, brokers=self.redpanda.brokers())
+                cmd = "{verifier_bin} --brokers {brokers} --version {version}".format(
+                    verifier_bin=verifier_bin,
+                    brokers=self.redpanda.brokers(),
+                    version=version)
                 subprocess.check_output(["/bin/sh", "-c", cmd],
                                         stderr=subprocess.STDOUT)
                 self.redpanda.logger.info("sarama produce test passed")
diff --git a/tests/rptest/tests/compatibility/sarama_test.py b/tests/rptest/tests/compatibility/sarama_test.py
index 0139e676b2ea6..d931d4d4d07dd 100644
--- a/tests/rptest/tests/compatibility/sarama_test.py
+++ b/tests/rptest/tests/compatibility/sarama_test.py
@@ -8,9 +8,11 @@
 # by the Apache License, Version 2.0
 
 import random
-from rptest.services.cluster import cluster
+
+from ducktape.mark import matrix
 from ducktape.utils.util import wait_until
 
+from rptest.services.cluster import cluster
 from rptest.services.rpk_producer import RpkProducer
 from rptest.services.compatibility.example_runner import ExampleRunner
 import rptest.services.compatibility.sarama_examples as SaramaExamples
@@ -39,9 +41,10 @@ def __init__(self, test_context):
         self._timeout = 30 if self.scale.local else 1200
 
     @cluster(num_nodes=4)
-    def test_sarama_interceptors(self):
+    @matrix(version=["2.1.0", "2.6.0"])
+    def test_sarama_interceptors(self, version):
         sarama_example = SaramaExamples.SaramaInterceptors(
-            self.redpanda, self.topic)
+            self.redpanda, version, self.topic)
         example = ExampleRunner(self._ctx,
                                 sarama_example,
                                 timeout_sec=self._timeout)
@@ -54,8 +57,10 @@ def test_sarama_interceptors(self):
                    backoff_sec=1)
 
     @cluster(num_nodes=4)
-    def test_sarama_http_server(self):
-        sarama_example = SaramaExamples.SaramaHttpServer(self.redpanda)
+    @matrix(version=["2.1.0", "2.6.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)
@@ -90,11 +95,12 @@ def try_curl():
                    err_msg="sarama http_server test failed")
 
     @cluster(num_nodes=5)
-    def test_sarama_consumergroup(self):
+    @matrix(version=["2.1.0", "2.6.0"])
+    def test_sarama_consumergroup(self, version):
         count = 10 if self.scale.local else 5000
 
         sarama_example = SaramaExamples.SaramaConsumerGroup(
-            self.redpanda, self.topic, count)
+            self.redpanda, version, self.topic, count)
         example = ExampleRunner(self._ctx,
                                 sarama_example,
                                 timeout_sec=self._timeout)
@@ -146,9 +152,11 @@ def __init__(self, test_context):
         super(SaramaScramTest, self).__init__(test_context, security=security)
 
     @cluster(num_nodes=3)
-    def test_sarama_sasl_scram(self):
+    @matrix(version=["2.1.0", "2.6.0"])
+    def test_sarama_sasl_scram(self, version):
         # Get the SASL SCRAM command and a ducktape node
-        cmd = SaramaExamples.sarama_sasl_scram(self.redpanda, self.topic)
+        cmd = SaramaExamples.sarama_sasl_scram(self.redpanda, version,
+                                               self.topic)
         node = random.choice(self.redpanda.nodes)
 
         def try_cmd():


Reviews:
user: login: pgellert
body: lgtm if we have a solution for the java client issue from earlier
state: APPROVED
author_association: CONTRIBUTOR
submitted_at: 2025-04-25T09:59:00Z
user: login: michael-redpanda
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-25T12:16:45Z
user: login: michael-redpanda
state: APPROVED
author_association: CONTRIBUTOR
submitted_at: 2025-04-25T12:18:08Z

Review comments:
diff_hunk: @@ -27,9 +27,7 @@ memory_estimate_fn metadata_memory_estimator;
 // IMPORTANT: Do not bump support to v11 (or beyond) unless DescribeCluster v0
 // has been implemented.  v11 drops support for the authorized operations list
 // and moves those lists to DCv0
-// Keep this at v8.  Moving to v9 appears to cause issues with the Kafka Java
-// Client
path: src/v/kafka/server/handlers/metadata.h
user: login: pgellert
body: From @michael-redpanda's [comment](https://github.com/redpanda-data/redpanda/pull/22669#issuecomment-2305596826):
> There is some sort of issue with the java kafka library where it acts differently with consumer groups when metadata v9 is in use causing tests to fail. The implementation of metadata v9 is fine (there's really no difference between v8->v9), but there's something else happening which needs to be better understood before we go to v9

Could you reproduce this issue and check that this won't be a problem anymore?
created_at: 2025-04-25T09:55:36Z
author_association: CONTRIBUTOR
diff_hunk: @@ -27,9 +27,7 @@ memory_estimate_fn metadata_memory_estimator;
 // IMPORTANT: Do not bump support to v11 (or beyond) unless DescribeCluster v0
 // has been implemented.  v11 drops support for the authorized operations list
 // and moves those lists to DCv0
-// Keep this at v8.  Moving to v9 appears to cause issues with the Kafka Java
-// Client
path: src/v/kafka/server/handlers/metadata.h
user: login: michael-redpanda
body: Maybe there was some other issue that got fixed between now and when I first attempted to do the update.  The issue presented itself in the `raft_availability_Test.py::RaftAvailabilityTest.test_two_nodes_down` test (https://github.com/redpanda-data/redpanda/pull/22669#issuecomment-2275959113)
created_at: 2025-04-25T12:16:45Z
author_association: CONTRIBUTOR

PR comments:
user: login: vbotbuildovich
created_at: 2025-04-24T21:49:59Z
body: <!--FAILURES SLASH COMMAND https://buildkite.com/redpanda/redpanda/builds/65046-->
<!--a0eb89ed-22ae-4d12-916b-fd638d598703-->
<!--d7c03f34-289a-401c-a418-0ef3b6bba8c4-->
<!--fb6a76a2-a85f-4933-84cd-9c2f71d54150-->
<!--a85054d9-cf2b-4f08-8283-8a2c4b7ef23e-->
<!--0248aff8-0ee8-4e45-9591-08d1b23f21eb-->
<!--title-->
## Retry command for [Build#65046](https://buildkite.com/redpanda/redpanda/builds/65046)
please wait until all jobs are finished before running the slash command
<!--/title-->
<!--body-->
```


/ci-repeat 1
tests/rptest/tests/retention_policy_test.py::ShadowIndexingCloudRetentionTest.test_cloud_size_based_retention_application@{"cloud_storage_type":2}
tests/rptest/tests/data_migrations_api_test.py::DataMigrationsApiTest.test_migrated_topic_data_integrity@{"params":{"cancellation":{"dir":"in","stage":"preparing"},"use_alias":true},"transfer_leadership":true}
tests/rptest/tests/basic_kafka_compat_test.py::TxKafkaCompatTest.test_concurrent_producer_ids@{"metadata_quorum":"COMBINED_KRAFT"}
tests/rptest/tests/upgrade_test.py::UpgradeBackToBackTest.test_upgrade_with_all_workloads@{"single_upgrade":false}
tests/rptest/tests/data_migrations_api_test.py::DataMigrationsApiTest.test_conflicting_names
tests/rptest/tests/scaling_up_test.py::ScalingUpTest.test_scaling_up_with_recovered_topic
tests/rptest/tests/archival_test.py::ArchivalTest.test_all_partitions_leadership_transfer@{"cloud_storage_type":2}
```
<!--/body-->
author_association: COLLABORATOR
user: login: vbotbuildovich
created_at: 2025-04-24T23:33:05Z
body: <!--TEST RESULTS-->
<!--f28e32db-2260-4eec-9d58-bb25c433a4a2-->
<!--TEST RESULTS-->
<!--50f53bb7-4c1a-4e21-a528-6c66e0dea228-->
<!--TEST RESULTS-->
<!--c499b2c7-f330-4e88-9729-718eb4233364-->
<!--title-->
## CI test results
<!--/title-->
<!--body-->
<details>
<summary>test results on <a href="https://buildkite.com/redpanda/redpanda/builds/65046">build#65046</a></summary>


| test_id | test_kind | job_url | test_status | passed |
|:-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:------------|:------------------------------------------------------------------------------------------|:--------------|:---------|
| gtest_raft_rpunit.gtest_raft_rpunit | unit | https://buildkite.com/redpanda/redpanda/builds/65046#01966911-f73e-4ec7-ace1-7baabfebb739 | FLAKY | 1/2 |
| rptest.tests.archival_test.ArchivalTest.test_all_partitions_leadership_transfer.cloud_storage_type=CloudStorageType.ABS | ducktape | https://buildkite.com/redpanda/redpanda/builds/65046#0196696c-59d5-49c5-b838-678ff28cdb69 | FLAKY | 20/21 |
| rptest.tests.basic_kafka_compat_test.TxKafkaCompatTest.test_concurrent_producer_ids.metadata_quorum=COMBINED_KRAFT | ducktape | https://buildkite.com/redpanda/redpanda/builds/65046#01966959-bf39-4e06-868c-30d9da6beb7d | FLAKY | 20/21 |
| rptest.tests.data_migrations_api_test.DataMigrationsApiTest.test_conflicting_names | ducktape | https://buildkite.com/redpanda/redpanda/builds/65046#0196696c-59d4-493f-ac60-03f636993f1c | FLAKY | 5/21 |
| rptest.tests.data_migrations_api_test.DataMigrationsApiTest.test_migrated_topic_data_integrity.transfer_leadership=True.params=.cancellation.dir.in.stage.preparing.use_alias.True | ducktape | https://buildkite.com/redpanda/redpanda/builds/65046#01966959-bf36-4101-bd7c-814d3de84f3c | FLAKY | 16/21 |
| rptest.tests.retention_policy_test.ShadowIndexingCloudRetentionTest.test_cloud_size_based_retention_application.cloud_storage_type=CloudStorageType.ABS | ducktape | https://buildkite.com/redpanda/redpanda/builds/65046#01966959-bf38-4bfa-8ee4-a9380f4cf1e7 | FLAKY | 20/21 |
| rptest.tests.scaling_up_test.ScalingUpTest.test_scaling_up_with_recovered_topic | ducktape | https://buildkite.com/redpanda/redpanda/builds/65046#0196696c-59d5-49c5-b838-678ff28cdb69 | FLAKY | 13/21 |
| rptest.tests.upgrade_test.UpgradeBackToBackTest.test_upgrade_with_all_workloads.single_upgrade=False | ducktape | https://buildkite.com/redpanda/redpanda/builds/65046#01966959-bf39-4e06-868c-30d9da6beb7d | FLAKY | 13/21 |
| rptest.tests.upgrade_test.UpgradeBackToBackTest.test_upgrade_with_all_workloads.single_upgrade=False | ducktape | https://buildkite.com/redpanda/redpanda/builds/65046#0196696c-59d3-42f7-8d40-26ef2bb94163 | FLAKY | 17/21 |
</details>
<details>
<summary>test results on <a href="https://buildkite.com/redpanda/redpanda/builds/65064">build#65064</a></summary>


| test_id | test_kind | job_url | test_status | passed |
|:-----------------------------------------------------------------------------------------------------|:------------|:------------------------------------------------------------------------------------------|:--------------|:---------|
| gtest_raft_rpunit.gtest_raft_rpunit | unit | https://buildkite.com/redpanda/redpanda/builds/65064#01966a27-bc90-4b18-bb84-71b0bbb76d48 | FLAKY | 1/2 |
| rptest.tests.data_migrations_api_test.DataMigrationsApiTest.test_conflicting_names | ducktape | https://buildkite.com/redpanda/redpanda/builds/65064#01966a6e-ed01-4065-acbf-98b0df6fb9fe | FLAKY | 8/21 |
| rptest.tests.data_migrations_api_test.DataMigrationsApiTest.test_conflicting_names | ducktape | https://buildkite.com/redpanda/redpanda/builds/65064#01966a72-fd88-43ff-ac79-1832ae196ed7 | FLAKY | 8/21 |
| rptest.tests.upgrade_test.UpgradeBackToBackTest.test_upgrade_with_all_workloads.single_upgrade=False | ducktape | https://buildkite.com/redpanda/redpanda/builds/65064#01966a6e-ed00-42a0-8a4e-939c0aa9c73d | FLAKY | 13/21 |
</details>
<details>
<summary>test results on <a href="https://buildkite.com/redpanda/redpanda/builds/65098">build#65098</a></summary>


| test_id                                                                                              | test_kind   | job_url                                                                                   | test_status   | passed   |
|:-----------------------------------------------------------------------------------------------------|:------------|:------------------------------------------------------------------------------------------|:--------------|:---------|
| rptest.tests.data_migrations_api_test.DataMigrationsApiTest.test_conflicting_names                   | ducktape    | https://buildkite.com/redpanda/redpanda/builds/65098#01966c82-0b2d-43a5-ac0b-b69583e4bc99 | FLAKY         | 7/21     |
| rptest.tests.upgrade_test.UpgradeBackToBackTest.test_upgrade_with_all_workloads.single_upgrade=False | ducktape    | https://buildkite.com/redpanda/redpanda/builds/65098#01966c82-0b2e-4ac2-ac2b-277ce705a08d | FLAKY         | 14/21    |
</details>
<!--/body-->
author_association: COLLABORATOR
user: login: BenPope
created_at: 2025-04-24T23:33:36Z
body: /ci-repeat 1
tests/rptest/tests/retention_policy_test.py::ShadowIndexingCloudRetentionTest.test_cloud_size_based_retention_application@{"cloud_storage_type":2}
tests/rptest/tests/data_migrations_api_test.py::DataMigrationsApiTest.test_migrated_topic_data_integrity@{"params":{"cancellation":{"dir":"in","stage":"preparing"},"use_alias":true},"transfer_leadership":true}
tests/rptest/tests/basic_kafka_compat_test.py::TxKafkaCompatTest.test_concurrent_producer_ids@{"metadata_quorum":"COMBINED_KRAFT"}
tests/rptest/tests/upgrade_test.py::UpgradeBackToBackTest.test_upgrade_with_all_workloads@{"single_upgrade":false}
tests/rptest/tests/data_migrations_api_test.py::DataMigrationsApiTest.test_conflicting_names
tests/rptest/tests/scaling_up_test.py::ScalingUpTest.test_scaling_up_with_recovered_topic
tests/rptest/tests/archival_test.py::ArchivalTest.test_all_partitions_leadership_transfer@{"cloud_storage_type":2}
author_association: MEMBER
user: login: vbotbuildovich
created_at: 2025-04-25T01:31:01Z
body: <!--FAILURES SLASH COMMAND https://buildkite.com/redpanda/redpanda/builds/65064-->
<!--6bb585d7-3cf1-4c1a-8528-45a2056fa4b0-->
<!--a47dff04-c7a1-4485-b4af-cc246ebd525c-->
<!--217b109d-3a56-4d93-a33e-5c14dec3dfc9-->
<!--title-->
## Retry command for [Build#65064](https://buildkite.com/redpanda/redpanda/builds/65064)
please wait until all jobs are finished before running the slash command
<!--/title-->
<!--body-->
```


/ci-repeat 1
tests/rptest/tests/data_migrations_api_test.py::DataMigrationsApiTest.test_conflicting_names
tests/rptest/tests/upgrade_test.py::UpgradeBackToBackTest.test_upgrade_with_all_workloads@{"single_upgrade":false}
```
<!--/body-->
author_association: COLLABORATOR
user: login: BenPope
created_at: 2025-04-25T06:39:09Z
body: 
/ci-repeat 1
tests/rptest/tests/data_migrations_api_test.py::DataMigrationsApiTest.test_conflicting_names
tests/rptest/tests/upgrade_test.py::UpgradeBackToBackTest.test_upgrade_with_all_workloads@{"single_upgrade":false}
author_association: MEMBER
user: login: BenPope
created_at: 2025-04-25T08:54:20Z
body: /ci-repeat 1
tests/rptest/tests/data_migrations_api_test.py::DataMigrationsApiTest.test_conflicting_names
tests/rptest/tests/upgrade_test.py::UpgradeBackToBackTest.test_upgrade_with_all_workloads@{"single_upgrade":false}
author_association: MEMBER
user: login: vbotbuildovich
created_at: 2025-04-25T11:06:31Z
body: <!--FAILURES SLASH COMMAND https://buildkite.com/redpanda/redpanda/builds/65098-->
<!--d34bf9be-e64f-4883-ae14-933b8bb1371d-->
<!--c984251e-3cbe-410f-a97f-bdd4dd6fa4ef-->
<!--title-->
## Retry command for [Build#65098](https://buildkite.com/redpanda/redpanda/builds/65098)
please wait until all jobs are finished before running the slash command
<!--/title-->
<!--body-->
```

/ci-repeat 1
tests/rptest/tests/data_migrations_api_test.py::DataMigrationsApiTest.test_conflicting_names
tests/rptest/tests/upgrade_test.py::UpgradeBackToBackTest.test_upgrade_with_all_workloads@{"single_upgrade":false}
```
<!--/body-->
author_association: COLLABORATOR
user: login: BenPope
created_at: 2025-04-25T12:45:23Z
body: Failures are:
* test_conflicting_names: Unknown, but unrelated
* test_upgrade_with_all_workloads: https://redpandadata.atlassian.net/browse/CORE-9747
author_association: MEMBER