ctubbsii opened a new pull request, #5721: URL: https://github.com/apache/accumulo/pull/5721
Update SimpleThriftServiceRunner, used by ThriftBehaviorIT with a thrift protocol that logs the order in which clients and servers call protocol read and write message methods. In testing, the logging shows the following ordering: One-way methods: client:writeMessageBegin serverInput:readMessageBegin client:writeMessageEnd serverInput:readMessageEnd Two-way (regular, including void) methods: client:writeMessageBegin serverInput:readMessageBegin client:writeMessageEnd serverInput:readMessageEnd serverOutput:writeMessageBegin client:readMessageBegin serverOutput:writeMessageEnd client:readMessageEnd Note: the order of the End methods are soemtimes swapped. It seems that the ordering of those is nondeterministic, which makes sense because they happen in different processes, and neither side has anything more to do to read/write the message, and can move on to the End methods independently. The client uses its protocol instance to send RPC messages using the write methods, and uses the read methods to receive server response messages. The server can specify a separate input and output protocol, and uses the read methods on the input protocol to receive client RPC messages, and uses the output protocol to send response messages (either the result of an RPC operation or a serialized exception). The output protocol is not used by thrift oneway methods. This commit also adds coverage of two-way void methods. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: notifications-unsubscr...@accumulo.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org