Is there a way to get sabnzbd to treat "499 Remote server unavailable." articles as missing and skip them immediately?
I had the following problem today (version 0.7.9, with usenext):
A download was stuck at 99% and just would not finish downloading. The three last files were nearly done (49.7 of 50Mb) but nothing happened and the logs didn't show any actual errors and no missing articles up to that point.
So I checked with wireshark and the server was responding with "499 Remote server unavailable." for the last 3 articles.
Sabnzbd was waiting the set timeout amount and then retried the articles multiple times.
After that I just set timeout and retry to very low values and it finished within a minute and a few articles missing.
I had the same problem a few times before but never really bothered to check up on it.
Is there anything else I can do about that, because this solution isn't really ideal since the server sometimes responds pretty slowly so I don't really want to keep the timeout that low?
Treat 499 articles as missing?
Forum rules
Help us help you:
Help us help you:
- Are you using the latest stable version of SABnzbd? Downloads page.
- Tell us what system you run SABnzbd on.
- Adhere to the forum rules.
- Do you experience problems during downloading?
Check your connection in Status and Interface settings window.
Use Test Server in Config > Servers.
We will probably ask you to do a test using only basic settings. - Do you experience problems during repair or unpacking?
Enable +Debug logging in the Status and Interface settings window and share the relevant parts of the log here using [ code ] sections.
Re: Treat 499 articles as missing?
Do you run SABnzbd from source? If so, the file sabnzbd/downloader.py contains this piece of code:
So do you mean want to put 499 in that if-line? What happens when you do?
FWIW: RFC 977 / 3977 says this about 499:
So it's a non-standard answerd. What does your server give as reason after the 499?
Code: Select all
elif code in ('411', '423', '430'):
done = True
nw.lines = None
logging.info('Thread %s@%s:%s: Article ' + \
'%s missing (error=%s)',
nw.thrdnum, nw.server.host,
nw.server.port, article.article, code)
FWIW: RFC 977 / 3977 says this about 499:
Code: Select all
The first digit of the response broadly indicates the success,
failure, or progress of the previous command:
1xx - Informative message
2xx - Command completed OK
3xx - Command OK so far; send the rest of it
4xx - Command was syntactically correct but failed for some reason
5xx - Command unknown, unsupported, unavailable, or syntax error
The next digit in the code indicates the function response category:
x0x - Connection, setup, and miscellaneous messages
x1x - Newsgroup selection
x2x - Article selection
x3x - Distribution functions
x4x - Posting
x8x - Reserved for authentication and privacy extensions
x9x - Reserved for private use (non-standard extensions)
Re: Treat 499 articles as missing?
That would not be a correct action.ratchet wrote:Is there a way to get sabnzbd to treat "499 Remote server unavailable." articles as missing and skip them immediately?
499 does not mean that an article is unavailable, but that the server has a (temporary) problem.
One "solution" would be to set that server as "optional", which means that it will be
ignored for 10 minutes after it causes to many timeouts or errors.
Re: Treat 499 articles as missing?
I will try that, thank you very much.sander wrote:Do you run SABnzbd from source? If so, the file sabnzbd/downloader.py contains this piece of code:
Nothing else, just the "499 Remote server unavailable." But this only happens with a few articles, all others still work.sander wrote: So it's a non-standard answerd. What does your server give as reason after the 499?
Unfortunately usenext is pretty crappy and these problems never go away. So it just seems easier to ignore the articles right away instead of retrying them since they never become available anyway. But this only happens with a few articles, most still work without problems, I probably should have made that more clear in my post.shypike wrote: That would not be a correct action.
499 does not mean that an article is unavailable, but that the server has a (temporary) problem.
One "solution" would be to set that server as "optional", which means that it will be
ignored for 10 minutes after it causes to many timeouts or errors.
Also I don't have any other servers I could use.

