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

generated oneway functions encode as T_CALL not T_ONEWAY

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 0.9.1
    • None
    • C++ - Compiler
    • None
    • Patch Available

    Description

      Steven Varga wrote:

      Hi,

      the following service generates oneway RPC call flagged with T_CALL flag as
      opposed to expected T_ONEWAY; I need the T_ONEWAY flag to implement proper
      zero MQ message passing. Zero MQ message passing system differentiates
      between request - reply patterns and push - pull ones at socket level;

      Am I doing something wrong ?

      best,
      steve

      service foo {
      oneway void bar( 1:string value );
      }

      void fooClient::put( const std::string& value ) {
      send_bar( value ); // <- this is correct that recv_xxx is missing
      }

      // ----- incorrect or unreasoned T_CALL instead of T_ONEWAY
      void fooClient::send_bar(const std::string& value) {
      int32_t cseqid = 0;
      oprot_->writeMessageBegin("bar", ::apache::thrift::protocol::T_CALL,
      cseqid);
      ....
      }

      Attachments

        Issue Links

          Activity

            People

              jensg Jens Geyer
              hcorg Konrad Grochowski
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: