Sab keeps crashing: AttributeError: 'NoneType' object has no attribute 'bytes'

Report & discuss bugs found in 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.
KageKeeper
Newbie
Newbie
Posts: 8
Joined: June 13th, 2022, 11:55 am

Sab keeps crashing: AttributeError: 'NoneType' object has no attribute 'bytes'

Post by KageKeeper »

I am running Sab in Docker using linuxserver[dot]io image version 3.6.0-ls66. Docker is hosted on Ubuntu 20.04.

Sab has been working as expected. However, within the last couple of days Sab has been very unstable, and keeps crashing, restarting, and crashing again.

I would post the logs or a pastebin, but I am not allowed to post links. Even though I have replaced any 'links' I am unable to post it. How would you like me to show the logs?

I appreciate any assistance.
User avatar
sander
Release Testers
Release Testers
Posts: 8811
Joined: January 22nd, 2008, 2:22 pm

Re: Sab keeps crashing...

Post by sander »

post on pastebin, and post the link here like pastebin . com / akdsjflkjalsdjlf
KageKeeper
Newbie
Newbie
Posts: 8
Joined: June 13th, 2022, 11:55 am

Re: Sab keeps crashing...

Post by KageKeeper »

Gotcha. Thank you.

pastebin . com / 93yyfiGw
User avatar
sander
Release Testers
Release Testers
Posts: 8811
Joined: January 22nd, 2008, 2:22 pm

Re: Sab keeps crashing...

Post by sander »

OK, so https://pastebin.com/93yyfiGw

Code: Select all

/usr/lib/python3.9/site-packages/cherrypy/process/servers.py:416: UserWarning: Unable to verify that the server is bound on 8080
  warnings.warn(msg)
Exception in thread Thread-1:
Traceback (most recent call last):
  File "/usr/lib/python3.9/threading.py", line 973, in _bootstrap_inner
    self.run()
  File "/app/sabnzbd/sabnzbd/downloader.py", line 935, in run
    self.decode(article, nw.data)
  File "/app/sabnzbd/sabnzbd/downloader.py", line 523, in decode
    sabnzbd.NzbQueue.register_article(article, success=False)
  File "/app/sabnzbd/sabnzbd/nzbqueue.py", line 754, in register_article
    and not sabnzbd.Assembler.partial_nzf_in_queue(nzf)
  File "/app/sabnzbd/sabnzbd/assembler.py", line 63, in partial_nzf_in_queue
    return (nzf.nzo, nzf, False) in self.queue.queue
  File "/app/sabnzbd/sabnzbd/nzbstuff.py", line 502, in __eq__
    if self.bytes == other.bytes or len(self.decodetable) == len(other.decodetable):
AttributeError: 'NoneType' object has no attribute 'bytes'
2022-06-13 09:41:18,181::WARNING::[__init__:503] Restarting because of crashed downloader
KageKeeper
Newbie
Newbie
Posts: 8
Joined: June 13th, 2022, 11:55 am

Re: Sab keeps crashing...

Post by KageKeeper »

That is indeed the logs I see repeated over and over. :)
User avatar
safihre
Administrator
Administrator
Posts: 5338
Joined: April 30th, 2015, 7:35 am
Contact:

Re: Sab keeps crashing...

Post by safihre »

You should clear your queue and restart, something got corrupted.
If you like our support, check our special newsserver deal or donate at: https://sabnzbd.org/donate
User avatar
sander
Release Testers
Release Testers
Posts: 8811
Joined: January 22nd, 2008, 2:22 pm

Re: Sab keeps crashing: AttributeError: 'NoneType' object has no attribute 'bytes'

Post by sander »

The essential part is

Code: Select all

  File "/app/sabnzbd/sabnzbd/nzbstuff.py", line 502, in __eq__
    if self.bytes == other.bytes or len(self.decodetable) == len(other.decodetable):
AttributeError: 'NoneType' object has no attribute 'bytes'
That it happens, is a bug.

That line of code was introduced/altered on 04-04-2021, so more than a year ago, so nothing recent.

I'm sure how to workaround this, other than trying with brute-force deleting your queue, or going back to an old version of SAB.

Maybe Safihre has a better idea.
User avatar
sander
Release Testers
Release Testers
Posts: 8811
Joined: January 22nd, 2008, 2:22 pm

Re: Sab keeps crashing: AttributeError: 'NoneType' object has no attribute 'bytes'

Post by sander »

@KageKeeper

Before removing the queue, can I do an experiment with you? I made a script that checks the files:

Code: Select all

sander@brixit:~/.sabnzbd/admin$ for i in *.sab; do ./pickle_pretty_print.py $i; done
postproc2.sab: Yes, correct pickle file. Size:  2
queue10.sab: Yes, correct pickle file. Size:  3
Rating.sab: something else
rss_data.sab: Yes, correct pickle file. Size:  4
totals10.sab: Yes, correct pickle file. Size:  14
watched_data2.sab: Yes, correct pickle file. Size:  3
So I would like you to run that script ... to see if it detects your queue is corrupt.
KageKeeper
Newbie
Newbie
Posts: 8
Joined: June 13th, 2022, 11:55 am

Re: Sab keeps crashing: AttributeError: 'NoneType' object has no attribute 'bytes'

Post by KageKeeper »

sander wrote: June 13th, 2022, 2:10 pm @KageKeeper

Before removing the queue, can I do an experiment with you? I made a script that checks the files:

Code: Select all

sander@brixit:~/.sabnzbd/admin$ for i in *.sab; do ./pickle_pretty_print.py $i; done
postproc2.sab: Yes, correct pickle file. Size:  2
queue10.sab: Yes, correct pickle file. Size:  3
Rating.sab: something else
rss_data.sab: Yes, correct pickle file. Size:  4
totals10.sab: Yes, correct pickle file. Size:  14
watched_data2.sab: Yes, correct pickle file. Size:  3
So I would like you to run that script ... to see if it detects your queue is corrupt.
Aww. I already wiped the queue and restarted everything. Sorry! If this happens again I will definitely look at your script.
KageKeeper
Newbie
Newbie
Posts: 8
Joined: June 13th, 2022, 11:55 am

Re: Sab keeps crashing: AttributeError: 'NoneType' object has no attribute 'bytes'

Post by KageKeeper »

So I removed the Docker container and emptied the queues. About an hour later I am getting the exact same errors again.

@sander If you want to try that script now, I am game.
KageKeeper
Newbie
Newbie
Posts: 8
Joined: June 13th, 2022, 11:55 am

Re: Sab keeps crashing: AttributeError: 'NoneType' object has no attribute 'bytes'

Post by KageKeeper »

There are some new errors now as well.

pastebin. com / XwnvpAps
User avatar
safihre
Administrator
Administrator
Posts: 5338
Joined: April 30th, 2015, 7:35 am
Contact:

Re: Sab keeps crashing: AttributeError: 'NoneType' object has no attribute 'bytes'

Post by safihre »

Interesting. Maybe this is is a bug.
Do you have a very active queue with lots of URLs being fetched and/or downloads active? Did you manually Retry a job maybe?
If you like our support, check our special newsserver deal or donate at: https://sabnzbd.org/donate
User avatar
sander
Release Testers
Release Testers
Posts: 8811
Joined: January 22nd, 2008, 2:22 pm

Re: Sab keeps crashing: AttributeError: 'NoneType' object has no attribute 'bytes'

Post by sander »

So https://pastebin.com/XwnvpAps

Code: Select all

Traceback (most recent call last):
  File "/usr/lib/python3.9/site-packages/cherrypy/_cprequest.py", line 638, in respond
    self._do_respond(path_info)
  File "/usr/lib/python3.9/site-packages/cherrypy/_cprequest.py", line 697, in _do_respond
    response.body = self.handler()
  File "/usr/lib/python3.9/site-packages/cherrypy/lib/encoding.py", line 223, in __call__
    self.body = self.oldhandler(*args, **kwargs)
  File "/usr/lib/python3.9/site-packages/cherrypy/_cpdispatch.py", line 54, in __call__
    return self.callable(*self.args, **self.kwargs)
  File "/app/sabnzbd/sabnzbd/interface.py", line 180, in internal_wrap
    return wrap_func(*args, **kwargs)
  File "/app/sabnzbd/sabnzbd/interface.py", line 472, in api
    return api_handler(kwargs)
  File "/app/sabnzbd/sabnzbd/api.py", line 104, in api_handler
    response = _api_table.get(mode, (_api_undefined, 2))[0](name, kwargs)
  File "/app/sabnzbd/sabnzbd/api.py", line 414, in _api_status
    return _api_status_table.get(name, (_api_fullstatus, 2))[0](value, kwargs)
  File "/app/sabnzbd/sabnzbd/api.py", line 405, in _api_fullstatus
    status = build_status(
  File "/app/sabnzbd/sabnzbd/api.py", line 1256, in build_status
    info["publicipv4"] = publicipv4()
  File "/app/sabnzbd/sabnzbd/getipaddress.py", line 114, in publicipv4
    result = addresslookup4(sabnzbd.cfg.selftest_host())
  File "/app/sabnzbd/sabnzbd/getipaddress.py", line 48, in func_wrapper
    return sabnzbd.THREAD_POOL.submit(item, *args, **kwargs).result(max_timeout)
  File "/usr/lib/python3.9/concurrent/futures/thread.py", line 161, in submit
    raise RuntimeError('cannot schedule new futures after shutdown')
RuntimeError: cannot schedule new futures after shutdown
Quite a different error IMHO, so a separate thread (split it)?
@safihre the workaround in https://github.com/sabnzbd/sabnzbd/comm ... ff=unified avoids this, right?
Interesting this too happens in a LSIO docker image

@KageKeeper what is your DNS setup? Something with pihole / adguard maybe?
User avatar
safihre
Administrator
Administrator
Posts: 5338
Joined: April 30th, 2015, 7:35 am
Contact:

Re: Sab keeps crashing: AttributeError: 'NoneType' object has no attribute 'bytes'

Post by safihre »

@sander: the second error can be ignored, it's because SABnzbd already detected a crash and it is in the process of shutting down. If a Status-window is opened then, it will throw this crash. Will fix this in next release. But for now, no need to investigate DNS etc :)
We can stick to finding out why KageKeeper has invalid NZO's in his queue.
If you like our support, check our special newsserver deal or donate at: https://sabnzbd.org/donate
KageKeeper
Newbie
Newbie
Posts: 8
Joined: June 13th, 2022, 11:55 am

Re: Sab keeps crashing: AttributeError: 'NoneType' object has no attribute 'bytes'

Post by KageKeeper »

safihre wrote: June 14th, 2022, 1:51 am Interesting. Maybe this is is a bug.
Do you have a very active queue with lots of URLs being fetched and/or downloads active? Did you manually Retry a job maybe?
Yes to both questions. :)
Post Reply