View Source KlifeProtocol.Messages.DescribeQuorum (Klife Protocol v0.8.0)

Kafka protocol DescribeQuorum message

Request versions summary:

  • Version 1 adds additional fields in the response. The request is unchanged (KIP-836). Version 2 adds additional fields in the response. The request is unchanged (KIP-853).

Response versions summary:

  • Version 1 adds LastFetchTimeStamp and LastCaughtUpTimestamp in ReplicaState (KIP-836). Version 2 adds ErrorMessage, Nodes, ErrorMessage in ParitionData, ReplicaDirectoryId in ReplicaState (KIP-853).

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:

  • error_code: The top level error code. (int16 | versions 0+)

  • error_message: The error message, or null if there was no error. (string | versions 2+)

  • topics: The response from the describe quorum API. ([]TopicData | versions 0+)

    • topic_name: The topic name. (string | versions 0+)

    • partitions: The partition data. ([]PartitionData | versions 0+)

      • partition_index: The partition index. (int32 | versions 0+)

      • error_code: The partition error code. (int16 | versions 0+)

      • error_message: The error message, or null if there was no error. (string | versions 2+)

      • leader_id: The ID of the current leader or -1 if the leader is unknown. (int32 | versions 0+)

      • leader_epoch: The latest known leader epoch. (int32 | versions 0+)

      • high_watermark: The high water mark. (int64 | versions 0+)

      • current_voters: The current voters of the partition. ([]ReplicaState | versions 0+)

        • replica_id: The ID of the replica. (int32 | versions 0+)

        • replica_directory_id: The replica directory ID of the replica. (uuid | versions 2+)

        • log_end_offset: The last known log end offset of the follower or -1 if it is unknown. (int64 | versions 0+)

        • last_fetch_timestamp: The last known leader wall clock time time when a follower fetched from the leader. This is reported as -1 both for the current leader or if it is unknown for a voter. (int64 | versions 1+)

        • last_caught_up_timestamp: The leader wall clock append time of the offset for which the follower made the most recent fetch request. This is reported as the current time for the leader and -1 if unknown for a voter. (int64 | versions 1+)

      • observers: The observers of the partition. ([]ReplicaState | versions 0+)

        • replica_id: The ID of the replica. (int32 | versions 0+)

        • replica_directory_id: The replica directory ID of the replica. (uuid | versions 2+)

        • log_end_offset: The last known log end offset of the follower or -1 if it is unknown. (int64 | versions 0+)

        • last_fetch_timestamp: The last known leader wall clock time time when a follower fetched from the leader. This is reported as -1 both for the current leader or if it is unknown for a voter. (int64 | versions 1+)

        • last_caught_up_timestamp: The leader wall clock append time of the offset for which the follower made the most recent fetch request. This is reported as the current time for the leader and -1 if unknown for a voter. (int64 | versions 1+)

  • nodes: The nodes in the quorum. ([]Node | versions 2+)

    • node_id: The ID of the associated node. (int32 | versions 2+)

    • listeners: The listeners of this controller. ([]Listener | versions 2+)

      • name: The name of the endpoint. (string | versions 2+)

      • host: The hostname. (string | versions 2+)

      • port: The port. (uint16 | versions 2+)

Returns the current max supported version of this message.

Returns the current min supported version of this message.

Link to this function

request_schema(unkown_version)

View Source
Link to this function

response_schema(unkown_version)

View Source
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:

  • topics: The topics to describe. ([]TopicData | versions 0+)

    • topic_name: The topic name. (string | versions 0+)

    • partitions: The partitions to describe. ([]PartitionData | versions 0+)

      • partition_index: The partition index. (int32 | versions 0+)