Re: [libtorrent] force_reannounce() doesn't seem to do anything
Brought to you by:
arvidn
|
From: Murray S. K. <sup...@gm...> - 2017-09-22 00:25:54
|
On Sat, Sep 16, 2017 at 2:05 PM, Arvid Norberg <arv...@gm...>
wrote:
> > While talking to about 14 trackers that have min_announce set to 30
> > seconds, my clients calling force_reannounce() don't seem to actually do
> > any new tracker announces. Is there more I have to do to make the
> > reannounces happen every time?
>
> There are a few obvious things that can make libtorrent ignore the call to
> force a tracker announce:
>
> 1. If the torrent is paused it will silently ignore it
> 2. If the tracker index is not -1 but still out of bounds in the tracker
> list.
> 3. if the time you specify in the call is invalid and refers to a time far
> into the future
>
None of these appear to be the case. We just call
torrent_handle.force_reannounce() with no arguments, so the tracker index
is -1 (the default) and the time specified is 0 ("now", the default).
To get a hint about what's going on, I would recommend querying the tracker
> list periodically to see their status. The announce_entry includes the time
> the next announce is scheduled for. Immediately after a force_announce
> (with a time stamp of now or in the past) should be set to 1 second from
> now.
>
At the time we request a reannounce, I captured the information in the
tracker list from the torrent handle. Here's what it had in the first
entry:
TRACKER: trackerid message None last_error None next_announce 617283339194
min_announce 617283339194 scrape_incomplete 0 scrape_complete 1
scrape_downloaded -1 tier 0 fail_limit 0 fails 0 updating False source 1
verified True start_sent True complete_sent True send_stats True
"trackerid" appears to be an empty string. I don't know if those are
legitimate timestamps or not. They sure don't look like epoch times, but
internally they are boost::posix_time objects so maybe the internal
implementation does something interesting with them. We're pulling these
through python bindings. On the other hand if they're supposed to be
typical epoch times, it's obvious why the reannounces aren't happening
because those are way bigger than the current epoch time.
-MSK
|