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

IAsyncResult style methods not being supported by certain transports leads to issues in mixed ISync/IAsync use cases

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 0.12.0
    • C# - Compiler
    • Patch Available

    Description

      The csharp:async switch causes the compiler to change the implementation of the client side call stubs to always use IAsyncResult. This causes issues, because the IAsyncResult call style is not supported by all transports.

      If such a transport is used, the code finally calls the TTransport implementations of BeginFlush and EndFlush - either one of these simply throws an exception, causing the outgoing call to fail.

      What is highly unexpected here is the fact, that due to the send_Xxx method implementation change also ISync interface is affected as soon as csharp:async is used.

      Attachments

        Activity

          People

            jensg Jens Geyer
            jensg Jens Geyer
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: