Skip to main content

Module transaction_version

Module transaction_version 

Source
Expand description

KIP-890 transaction.version feature-level constants, matching Kafka’s TransactionVersion, which defines TV_0 to TV_2 only.

0 means classic (KIP-98) non-flexible txn-state records, 1 means flexible (tagged) txn-state records, and 2 means an epoch bump on completion plus server-side AddPartitionsToTxn verification. Both TV_1 and TV_2 bootstrap at 4.0-IV2.

KIP-939 two-phase commit is not a transaction version. Kafka gates it on the broker config transaction.two.phase.commit.enable and the TWO_PHASE_COMMIT ACL, and asks for no finalized level beyond TV_2.

Constants§

TRANSACTION_VERSION_FEATURE
TRANSACTION_VERSION_MAX
TransactionVersion.LATEST_PRODUCTION, TV_2, on Kafka 4.3.1 and trunk.
TRANSACTION_VERSION_MIN
TV1_METADATA_LEVEL
metadata.version at or above which transaction.version becomes a bootstrap default.
TV2_METADATA_LEVEL