[ http://issues.apache.org/jira/browse/AXISCPP-609?page=comments#action_12318334 ]
Fred Preston commented on AXISCPP-609: -------------------------------------- Hi All, I have read through Bernd's code and it has several improvements, but includes one feature that I think may be a dissadvantage. The only thing that I found that I disagree with is that the whole message is read in before it is passed back for processing (if this is not the case please let me know as I was going a bit 'code blind' by the end of reading through all of the changes!). For very large messages, especially over slow or busy links, the time taken to receive the message could be quite long and during the delays between chunks, control could have been handed back to XML to do a bit more processing so speeding up the overall processing time. One strong point of the improvements is that Bernd is using the chunk sizes to find the beginning of the next chunk in the message whereas the code currently uses the character sequence 0x0D0A (CR+LF) as a way of finding the beginning of the next chunk. Obviously, if the data contains any 0x0D0A sequence, it will assume that this represents the end of the current chunk and then bytes could be lost as it interprets data bytes as the next chunk size. My proposal is that we change the way that the code currently looks for and processes data chunks but do not wait for the whole message to be read before returning the mssage. Thus we incorporate the ideas behind the work done by Bernd, but keep it in the existing 1.6 framework. Regards, Fred Preston. > Multi chunked http responses miss some bytes randomly > ----------------------------------------------------- > > Key: AXISCPP-609 > URL: http://issues.apache.org/jira/browse/AXISCPP-609 > Project: Axis-C++ > Type: Bug > Components: Transport (axis3) > Versions: unspecified > Environment: The issue is not specific of a particular environment > Reporter: Arcangelo Di Balsamo > Attachments: HTTPTransport.cpp, HTTPTransport.cpp, HTTPTransport.cpp, > HTTPTransport.cpp, HTTPTransport.cpp, HTTPTransport.dll, HTTPTransport.hpp, > HTTPTransport.zip, axis-c-1-5_transport.zip > > Multi chunked http responses miss some bytes randomly. > The issue is partially related to the AXISCPP-518 reported by myself too. > The bug is in the getBytes method of HTTPTransport class. > I made a tentative fix, that I've deeply tested. > In the fix I did, I've changed a little bit the implementation logic. > Splitting the getBytes method in more methods should be a nice to have. > I'm attaching the modified file. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira
