Philip Frank created THRIFT-4437:
------------------------------------
Summary: JS WebSocket client callbacks invoked twice on parallel
requests
Key: THRIFT-4437
URL: https://issues.apache.org/jira/browse/THRIFT-4437
Project: Thrift
Issue Type: Bug
Components: JavaScript - Library
Affects Versions: 0.11.0
Reporter: Philip Frank
When using a WebSocket Transport and doing two service calls immediately,
without waiting for the first to return, e.g. like this:
{code:javascript}
const t = new Thrift.TWebSocketTransport('ws://localhost:8338/hello');
const p = new Thrift.TJSONProtocol(t);
const client = new HelloSvcClient(p);
t.open();
client.test(function (res) {
console.log(1, res);
});
client.test(function (res) {
console.log(2, res);
});
{code}
The callback to the first invocation is called twice, and the second never,
i.e. console shows:
{code}
1 "test result"
1 "test result"
{code}
instead of the expected
{code}
1 "test result"
2 "test result"
{code}
I suspect this bug was introduced with the patch for
https://issues.apache.org/jira/browse/THRIFT-4131 where for some reason the
callback registered twice when set:
https://github.com/apache/thrift/pull/1372/files
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)