Skip to content

Commit b8d40b5

Browse files
authored
Validate that serializers generate bytes-like (or None) data (dpkp#1420)
1 parent 22e3f75 commit b8d40b5

File tree

1 file changed

+3
-2
lines changed

1 file changed

+3
-2
lines changed

kafka/producer/kafka.py

+3-2
Original file line numberDiff line numberDiff line change
@@ -540,8 +540,6 @@ def send(self, topic, value=None, key=None, partition=None, timestamp_ms=None):
540540
assert not (value is None and key is None), 'Need at least one: key or value'
541541
key_bytes = value_bytes = None
542542
try:
543-
# first make sure the metadata for the topic is
544-
# available
545543
self._wait_on_metadata(topic, self.config['max_block_ms'] / 1000.0)
546544

547545
key_bytes = self._serialize(
@@ -550,6 +548,9 @@ def send(self, topic, value=None, key=None, partition=None, timestamp_ms=None):
550548
value_bytes = self._serialize(
551549
self.config['value_serializer'],
552550
topic, value)
551+
assert type(key_bytes) in (bytes, bytearray, memoryview, type(None))
552+
assert type(value_bytes) in (bytes, bytearray, memoryview, type(None))
553+
553554
partition = self._partition(topic, partition, key, value,
554555
key_bytes, value_bytes)
555556

0 commit comments

Comments
 (0)