summaryrefslogtreecommitdiff
path: root/kafka/producer/kafka.py
diff options
context:
space:
mode:
authorDana Powers <dana.powers@rd.io>2018-03-08 10:49:00 -0500
committerDana Powers <dana.powers@rd.io>2018-03-08 10:49:00 -0500
commit977c7dd34689602e0babe7b134a0059b6fe19a00 (patch)
tree34cfdbcad5c81ffce530d308725fa121b85a46eb /kafka/producer/kafka.py
parenta6130d288f84af7ffe054bdf301bc40febe07719 (diff)
downloadkafka-python-validate_serialized_bytes.tar.gz
Validate that serializers generate bytes-like (or None) datavalidate_serialized_bytes
Diffstat (limited to 'kafka/producer/kafka.py')
-rw-r--r--kafka/producer/kafka.py5
1 files changed, 3 insertions, 2 deletions
diff --git a/kafka/producer/kafka.py b/kafka/producer/kafka.py
index 4a93de6..7f5f0f6 100644
--- a/kafka/producer/kafka.py
+++ b/kafka/producer/kafka.py
@@ -541,8 +541,6 @@ class KafkaProducer(object):
assert not (value is None and key is None), 'Need at least one: key or value'
key_bytes = value_bytes = None
try:
- # first make sure the metadata for the topic is
- # available
self._wait_on_metadata(topic, self.config['max_block_ms'] / 1000.0)
key_bytes = self._serialize(
@@ -551,6 +549,9 @@ class KafkaProducer(object):
value_bytes = self._serialize(
self.config['value_serializer'],
topic, value)
+ assert type(key_bytes) in (bytes, bytearray, memoryview, type(None))
+ assert type(value_bytes) in (bytes, bytearray, memoryview, type(None))
+
partition = self._partition(topic, partition, key, value,
key_bytes, value_bytes)