forked from premiere/premiere-libtorrent
added performance alert for address-in-use errors
This commit is contained in:
parent
89554179f6
commit
5a8037dba2
|
@ -6969,7 +6969,8 @@ upload or download rate performance.
|
|||
download_limit_too_low,
|
||||
send_buffer_watermark_too_low,
|
||||
too_many_optimistic_unchoke_slots,
|
||||
too_high_disk_queue_limit
|
||||
too_high_disk_queue_limit,
|
||||
too_few_outgoing_ports
|
||||
};
|
||||
|
||||
performance_warning_t warning_code;
|
||||
|
@ -7039,6 +7040,12 @@ too_high_disk_queue_limit
|
|||
portions of the cache before allowing peers to download any more, onto the disk write
|
||||
queue. Either lower ``max_queued_disk_bytes`` or increase ``cache_size``.
|
||||
|
||||
too_few_outgoing_ports
|
||||
This is generated if outgoing peer connections are failing because of *address in use*
|
||||
errors, indicating that ``session_settings::outgoing_ports`` is set and is too small of
|
||||
a range. Consider not using the ``outgoing_ports`` setting at all, or widen the range to
|
||||
include more ports.
|
||||
|
||||
state_changed_alert
|
||||
-------------------
|
||||
|
||||
|
|
|
@ -225,7 +225,7 @@ namespace libtorrent
|
|||
too_many_optimistic_unchoke_slots,
|
||||
bittyrant_with_no_uplimit,
|
||||
too_high_disk_queue_limit,
|
||||
|
||||
too_few_outgoing_ports,
|
||||
|
||||
|
||||
num_warnings
|
||||
|
|
|
@ -119,7 +119,8 @@ namespace libtorrent {
|
|||
"send buffer watermark too low (upload rate will suffer)",
|
||||
"too many optimistic unchoke slots",
|
||||
"using bittyrant unchoker with no upload rate limit set",
|
||||
"the disk queue limit is too high compared to the cache size. The disk queue eats into the cache size"
|
||||
"the disk queue limit is too high compared to the cache size. The disk queue eats into the cache size",
|
||||
"too few ports allowed for outgoing connections"
|
||||
};
|
||||
|
||||
return torrent_alert::message() + ": performance warning: "
|
||||
|
|
|
@ -3603,6 +3603,14 @@ namespace libtorrent
|
|||
torrent_handle handle;
|
||||
if (t) handle = t->get_handle();
|
||||
|
||||
if (ec == error::address_in_use
|
||||
&& m_ses.m_settings.outgoing_ports.first != 0)
|
||||
{
|
||||
if (m_ses.m_alerts.should_post<performance_alert>())
|
||||
m_ses.m_alerts.post_alert(performance_alert(
|
||||
handle, performance_alert::too_few_outgoing_ports));
|
||||
}
|
||||
|
||||
if (ec)
|
||||
{
|
||||
if ((error > 1 || ec.category() == socks_category)
|
||||
|
|
Loading…
Reference in New Issue