diff options
author | Dana Powers <dana.powers@rd.io> | 2018-03-08 10:49:00 -0500 |
---|---|---|
committer | Dana Powers <dana.powers@rd.io> | 2018-03-08 10:49:00 -0500 |
commit | 977c7dd34689602e0babe7b134a0059b6fe19a00 (patch) | |
tree | 34cfdbcad5c81ffce530d308725fa121b85a46eb | |
parent | a6130d288f84af7ffe054bdf301bc40febe07719 (diff) | |
download | kafka-python-validate_serialized_bytes.tar.gz |
Validate that serializers generate bytes-like (or None) datavalidate_serialized_bytes
-rw-r--r-- | kafka/producer/kafka.py | 5 |
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) |