Open
Description
Consider the following patch:
diff --git a/test/ClientTest.cpp b/test/ClientTest.cpp
index e606010..410b624 100644
--- a/test/ClientTest.cpp
+++ b/test/ClientTest.cpp
@@ -293,6 +293,10 @@ many_conn_ping(Connector<BUFFER, NetProvider> &client)
client.close(conn1);
client.close(conn2);
client.close(conn3);
+
+ /** All the connections are closed - we shouldn't get any here. */
+ conn_opt = client.waitAny(WAIT_TIMEOUT);
+ fail_if(conn_opt.has_value());
}
/** Single connection, errors in response. */
The test fails (with EpollNetProvider
, at least) - it happens because ready to decode connections are still referenced by Connector
. The fix is quite trivial, but we should investigate the state machine - I'm sure there are more places holding closed connections.
Metadata
Metadata
Assignees
Labels
No labels