mirror of https://github.com/apache/kafka.git
MINOR: Add 4.1.0 to core system tests (#20477)
This PR updates all the core system tests to include 4.1.0. Reviewers: Chia-Ping Tsai <chia7712@gmail.com>
This commit is contained in:
parent
675552a724
commit
1ea221c5e9
|
@ -29,7 +29,7 @@ from ducktape.tests.test import Test
|
||||||
from kafkatest.version import DEV_BRANCH, \
|
from kafkatest.version import DEV_BRANCH, \
|
||||||
LATEST_2_1, LATEST_2_2, LATEST_2_3, LATEST_2_4, LATEST_2_5, LATEST_2_6, LATEST_2_7, LATEST_2_8, \
|
LATEST_2_1, LATEST_2_2, LATEST_2_3, LATEST_2_4, LATEST_2_5, LATEST_2_6, LATEST_2_7, LATEST_2_8, \
|
||||||
LATEST_3_0, LATEST_3_1, LATEST_3_2, LATEST_3_3, LATEST_3_4, LATEST_3_5, LATEST_3_6, LATEST_3_7, \
|
LATEST_3_0, LATEST_3_1, LATEST_3_2, LATEST_3_3, LATEST_3_4, LATEST_3_5, LATEST_3_6, LATEST_3_7, \
|
||||||
LATEST_3_8, LATEST_3_9, LATEST_4_0, KafkaVersion
|
LATEST_3_8, LATEST_3_9, LATEST_4_0, LATEST_4_1, KafkaVersion
|
||||||
|
|
||||||
def get_broker_features(broker_version):
|
def get_broker_features(broker_version):
|
||||||
features = {}
|
features = {}
|
||||||
|
@ -126,6 +126,7 @@ class ClientCompatibilityFeaturesTest(Test):
|
||||||
@parametrize(broker_version=str(LATEST_3_8), metadata_quorum=quorum.isolated_kraft)
|
@parametrize(broker_version=str(LATEST_3_8), metadata_quorum=quorum.isolated_kraft)
|
||||||
@parametrize(broker_version=str(LATEST_3_9), metadata_quorum=quorum.isolated_kraft)
|
@parametrize(broker_version=str(LATEST_3_9), metadata_quorum=quorum.isolated_kraft)
|
||||||
@parametrize(broker_version=str(LATEST_4_0), metadata_quorum=quorum.isolated_kraft)
|
@parametrize(broker_version=str(LATEST_4_0), metadata_quorum=quorum.isolated_kraft)
|
||||||
|
@parametrize(broker_version=str(LATEST_4_1), metadata_quorum=quorum.isolated_kraft)
|
||||||
def run_compatibility_test(self, broker_version, metadata_quorum=quorum.zk):
|
def run_compatibility_test(self, broker_version, metadata_quorum=quorum.zk):
|
||||||
if self.zk:
|
if self.zk:
|
||||||
self.zk.start()
|
self.zk.start()
|
||||||
|
|
|
@ -26,7 +26,7 @@ from kafkatest.utils import is_int_with_prefix
|
||||||
from kafkatest.version import DEV_BRANCH, \
|
from kafkatest.version import DEV_BRANCH, \
|
||||||
LATEST_2_1, LATEST_2_2, LATEST_2_3, LATEST_2_4, LATEST_2_5, LATEST_2_6, LATEST_2_7, LATEST_2_8, \
|
LATEST_2_1, LATEST_2_2, LATEST_2_3, LATEST_2_4, LATEST_2_5, LATEST_2_6, LATEST_2_7, LATEST_2_8, \
|
||||||
LATEST_3_0, LATEST_3_1, LATEST_3_2, LATEST_3_3, LATEST_3_4, LATEST_3_5, LATEST_3_6, LATEST_3_7, \
|
LATEST_3_0, LATEST_3_1, LATEST_3_2, LATEST_3_3, LATEST_3_4, LATEST_3_5, LATEST_3_6, LATEST_3_7, \
|
||||||
LATEST_3_8, LATEST_3_9, LATEST_4_0, KafkaVersion
|
LATEST_3_8, LATEST_3_9, LATEST_4_0, LATEST_4_1, KafkaVersion
|
||||||
|
|
||||||
class ClientCompatibilityProduceConsumeTest(ProduceConsumeValidateTest):
|
class ClientCompatibilityProduceConsumeTest(ProduceConsumeValidateTest):
|
||||||
"""
|
"""
|
||||||
|
@ -86,6 +86,7 @@ class ClientCompatibilityProduceConsumeTest(ProduceConsumeValidateTest):
|
||||||
@parametrize(broker_version=str(LATEST_3_8), metadata_quorum=quorum.isolated_kraft)
|
@parametrize(broker_version=str(LATEST_3_8), metadata_quorum=quorum.isolated_kraft)
|
||||||
@parametrize(broker_version=str(LATEST_3_9), metadata_quorum=quorum.isolated_kraft)
|
@parametrize(broker_version=str(LATEST_3_9), metadata_quorum=quorum.isolated_kraft)
|
||||||
@parametrize(broker_version=str(LATEST_4_0), metadata_quorum=quorum.isolated_kraft)
|
@parametrize(broker_version=str(LATEST_4_0), metadata_quorum=quorum.isolated_kraft)
|
||||||
|
@parametrize(broker_version=str(LATEST_4_1), metadata_quorum=quorum.isolated_kraft)
|
||||||
def test_produce_consume(self, broker_version, metadata_quorum=quorum.zk):
|
def test_produce_consume(self, broker_version, metadata_quorum=quorum.zk):
|
||||||
print("running producer_consumer_compat with broker_version = %s" % broker_version, flush=True)
|
print("running producer_consumer_compat with broker_version = %s" % broker_version, flush=True)
|
||||||
self.kafka.set_version(KafkaVersion(broker_version))
|
self.kafka.set_version(KafkaVersion(broker_version))
|
||||||
|
|
|
@ -20,7 +20,8 @@ from ducktape.mark.resource import cluster
|
||||||
from kafkatest.tests.verifiable_consumer_test import VerifiableConsumerTest
|
from kafkatest.tests.verifiable_consumer_test import VerifiableConsumerTest
|
||||||
from kafkatest.services.kafka import TopicPartition, quorum, consumer_group
|
from kafkatest.services.kafka import TopicPartition, quorum, consumer_group
|
||||||
from kafkatest.version import LATEST_2_1, LATEST_2_3, LATEST_2_4, LATEST_2_5, \
|
from kafkatest.version import LATEST_2_1, LATEST_2_3, LATEST_2_4, LATEST_2_5, \
|
||||||
LATEST_3_2, LATEST_3_4, LATEST_3_5, LATEST_3_6, LATEST_3_7, LATEST_3_8, LATEST_3_9, LATEST_4_0, DEV_BRANCH, KafkaVersion
|
LATEST_3_2, LATEST_3_4, LATEST_3_5, LATEST_3_6, LATEST_3_7, LATEST_3_8, LATEST_3_9, \
|
||||||
|
LATEST_4_0, LATEST_4_1, DEV_BRANCH, KafkaVersion
|
||||||
|
|
||||||
class ConsumerProtocolMigrationTest(VerifiableConsumerTest):
|
class ConsumerProtocolMigrationTest(VerifiableConsumerTest):
|
||||||
"""
|
"""
|
||||||
|
@ -44,6 +45,7 @@ class ConsumerProtocolMigrationTest(VerifiableConsumerTest):
|
||||||
all_consumer_versions = [LATEST_2_1, LATEST_2_3, LATEST_2_4, LATEST_2_5, \
|
all_consumer_versions = [LATEST_2_1, LATEST_2_3, LATEST_2_4, LATEST_2_5, \
|
||||||
LATEST_3_2, LATEST_3_4, LATEST_3_5, LATEST_3_6, \
|
LATEST_3_2, LATEST_3_4, LATEST_3_5, LATEST_3_6, \
|
||||||
LATEST_3_7, LATEST_3_8, LATEST_3_9, LATEST_4_0, \
|
LATEST_3_7, LATEST_3_8, LATEST_3_9, LATEST_4_0, \
|
||||||
|
LATEST_4_1, \
|
||||||
DEV_BRANCH]
|
DEV_BRANCH]
|
||||||
consumer_versions_supporting_range_assignnor = [str(v) for v in all_consumer_versions]
|
consumer_versions_supporting_range_assignnor = [str(v) for v in all_consumer_versions]
|
||||||
consumer_versions_supporting_static_membership = [str(v) for v in all_consumer_versions if v >= LATEST_2_3]
|
consumer_versions_supporting_static_membership = [str(v) for v in all_consumer_versions if v >= LATEST_2_3]
|
||||||
|
|
|
@ -22,7 +22,7 @@ from kafkatest.tests.produce_consume_validate import ProduceConsumeValidateTest
|
||||||
from kafkatest.utils import is_int
|
from kafkatest.utils import is_int
|
||||||
from kafkatest.version import LATEST_2_1, LATEST_2_2, LATEST_2_3, LATEST_2_4, LATEST_2_5, LATEST_2_6, \
|
from kafkatest.version import LATEST_2_1, LATEST_2_2, LATEST_2_3, LATEST_2_4, LATEST_2_5, LATEST_2_6, \
|
||||||
LATEST_2_7, LATEST_2_8, LATEST_3_0, LATEST_3_1, LATEST_3_2, LATEST_3_3, LATEST_3_4, LATEST_3_5, LATEST_3_6, \
|
LATEST_2_7, LATEST_2_8, LATEST_3_0, LATEST_3_1, LATEST_3_2, LATEST_3_3, LATEST_3_4, LATEST_3_5, LATEST_3_6, \
|
||||||
LATEST_3_7, LATEST_3_8, LATEST_3_9, LATEST_4_0, DEV_BRANCH, KafkaVersion
|
LATEST_3_7, LATEST_3_8, LATEST_3_9, LATEST_4_0, LATEST_4_1, DEV_BRANCH, KafkaVersion
|
||||||
|
|
||||||
# Compatibility tests for moving to a new broker (e.g., 0.10.x) and using a mix of old and new clients (e.g., 0.9.x)
|
# Compatibility tests for moving to a new broker (e.g., 0.10.x) and using a mix of old and new clients (e.g., 0.9.x)
|
||||||
class ClientCompatibilityTestNewBroker(ProduceConsumeValidateTest):
|
class ClientCompatibilityTestNewBroker(ProduceConsumeValidateTest):
|
||||||
|
@ -61,6 +61,7 @@ class ClientCompatibilityTestNewBroker(ProduceConsumeValidateTest):
|
||||||
@matrix(producer_version=[str(LATEST_3_8)], consumer_version=[str(LATEST_3_8)], compression_types=[["none"]], timestamp_type=[str("CreateTime")], metadata_quorum=quorum.all_non_upgrade)
|
@matrix(producer_version=[str(LATEST_3_8)], consumer_version=[str(LATEST_3_8)], compression_types=[["none"]], timestamp_type=[str("CreateTime")], metadata_quorum=quorum.all_non_upgrade)
|
||||||
@matrix(producer_version=[str(LATEST_3_9)], consumer_version=[str(LATEST_3_9)], compression_types=[["none"]], timestamp_type=[str("CreateTime")], metadata_quorum=quorum.all_non_upgrade)
|
@matrix(producer_version=[str(LATEST_3_9)], consumer_version=[str(LATEST_3_9)], compression_types=[["none"]], timestamp_type=[str("CreateTime")], metadata_quorum=quorum.all_non_upgrade)
|
||||||
@matrix(producer_version=[str(LATEST_4_0)], consumer_version=[str(LATEST_4_0)], compression_types=[["none"]], timestamp_type=[str("CreateTime")], metadata_quorum=quorum.all_non_upgrade)
|
@matrix(producer_version=[str(LATEST_4_0)], consumer_version=[str(LATEST_4_0)], compression_types=[["none"]], timestamp_type=[str("CreateTime")], metadata_quorum=quorum.all_non_upgrade)
|
||||||
|
@matrix(producer_version=[str(LATEST_4_1)], consumer_version=[str(LATEST_4_1)], compression_types=[["none"]], timestamp_type=[str("CreateTime")], metadata_quorum=quorum.all_non_upgrade)
|
||||||
@matrix(producer_version=[str(LATEST_2_1)], consumer_version=[str(LATEST_2_1)], compression_types=[["zstd"]], timestamp_type=[str("CreateTime")], metadata_quorum=quorum.all_non_upgrade)
|
@matrix(producer_version=[str(LATEST_2_1)], consumer_version=[str(LATEST_2_1)], compression_types=[["zstd"]], timestamp_type=[str("CreateTime")], metadata_quorum=quorum.all_non_upgrade)
|
||||||
def test_compatibility(self, producer_version, consumer_version, compression_types, timestamp_type=None, metadata_quorum=quorum.zk):
|
def test_compatibility(self, producer_version, consumer_version, compression_types, timestamp_type=None, metadata_quorum=quorum.zk):
|
||||||
self.kafka = KafkaService(self.test_context, num_nodes=3, zk=None, version=DEV_BRANCH, topics={self.topic: {
|
self.kafka = KafkaService(self.test_context, num_nodes=3, zk=None, version=DEV_BRANCH, topics={self.topic: {
|
||||||
|
|
|
@ -22,7 +22,7 @@ from kafkatest.utils import is_int
|
||||||
from kafkatest.utils.transactions_utils import create_and_start_copiers
|
from kafkatest.utils.transactions_utils import create_and_start_copiers
|
||||||
from kafkatest.version import LATEST_3_3, LATEST_3_4, LATEST_3_5, \
|
from kafkatest.version import LATEST_3_3, LATEST_3_4, LATEST_3_5, \
|
||||||
LATEST_3_6, LATEST_3_7, LATEST_3_8, LATEST_3_9, LATEST_4_0, \
|
LATEST_3_6, LATEST_3_7, LATEST_3_8, LATEST_3_9, LATEST_4_0, \
|
||||||
DEV_BRANCH, KafkaVersion, LATEST_STABLE_METADATA_VERSION
|
LATEST_4_1, DEV_BRANCH, KafkaVersion, LATEST_STABLE_METADATA_VERSION
|
||||||
|
|
||||||
from ducktape.tests.test import Test
|
from ducktape.tests.test import Test
|
||||||
from ducktape.mark import matrix
|
from ducktape.mark import matrix
|
||||||
|
@ -179,7 +179,7 @@ class TransactionsMixedVersionsTest(Test):
|
||||||
|
|
||||||
@cluster(num_nodes=8)
|
@cluster(num_nodes=8)
|
||||||
@matrix(
|
@matrix(
|
||||||
old_kafka_version=[str(LATEST_4_0), str(LATEST_3_9), str(LATEST_3_8), str(LATEST_3_7), str(LATEST_3_6), str(LATEST_3_5), str(LATEST_3_4), str(LATEST_3_3)],
|
old_kafka_version=[str(LATEST_4_1), str(LATEST_4_0), str(LATEST_3_9), str(LATEST_3_8), str(LATEST_3_7), str(LATEST_3_6), str(LATEST_3_5), str(LATEST_3_4), str(LATEST_3_3)],
|
||||||
metadata_quorum=[isolated_kraft],
|
metadata_quorum=[isolated_kraft],
|
||||||
group_protocol=[None]
|
group_protocol=[None]
|
||||||
)
|
)
|
||||||
|
|
|
@ -22,7 +22,7 @@ from kafkatest.utils import is_int
|
||||||
from kafkatest.utils.transactions_utils import create_and_start_copiers
|
from kafkatest.utils.transactions_utils import create_and_start_copiers
|
||||||
from kafkatest.version import LATEST_3_3, LATEST_3_4, LATEST_3_5, \
|
from kafkatest.version import LATEST_3_3, LATEST_3_4, LATEST_3_5, \
|
||||||
LATEST_3_6, LATEST_3_7, LATEST_3_8, LATEST_3_9, LATEST_4_0, \
|
LATEST_3_6, LATEST_3_7, LATEST_3_8, LATEST_3_9, LATEST_4_0, \
|
||||||
DEV_BRANCH, KafkaVersion, LATEST_STABLE_METADATA_VERSION, LATEST_STABLE_TRANSACTION_VERSION
|
LATEST_4_1, DEV_BRANCH, KafkaVersion, LATEST_STABLE_METADATA_VERSION, LATEST_STABLE_TRANSACTION_VERSION
|
||||||
|
|
||||||
from ducktape.tests.test import Test
|
from ducktape.tests.test import Test
|
||||||
from ducktape.mark import matrix
|
from ducktape.mark import matrix
|
||||||
|
@ -209,7 +209,7 @@ class TransactionsUpgradeTest(Test):
|
||||||
|
|
||||||
@cluster(num_nodes=8)
|
@cluster(num_nodes=8)
|
||||||
@matrix(
|
@matrix(
|
||||||
from_kafka_version=[str(LATEST_4_0), str(LATEST_3_9), str(LATEST_3_8), str(LATEST_3_7), str(LATEST_3_6), str(LATEST_3_5), str(LATEST_3_4), str(LATEST_3_3)],
|
from_kafka_version=[str(LATEST_4_1), str(LATEST_4_0), str(LATEST_3_9), str(LATEST_3_8), str(LATEST_3_7), str(LATEST_3_6), str(LATEST_3_5), str(LATEST_3_4), str(LATEST_3_3)],
|
||||||
metadata_quorum=[isolated_kraft],
|
metadata_quorum=[isolated_kraft],
|
||||||
group_protocol=[None]
|
group_protocol=[None]
|
||||||
)
|
)
|
||||||
|
|
|
@ -23,7 +23,8 @@ from kafkatest.services.verifiable_producer import VerifiableProducer
|
||||||
from kafkatest.tests.produce_consume_validate import ProduceConsumeValidateTest
|
from kafkatest.tests.produce_consume_validate import ProduceConsumeValidateTest
|
||||||
from kafkatest.utils import is_int
|
from kafkatest.utils import is_int
|
||||||
from kafkatest.version import LATEST_3_4, LATEST_3_5, \
|
from kafkatest.version import LATEST_3_4, LATEST_3_5, \
|
||||||
LATEST_3_6, LATEST_3_7, LATEST_3_8, LATEST_3_9, LATEST_4_0, DEV_BRANCH, KafkaVersion, LATEST_STABLE_METADATA_VERSION
|
LATEST_3_6, LATEST_3_7, LATEST_3_8, LATEST_3_9, LATEST_4_0, \
|
||||||
|
LATEST_4_1, DEV_BRANCH, KafkaVersion, LATEST_STABLE_METADATA_VERSION
|
||||||
|
|
||||||
#
|
#
|
||||||
# Test upgrading between different KRaft versions.
|
# Test upgrading between different KRaft versions.
|
||||||
|
@ -163,25 +164,25 @@ class TestUpgrade(ProduceConsumeValidateTest):
|
||||||
assert self.kafka.check_protocol_errors(self)
|
assert self.kafka.check_protocol_errors(self)
|
||||||
|
|
||||||
@cluster(num_nodes=5)
|
@cluster(num_nodes=5)
|
||||||
@matrix(from_kafka_version=[str(LATEST_3_4), str(LATEST_3_5), str(LATEST_3_6), str(LATEST_3_7), str(LATEST_3_8), str(LATEST_3_9), str(LATEST_4_0), str(DEV_BRANCH)],
|
@matrix(from_kafka_version=[str(LATEST_3_4), str(LATEST_3_5), str(LATEST_3_6), str(LATEST_3_7), str(LATEST_3_8), str(LATEST_3_9), str(LATEST_4_0), str(LATEST_4_1), str(DEV_BRANCH)],
|
||||||
metadata_quorum=[combined_kraft])
|
metadata_quorum=[combined_kraft])
|
||||||
def test_combined_mode_upgrade(self, from_kafka_version, metadata_quorum):
|
def test_combined_mode_upgrade(self, from_kafka_version, metadata_quorum):
|
||||||
self.run_upgrade(from_kafka_version)
|
self.run_upgrade(from_kafka_version)
|
||||||
|
|
||||||
@cluster(num_nodes=8)
|
@cluster(num_nodes=8)
|
||||||
@matrix(from_kafka_version=[str(LATEST_3_4), str(LATEST_3_5), str(LATEST_3_6), str(LATEST_3_7), str(LATEST_3_8), str(LATEST_3_9), str(LATEST_4_0), str(DEV_BRANCH)],
|
@matrix(from_kafka_version=[str(LATEST_3_4), str(LATEST_3_5), str(LATEST_3_6), str(LATEST_3_7), str(LATEST_3_8), str(LATEST_3_9), str(LATEST_4_0), str(LATEST_4_1), str(DEV_BRANCH)],
|
||||||
metadata_quorum=[isolated_kraft])
|
metadata_quorum=[isolated_kraft])
|
||||||
def test_isolated_mode_upgrade(self, from_kafka_version, metadata_quorum):
|
def test_isolated_mode_upgrade(self, from_kafka_version, metadata_quorum):
|
||||||
self.run_upgrade(from_kafka_version)
|
self.run_upgrade(from_kafka_version)
|
||||||
|
|
||||||
@cluster(num_nodes=5)
|
@cluster(num_nodes=5)
|
||||||
@matrix(from_kafka_version=[str(LATEST_3_4), str(LATEST_3_5), str(LATEST_3_6), str(LATEST_3_7), str(LATEST_3_8), str(LATEST_3_9), str(LATEST_4_0), str(DEV_BRANCH)],
|
@matrix(from_kafka_version=[str(LATEST_3_4), str(LATEST_3_5), str(LATEST_3_6), str(LATEST_3_7), str(LATEST_3_8), str(LATEST_3_9), str(LATEST_4_0), str(LATEST_4_1), str(DEV_BRANCH)],
|
||||||
metadata_quorum=[combined_kraft])
|
metadata_quorum=[combined_kraft])
|
||||||
def test_combined_mode_upgrade_downgrade(self, from_kafka_version, metadata_quorum):
|
def test_combined_mode_upgrade_downgrade(self, from_kafka_version, metadata_quorum):
|
||||||
self.run_upgrade_downgrade(from_kafka_version)
|
self.run_upgrade_downgrade(from_kafka_version)
|
||||||
|
|
||||||
@cluster(num_nodes=8)
|
@cluster(num_nodes=8)
|
||||||
@matrix(from_kafka_version=[str(LATEST_3_4), str(LATEST_3_5), str(LATEST_3_6), str(LATEST_3_7), str(LATEST_3_8), str(LATEST_3_9), str(LATEST_4_0), str(DEV_BRANCH)],
|
@matrix(from_kafka_version=[str(LATEST_3_4), str(LATEST_3_5), str(LATEST_3_6), str(LATEST_3_7), str(LATEST_3_8), str(LATEST_3_9), str(LATEST_4_0), str(LATEST_4_1), str(DEV_BRANCH)],
|
||||||
metadata_quorum=[isolated_kraft])
|
metadata_quorum=[isolated_kraft])
|
||||||
def test_isolated_mode_upgrade_downgrade(self, from_kafka_version, metadata_quorum):
|
def test_isolated_mode_upgrade_downgrade(self, from_kafka_version, metadata_quorum):
|
||||||
self.run_upgrade_downgrade(from_kafka_version)
|
self.run_upgrade_downgrade(from_kafka_version)
|
||||||
|
|
Loading…
Reference in New Issue