summaryrefslogtreecommitdiff
path: root/kafka/record/default_records.py
diff options
context:
space:
mode:
Diffstat (limited to 'kafka/record/default_records.py')
-rw-r--r--kafka/record/default_records.py10
1 files changed, 10 insertions, 0 deletions
diff --git a/kafka/record/default_records.py b/kafka/record/default_records.py
index 7f0e2b3..07368bb 100644
--- a/kafka/record/default_records.py
+++ b/kafka/record/default_records.py
@@ -70,6 +70,8 @@ import kafka.codec as codecs
class DefaultRecordBase(object):
+ __slots__ = ()
+
HEADER_STRUCT = struct.Struct(
">q" # BaseOffset => Int64
"i" # Length => Int32
@@ -116,6 +118,9 @@ class DefaultRecordBase(object):
class DefaultRecordBatch(DefaultRecordBase, ABCRecordBatch):
+ __slots__ = ("_buffer", "_header_data", "_pos", "_num_records",
+ "_next_record_index", "_decompressed")
+
def __init__(self, buffer):
self._buffer = bytearray(buffer)
self._header_data = self.HEADER_STRUCT.unpack_from(self._buffer)
@@ -358,6 +363,11 @@ class DefaultRecordBatchBuilder(DefaultRecordBase, ABCRecordBatchBuilder):
# 5 bytes length + 10 bytes timestamp + 5 bytes offset + 1 byte attributes
MAX_RECORD_OVERHEAD = 21
+ __slots__ = ("_magic", "_compression_type", "_batch_size", "_is_transactional",
+ "_producer_id", "_producer_epoch", "_base_sequence",
+ "_first_timestamp", "_max_timestamp", "_last_offset", "_num_records",
+ "_buffer")
+
def __init__(
self, magic, compression_type, is_transactional,
producer_id, producer_epoch, base_sequence, batch_size):