Thomas Tauber-Marshall has uploaded a new change for review. http://gerrit.cloudera.org:8080/4519
Change subject: IMPALA-4135: Thrift threaded server times-out connections during high load ...................................................................... IMPALA-4135: Thrift threaded server times-out connections during high load During times of high load, Thrift's TThreadedServer can't keep up with the rate of new socket connections, causing some to time out. This patch creates TAcceptQueueThreadedServer, which is a modified version of TThreadedServer that calls accept() and then hands the returned TTransport off to a thread pool to handle setting up the connection. This ensures that accept() is called as quickly as possible, preventing connections from timing out while waiting. This patch has been tested locally with the repro shown in IMPALA-4135, but it still needs to be tested in a real cluster. Change-Id: Ie50e728974ef31a9d49132a0b3f7cde2a4f3356d --- M be/CMakeLists.txt M be/src/rpc/thrift-server.cc A be/src/server/CMakeLists.txt A be/src/server/TAcceptQueueThreadedServer.cpp A be/src/server/TAcceptQueueThreadedServer.h 5 files changed, 449 insertions(+), 2 deletions(-) git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/19/4519/1 -- To view, visit http://gerrit.cloudera.org:8080/4519 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ie50e728974ef31a9d49132a0b3f7cde2a4f3356d Gerrit-PatchSet: 1 Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-Owner: Thomas Tauber-Marshall <[email protected]>
