-
Notifications
You must be signed in to change notification settings - Fork 1.4k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add kafka.structs docstrings (#2080)
Co-authored-by: MostafaElmenabawy <[email protected]>
- Loading branch information
Showing
1 changed file
with
58 additions
and
3 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,27 +1,82 @@ | ||
""" Other useful structs """ | ||
from __future__ import absolute_import | ||
|
||
from collections import namedtuple | ||
|
||
|
||
# Other useful structs | ||
"""A topic and partition tuple | ||
Keyword Arguments: | ||
topic (str): A topic name | ||
partition (int): A partition id | ||
""" | ||
TopicPartition = namedtuple("TopicPartition", | ||
["topic", "partition"]) | ||
|
||
|
||
"""A Kafka broker metadata used by admin tools. | ||
Keyword Arguments: | ||
nodeID (int): The Kafka broker id. | ||
host (str): The Kafka broker hostname. | ||
port (int): The Kafka broker port. | ||
rack (str): The rack of the broker, which is used to in rack aware | ||
partition assignment for fault tolerance. | ||
Examples: `RACK1`, `us-east-1d`. Default: None | ||
""" | ||
BrokerMetadata = namedtuple("BrokerMetadata", | ||
["nodeId", "host", "port", "rack"]) | ||
|
||
|
||
"""A topic partition metadata describing the state in the MetadataResponse. | ||
Keyword Arguments: | ||
topic (str): The topic name of the partition this metadata relates to. | ||
partition (int): The id of the partition this metadata relates to. | ||
leader (int): The id of the broker that is the leader for the partition. | ||
replicas (List[int]): The ids of all brokers that contain replicas of the | ||
partition. | ||
isr (List[int]): The ids of all brokers that contain in-sync replicas of | ||
the partition. | ||
error (KafkaError): A KafkaError object associated with the request for | ||
this partition metadata. | ||
""" | ||
PartitionMetadata = namedtuple("PartitionMetadata", | ||
["topic", "partition", "leader", "replicas", "isr", "error"]) | ||
|
||
|
||
"""The Kafka offset commit API | ||
The Kafka offset commit API allows users to provide additional metadata | ||
(in the form of a string) when an offset is committed. This can be useful | ||
(for example) to store information about which node made the commit, | ||
what time the commit was made, etc. | ||
Keyword Arguments: | ||
offset (int): The offset to be committed | ||
metadata (str): Non-null metadata | ||
""" | ||
OffsetAndMetadata = namedtuple("OffsetAndMetadata", | ||
# TODO add leaderEpoch: OffsetAndMetadata(offset, leaderEpoch, metadata) | ||
["offset", "metadata"]) | ||
|
||
|
||
"""An offset and timestamp tuple | ||
Keyword Arguments: | ||
offset (int): An offset | ||
timestamp (int): The timestamp associated to the offset | ||
""" | ||
OffsetAndTimestamp = namedtuple("OffsetAndTimestamp", | ||
["offset", "timestamp"]) | ||
|
||
|
||
# Define retry policy for async producer | ||
# Limit value: int >= 0, 0 means no retries | ||
"""Define retry policy for async producer | ||
Keyword Arguments: | ||
Limit (int): Number of retries. limit >= 0, 0 means no retries | ||
backoff_ms (int): Milliseconds to backoff. | ||
retry_on_timeouts: | ||
""" | ||
RetryOptions = namedtuple("RetryOptions", | ||
["limit", "backoff_ms", "retry_on_timeouts"]) |