Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
0.4
-
None
-
None
Description
TAsyncClient has this check:
protected void checkReady() {
// Ensure we are not currently executing a method
if (currentMethod != null)
However currentMethod is not being set anywhere.
In my code I have a TAsyncClient and method calls made on it are not necessarily serialized (one starts after previous finishes), so interleaving calls will fail with mysterious messages such as:
java.lang.IllegalArgumentException
at java.nio.ByteBuffer.allocate(ByteBuffer.java:311)
at org.apache.thrift.async.TAsyncMethodCall.doReadingResponseSize(TAsyncMethodCall.java:175)
at org.apache.thrift.async.TAsyncMethodCall.transition(TAsyncMethodCall.java:128)
at org.apache.thrift.async.TAsyncClientManager$SelectThread.run(TAsyncClientManager.java:99)