View Source KlifeProtocol.Messages.ListTransactions (Klife Protocol v0.5.0)

Kafka protocol ListTransactions message

Request versions summary:

  • Version 1: adds DurationFilter to list transactions older than specified duration

Response versions summary:

  • Version 1 is the same as version 0 (KIP-994).

Link to this section Summary

Functions

Returns the message api key number.

Receive a binary in the kafka wire format and deserialize it into a map.

Returns the current max supported version of this message.

Returns the current min supported version of this message.

Receives a map and serialize it to kafka wire format of the given version.

Link to this section Functions

Returns the message api key number.

Link to this function

deserialize_response(data, version, with_header? \\ true)

View Source

Receive a binary in the kafka wire format and deserialize it into a map.

Response content fields:

  • throttle_time_ms: The duration in milliseconds for which the request was throttled due to a quota violation, or zero if the request did not violate any quota. (int32 | versions 0+)

  • error_code: (int16 | versions 0+)

  • unknown_state_filters: Set of state filters provided in the request which were unknown to the transaction coordinator ([]string | versions 0+)

  • transaction_states: ([]TransactionState | versions 0+)

    • transactional_id: (string | versions 0+)

    • producer_id: (int64 | versions 0+)

    • transaction_state: The current transaction state of the producer (string | versions 0+)

Returns the current max supported version of this message.

Returns the current min supported version of this message.

Link to this function

serialize_request(map, version)

View Source

Receives a map and serialize it to kafka wire format of the given version.

Input content fields:

  • state_filters: The transaction states to filter by: if empty, all transactions are returned; if non-empty, then only transactions matching one of the filtered states will be returned ([]string | versions 0+)

  • producer_id_filters: The producerIds to filter by: if empty, all transactions will be returned; if non-empty, only transactions which match one of the filtered producerIds will be returned ([]int64 | versions 0+)

  • duration_filter: Duration (in millis) to filter by: if < 0, all transactions will be returned; otherwise, only transactions running longer than this duration will be returned (int64 | versions 1+)