diff options
author | moneromooo-monero <moneromooo-monero@users.noreply.github.com> | 2016-04-17 11:47:22 +0100 |
---|---|---|
committer | moneromooo-monero <moneromooo-monero@users.noreply.github.com> | 2016-04-17 11:47:22 +0100 |
commit | 3102feb56c2274313e40d1d13cb2761f7796bb9b (patch) | |
tree | bf66100c33156704c5ef266efb7064fb5eb3662a /contrib/epee | |
parent | abstract_tcp_server2: avoid deadlock waiting for send queue to drain (diff) | |
download | monero-3102feb56c2274313e40d1d13cb2761f7796bb9b.tar.xz |
abstract_tcp_server2: fix send queue limit warning spam
When the send queue limit is reached, it is likely to not drain
any time soon. If we call close on the connection, it will stay
alive, waiting for the queue to drain before actually closing,
and will hit that check again and again. Since the queue size
limit is the reason we're closing in the first place, we call
shutdown directly.
Diffstat (limited to 'contrib/epee')
-rw-r--r-- | contrib/epee/include/net/abstract_tcp_server2.inl | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/contrib/epee/include/net/abstract_tcp_server2.inl b/contrib/epee/include/net/abstract_tcp_server2.inl index 416a24739..ca9429c91 100644 --- a/contrib/epee/include/net/abstract_tcp_server2.inl +++ b/contrib/epee/include/net/abstract_tcp_server2.inl @@ -514,7 +514,7 @@ PRAGMA_WARNING_DISABLE_VS(4355) if (retry > retry_limit) { _erro("send que size is more than ABSTRACT_SERVER_SEND_QUE_MAX_COUNT(" << ABSTRACT_SERVER_SEND_QUE_MAX_COUNT << "), shutting down connection"); // _dbg1_c("net/sleep", "send que size is more than ABSTRACT_SERVER_SEND_QUE_MAX_COUNT(" << ABSTRACT_SERVER_SEND_QUE_MAX_COUNT << "), shutting down connection"); - close(); + shutdown(); return false; } } |