diff options
| author | Dana Powers <dana.powers@rd.io> | 2015-11-29 10:05:58 +0800 | 
|---|---|---|
| committer | Zack Dever <zack.dever@rd.io> | 2015-12-04 11:25:40 -0800 | 
| commit | 51227eae4f71565cf7abae51a91a6c037f705076 (patch) | |
| tree | 17b65bebb158cb4767a1463adca27ea204601326 /kafka/protocol/message.py | |
| parent | 058567912e8d82c1da5e5ead9e30be532573a173 (diff) | |
| download | kafka-python-51227eae4f71565cf7abae51a91a6c037f705076.tar.gz | |
Use simply counting instead of buffer.tell() -- socket.makefile does not support tell()
Diffstat (limited to 'kafka/protocol/message.py')
| -rw-r--r-- | kafka/protocol/message.py | 6 | 
1 files changed, 4 insertions, 2 deletions
| diff --git a/kafka/protocol/message.py b/kafka/protocol/message.py index 26f5ef6..4024a5c 100644 --- a/kafka/protocol/message.py +++ b/kafka/protocol/message.py @@ -60,8 +60,10 @@ class MessageSet(AbstractType):      @classmethod      def decode(cls, data):          size = Int32.decode(data) -        end = data.tell() + size +        bytes_read = 0          items = [] -        while data.tell() < end: +        while bytes_read < size:              items.append(cls.ITEM.decode(data)) +            msg_size = items[-1][1] +            bytes_read += (8 + 4 + msg_size)          return items | 
