Uploaded image for project: 'Thrift'
  1. Thrift
  2. THRIFT-4131

Javascript with WebSocket handles oneway methods wrong

    XMLWordPrintableJSON

Details

    Description

      When using the WebSocket transport all client->server calls install a callback, and we depend on these callbacks being push()'ed and shift()'ed sequentially, however, oneway methods never gets a reply, and therefore the installed callback doesn't get removed, causing the callback array to get "out of synchronization" so to speak, and subsequent calls, now deal with the wrong callbacks, as data comes in.

      To remedy this I changed the compiler/generator to send a null callback to the transport->flush method for oneway methods, and then in the WebSocket transport code, make a null check and only install defined callbacks. This seem to fix it for me. I can send in patches if necessary.

      Attachments

        Issue Links

          Activity

            People

              jking3 James E. King III
              mh_newtec Martin Hejnfelt
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: