You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@thrift.apache.org by "Philip Frank (JIRA)" <ji...@apache.org> on 2017/12/27 11:09:00 UTC

[jira] [Created] (THRIFT-4437) JS WebSocket client callbacks invoked twice on parallel requests

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)