John Sherman has uploaded a new patch set (#5). 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 the TAcceptQueueServer to limit the maximum number of tasks at a time - Removed the previously unenforced thread limit requests from StatestoreService, StatestoreSubscriber, CatalogService. - 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/catalog/catalogd-main.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.cc M be/src/rpc/thrift-server.h M be/src/service/impala-server.cc M be/src/statestore/statestore-subscriber.cc M be/src/statestore/statestored-main.cc M be/src/transport/TSaslServerTransport.cpp M common/thrift/metrics.json 12 files changed, 103 insertions(+), 101 deletions(-) git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/61/7061/5 -- To view, visit http://gerrit.cloudera.org:8080/7061 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-MessageType: newpatchset Gerrit-Change-Id: I56a5f3d9cf931cff14eae7f236fea018236a6255 Gerrit-PatchSet: 5 Gerrit-Project: Impala-ASF Gerrit-Branch: master 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 <m...@cloudera.com> Gerrit-Reviewer: Sailesh Mukil <sail...@cloudera.com>