Jens Geyer created THRIFT-4672:
----------------------------------

             Summary: IAsyncResult style methods not being supported by certain 
transports leads to issues in mixed ISync/IAsync use cases
                 Key: THRIFT-4672
                 URL: https://issues.apache.org/jira/browse/THRIFT-4672
             Project: Thrift
          Issue Type: Bug
          Components: C# - Compiler
            Reporter: Jens Geyer
            Assignee: Jens Geyer


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.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to