Treat 499 articles as missing?

Get help with all aspects of SABnzbd
Forum rules
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.
Post Reply
ratchet
Newbie
Newbie
Posts: 2
Joined: January 28th, 2013, 1:14 am

Treat 499 articles as missing?

Post by ratchet »

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?
User avatar
sander
Release Testers
Release Testers
Posts: 9429
Joined: January 22nd, 2008, 2:22 pm

Re: Treat 499 articles as missing?

Post by sander »

Do you run SABnzbd from source? If so, the file sabnzbd/downloader.py contains this piece of code:

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)
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:

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)
So it's a non-standard answerd. What does your server give as reason after the 499?
User avatar
shypike
Administrator
Administrator
Posts: 19773
Joined: January 18th, 2008, 12:49 pm

Re: Treat 499 articles as missing?

Post by shypike »

ratchet wrote:Is there a way to get sabnzbd to treat "499 Remote server unavailable." articles as missing and skip them immediately?
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.
ratchet
Newbie
Newbie
Posts: 2
Joined: January 28th, 2013, 1:14 am

Re: Treat 499 articles as missing?

Post by ratchet »

sander wrote:Do you run SABnzbd from source? If so, the file sabnzbd/downloader.py contains this piece of code:
I will try that, thank you very much.
sander wrote: So it's a non-standard answerd. What does your server give as reason after the 499?
Nothing else, just the "499 Remote server unavailable." But this only happens with a few articles, all others still work.
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.
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.
Also I don't have any other servers I could use.
Post Reply