Large message bodies can be truncated in 0.8 support
----------------------------------------------------

                 Key: QPID-2200
                 URL: https://issues.apache.org/jira/browse/QPID-2200
             Project: Qpid
          Issue Type: Bug
          Components: Python Client
         Environment: Broker tested against was rabbitmq. Source examined 
2cd99f34c from git repo.
            Reporter: Garrett Smith


The implementation of Channel.read_content (peer.py:355) uses the body eof flag 
when looping over frames from the queue.

When using 0.8, the Body implementation (connection08.py:483) hard codes eof = 
False, therefore only one frame is ever read. This can be recreated by reading 
messages with largish body contents. The tipping point in my tests was around 
130K. The broker was rabbitmq 1.7.

My current work around sets eof as follows:

class Body(Frame):

  type = "frame_body"

  def __init__(self, content):
    self.content = content
    self.eof = not content or content[-1] == '\x00'
    self.bof = False

I'm not sure if this is the right fix however.


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:[email protected]

Reply via email to