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

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

VotersWatch issueWatchersLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Critical
    • Resolution: Fixed
    • Affects Version/s: 0.10.0
    • Fix Version/s: 0.12.0
    • Component/s: Rust - Library
    • Labels:
      None
    • Environment:

      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

          Activity

            People

            • Assignee:
              allengeorge Allen George
              Reporter:
              jking3 James E. King III

              Dates

              • Created:
                Updated:
                Resolved:

                Issue deployment