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

Rust binary protocol and buffered transport cannot handle writes above 4096 bytes

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Critical
    • Resolution: Fixed
    • 0.10.0
    • 0.12.0
    • Rust - Library
    • None
    • docker image ubuntu-artful

    Description

      While working on improving test coverage and fixing busted cross tests I reworked the cpp test client to send binary in at size 0, 1, 2, 4, 6, 16, ..., 131072 and after 4096 the rust server gave up.

      12, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128])
      WARN:thrift::server::threaded: processor completed with error: TransportError { kind: Unknown, message: "failed to write whole buffer" }
      
      Server process is successfully killed.
      

      @gadLinux this may be the root cause of some of the issues you were seeing with the interop against c_glib recently. It is the root cause of some (if not all of) the rs-csharp test failures.

      Attachments

        Issue Links

          Activity

            People

              allengeorge Allen George
              jking3 James E. King III
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: