Author: rgodfrey
Date: Wed Jul 29 10:45:47 2015
New Revision: 1693239
URL: http://svn.apache.org/r1693239
Log:
QPID-6662 : expand the input buffer if the protocol engine requires more data
than the default size before it can successfully process
Modified:
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/transport/NonBlockingConnection.java
Modified:
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/transport/NonBlockingConnection.java
URL:
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/transport/NonBlockingConnection.java?rev=1693239&r1=1693238&r2=1693239&view=diff
==============================================================================
---
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/transport/NonBlockingConnection.java
(original)
+++
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/transport/NonBlockingConnection.java
Wed Jul 29 10:45:47 2015
@@ -358,9 +358,18 @@ public class NonBlockingConnection imple
}
else
{
- // compact into new buffer
- _netInputBuffer = ByteBuffer.allocateDirect(_receiveBufferSize);
- _netInputBuffer.put(duplicate);
+ if(duplicate.remaining() < _receiveBufferSize)
+ {
+ // compact into new buffer
+ _netInputBuffer =
ByteBuffer.allocateDirect(_receiveBufferSize);
+ _netInputBuffer.put(duplicate);
+ }
+ else
+ {
+ // grow the buffer
+ _netInputBuffer =
ByteBuffer.allocateDirect(_receiveBufferSize+_netInputBuffer.capacity());
+ _netInputBuffer.put(duplicate);
+ }
}
return readData;
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]