kafka/tests/docker
David Arthur c1b5c75d92
KAFKA-14805 KRaft controller supports pre-migration mode (#13407)
This patch adds the concept of pre-migration mode to the KRaft controller. While in this mode, 
the controller will only allow certain write operations. The purpose of this is to disallow metadata 
changes when the controller is waiting for the ZK migration records to be committed.

The following ControllerWriteEvent operations are permitted in pre-migration mode

* completeActivation
* maybeFenceReplicas
* writeNoOpRecord
* processBrokerHeartbeat
* registerBroker (only for migrating ZK brokers)
* unregisterBroker

Raft events and other controller events do not follow the same code path as ControllerWriteEvent, 
so they are not affected by this new behavior.

This patch also add a new metric as defined in KIP-868: kafka.controller:type=KafkaController,name=ZkMigrationState

In order to support upgrades from 3.4.0, this patch also redefines the enum value of value 1 to mean 
MIGRATION rather than PRE_MIGRATION.

Reviewers: Chia-Ping Tsai <chia7712@gmail.com>, Colin P. McCabe <cmccabe@apache.org>
2023-04-26 10:20:30 -04:00
..
ssh KAFKA-4465: Create docker image and scripts for running tests locally 2017-01-08 16:15:05 -08:00
Dockerfile KAFKA-14805 KRaft controller supports pre-migration mode (#13407) 2023-04-26 10:20:30 -04:00
ducker-ak KAFKA-13234; Transaction system test should clear URPs after broker restarts (#11267) 2021-09-01 08:37:05 -07:00
run_tests.sh KAFKA-13041: Enable connecting VS Code remote debugger (#10915) 2021-07-08 20:35:14 +05:30
ssh-config KAFKA-5484: Refactor kafkatest docker support 2017-06-29 13:28:35 -07:00