...
1// WriteTxnMarkersRequest is a broker-to-broker request that Kafka uses to
2// finish transactions.
3WriteTxnMarkersRequest => key 27, max version 1, flexible v1+
4 // Markers contains transactional markers to be written.
5 Markers: [=>]
6 // ProducerID is the current producer ID to use when writing a marker.
7 ProducerID: int64
8 // ProducerEpoch is the current producer epoch to use when writing a
9 // marker.
10 ProducerEpoch: int16
11 // Committed is true if this marker is for a committed transaction,
12 // otherwise false if this is for an aborted transaction.
13 Committed: bool
14 // Topics contains the topics we are writing markers for.
15 Topics: [=>]
16 // Topic is the name of the topic to write markers for.
17 Topic: string
18 // Partitions contains partitions to write markers for.
19 Partitions: [int32]
20 // CoordinatorEpoch is the current epoch of the transaction coordinator we
21 // are writing a marker to. This is used to detect fenced writers.
22 CoordinatorEpoch: int32
23
24// WriteTxnMarkersResponse is a response to a WriteTxnMarkersRequest.
25WriteTxnMarkersResponse =>
26 // Markers contains results for writing transactional markers.
27 Markers: [=>]
28 // ProducerID is the producer ID these results are for (from the input
29 // request).
30 ProducerID: int64
31 // Topics contains the results for the write markers request.
32 Topics: [=>]
33 // Topic is the topic these results are for.
34 Topic: string
35 // Partitions contains per-partition results for the write markers
36 // request.
37 Partitions: [=>]
38 // Partition is the partition this result is for.
39 Partition: int32
40 // ErrorCode is non-nil if writing the transansactional marker for this
41 // partition errored.
42 //
43 // CLUSTER_AUTHORIZATION_FAILED is returned if the user does not have
44 // CLUSTER_ACTION on CLUSTER.
45 //
46 // NOT_LEADER_OR_FOLLOWER is returned if the broker receiving this
47 // request is not the leader of the partition.
48 //
49 // UNKNOWN_TOPIC_OR_PARTITION is returned if the topic or partition is
50 // not known to exist.
51 //
52 // INVALID_PRODUCER_EPOCH is returned if the cluster epoch is provided
53 // and the provided epoch does not match.
54 ErrorCode: int16
View as plain text