diff --git a/tools/load_tester.cpp b/tools/load_tester.cpp index e4a751a..ee46b55 100644 --- a/tools/load_tester.cpp +++ b/tools/load_tester.cpp @@ -732,10 +732,10 @@ int main(int argc, char *argv[]) { perror("shutdown"); continue; } - event.events = EPOLLIN | EPOLLONESHOT | EPOLLRDHUP; + event.events = EPOLLIN | EPOLLONESHOT; } else { - // Partial write, need to continue writing - event.events = EPOLLOUT | EPOLLONESHOT | EPOLLRDHUP; + event.events = + (conn->hasMessages() ? EPOLLOUT : EPOLLIN) | EPOLLONESHOT; } // Add to epoll for network threads to handle remaining I/O