Hello Henry Robinson, Michael Brown, Matthew Jacobs, Sailesh Mukil, Dan Hecht,
I'd like you to reexamine a change. Please visit http://gerrit.cloudera.org:8080/7061 to look at the new patch set (#11). Change subject: IMPALA-5394: Change ThriftServer() to always use TAcceptQueueServer ...................................................................... IMPALA-5394: Change ThriftServer() to always use TAcceptQueueServer - Previously TThreadPoolServer called getTransport() on a client from the Server thread (the thread that did the accepts). - TSaslServerTransport->getTransport() called TSaslTransport->open() - TSaslServerTransport->open() tried to negotiate SASL which calls read/write - If read/write blocks indefinitely, the TThreadPoolServer could not accept connections until tcp_keepalive kicked in. - Set the underlying TSocket's recvTimeout and sendTimeout before the TSaslServerTransport->open() and reset them to 0 after open() completes. - Added sasl_connect_tcp_timeout_ms flag that defaults to 300000 milliseconds (5 minutes) - Add the ability for TAcceptQueueServer to limit the maximum number of concurrent tasks - Added a test case to thrift-server-test to test max_concurrent_connections enforcement - Changed the remaining Thrift servers to use TAcceptQueueServer. (hs2/beeswax/network-perf-benchmark) - The timeout is still needed in TAcceptQueueServer since SetupConnection follows a similar pattern that TThreadPoolServer does. - Removed support for TThreadPool from ThriftServer() since it is no longer used anywhere. ThriftServer() now always uses TAcceptQueueServer. - Deprecated enable_accept_queue_server flag and removed supporting code. Change-Id: I56a5f3d9cf931cff14eae7f236fea018236a6255 --- M be/src/benchmarks/network-perf-benchmark.cc M be/src/common/global-flags.cc M be/src/rpc/TAcceptQueueServer.cpp M be/src/rpc/TAcceptQueueServer.h M be/src/rpc/thrift-server-test.cc M be/src/rpc/thrift-server.cc M be/src/rpc/thrift-server.h M be/src/service/impala-server.cc M be/src/transport/TSaslServerTransport.cpp M common/thrift/metrics.json 10 files changed, 157 insertions(+), 110 deletions(-) git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/61/7061/11 -- To view, visit http://gerrit.cloudera.org:8080/7061 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-MessageType: newpatchset Gerrit-Change-Id: I56a5f3d9cf931cff14eae7f236fea018236a6255 Gerrit-Change-Number: 7061 Gerrit-PatchSet: 11 Gerrit-Owner: John Sherman <j...@arcadiadata.com> Gerrit-Reviewer: Dan Hecht <dhe...@cloudera.com> Gerrit-Reviewer: Henry Robinson <he...@cloudera.com> Gerrit-Reviewer: John Sherman <j...@arcadiadata.com> Gerrit-Reviewer: Matthew Jacobs <mjac...@apache.org> Gerrit-Reviewer: Michael Brown <mi...@cloudera.com> Gerrit-Reviewer: Sailesh Mukil <sail...@cloudera.com>