From 8ccb02f450ca77e10c3401f24359f8ead505ea6b Mon Sep 17 00:00:00 2001 From: Andrew Noyes Date: Wed, 20 Aug 2025 14:09:39 -0400 Subject: [PATCH] We don't want to close the connection on EPOLLRDHUP We'll rely on the errors from reads and writes to close the connections --- src/server.cpp | 2 +- tools/load_tester.cpp | 3 +-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/src/server.cpp b/src/server.cpp index 711b217..9bac3cc 100644 --- a/src/server.cpp +++ b/src/server.cpp @@ -313,7 +313,7 @@ void Server::start_network_threads() { conn->tsan_acquire(); events[i].data.ptr = nullptr; - if (events[i].events & (EPOLLERR | EPOLLHUP | EPOLLRDHUP)) { + if (events[i].events & EPOLLERR) { continue; // Connection closed - unique_ptr destructor cleans up } diff --git a/tools/load_tester.cpp b/tools/load_tester.cpp index 326c9b5..c27e833 100644 --- a/tools/load_tester.cpp +++ b/tools/load_tester.cpp @@ -547,8 +547,7 @@ int main(int argc, char *argv[]) { events[i].data.ptr = nullptr; const int fd = conn->fd; - // Handle connection errors like server - if (events[i].events & (EPOLLERR | EPOLLHUP | EPOLLRDHUP)) { + if (events[i].events & EPOLLERR) { continue; // Let unique_ptr destructor clean up } if (events[i].events & EPOLLOUT) {