summaryrefslogtreecommitdiff
path: root/kafka/protocol/message.py
diff options
context:
space:
mode:
authorDana Powers <dana.powers@gmail.com>2016-05-22 17:14:03 -0700
committerDana Powers <dana.powers@gmail.com>2016-05-22 17:14:03 -0700
commit1d4251a9efa4c5466ba5095f3ba199bf082a72b5 (patch)
tree0393a7b7768f449174216fb6b0702a87844a5a81 /kafka/protocol/message.py
parent96530f6a9c4a31d23b069ba162dba6cf45a5efd0 (diff)
downloadkafka-python-1d4251a9efa4c5466ba5095f3ba199bf082a72b5.tar.gz
Use standard LZ4 framing for v1 messages / kafka 0.10 (#695)
* LZ4 framing fixed in 0.10 / message v1 -- retain broken lz4 code for compatibility * lz4f does not support easy incremental decompression - raise RuntimeError * Update lz4 codec tests
Diffstat (limited to 'kafka/protocol/message.py')
-rw-r--r--kafka/protocol/message.py8
1 files changed, 6 insertions, 2 deletions
diff --git a/kafka/protocol/message.py b/kafka/protocol/message.py
index 473ca56..78840fc 100644
--- a/kafka/protocol/message.py
+++ b/kafka/protocol/message.py
@@ -2,7 +2,8 @@ import io
import time
from ..codec import (has_gzip, has_snappy, has_lz4,
- gzip_decode, snappy_decode, lz4_decode)
+ gzip_decode, snappy_decode,
+ lz4_decode, lz4_decode_old_kafka)
from . import pickle
from .struct import Struct
from .types import (
@@ -116,7 +117,10 @@ class Message(Struct):
raw_bytes = snappy_decode(self.value)
elif codec == self.CODEC_LZ4:
assert has_lz4(), 'LZ4 decompression unsupported'
- raw_bytes = lz4_decode(self.value)
+ if self.magic == 0:
+ raw_bytes = lz4_decode_old_kafka(self.value)
+ else:
+ raw_bytes = lz4_decode(self.value)
else:
raise Exception('This should be impossible')