Page 1 of 1

1.1.0B1 Looping errors & path creation (external /Volumes/)

Posted: June 26th, 2016, 5:17 pm
by EvilFlanders
Version used: 1.1.0Beta1 OS X 10.11.5

Hi all,

Boy I hope I make my case clear because I don't understand everything that is happening. Basically there is an infinite error message loop and a weird folder creation when a path on an external drive is missing.

I realised that I'd be better off with using my external SSD drives instead of my small internal SSD, so I've moved all my Temporary and Completed Download Folders to my external SSD.

It works perfectly except when the drive ends up missing, which can happen when it's being disconnected manually or for God knows reason under OSX. That's where the shit storms begins.

First of all, there's the infinite loop. The Temporary and Completed folder existence scan is quite quick so it catches the missing drive immediately. Then the error message will pop up about every 3 seconds, which very quickly takes up the whole screen space and puts you in fight-or-flight mode.

Then, then, then, the weird part.
My drive is called SSD_1To. When it gets disconnected, Sab will try to recreate the path. It manages to create a SSD_1To folder in "/Volumes/" but then it displays an error message because it can't create anything under.

Image

Then, the real SSD_1To mounts back and is now known as "SSD_1To 1".

Image

I have two choices (that I can see) in the middle of the avalanche of error messages that I can't stop if I want to be able to access Sab settings and change the paths:
- I can stop Sab, delete the "SSD_1To" folder and then change the settings in Sab back to the correct folder. But Sab is too fast and creates the SSD_1To folder on launch, so I have to change the paths to a temporary location, delete the SSD_1To folder, unmount/mount the external drive so that "SSD_1To 1" goes back to SSD_1To and then change the path back in Sab. And that's pretty boring.
- OR I can just leave the SSD_1To folder as is and leave my paths as is, that is referred as "/Volumes/SSD_1To 1/Downloading...". But that will work until the drive gets disconnected again then Sab will try to recreate a "SSD_1To 1" folder and then the drive will mount as "SSD_1To 2". Etc.

So, as you can see, it's plain weird. I can see several behaviours that could be fixed:
- the infinite message loop
- the external drive path check
- the external drive path creation when missing

Now I understand that you are trying to recreate the path, which is somehow logical.
My first recommendation would be to use the server retry logic for the path checking: display the error message only once, retry the path after a little while and if it's happened again twice then pause Sabnzbd.
Then there is the external drive problem with the creation of the folder named after the drive. Maybe there needs to be some intelligence behind the automated folder creation, where if the drive specified after /Volumes/ is missing then it should not attempt to create it.

I hope it's clear...
Many thanks.

Re: 1.1.0B1 Looping errors & path creation (external /Volume

Posted: June 27th, 2016, 1:41 am
by shypike
The temporary download folder must exist before SABnzbd starts.
Normally SABnzbd will not attempt to create new folders under /Volumes.

Re: 1.1.0B1 Looping errors & path creation (external /Volume

Posted: June 27th, 2016, 6:29 am
by EvilFlanders
Yet... it unfortunately does. Are you filing this as a bug or closing the case?

Re: 1.1.0B1 Looping errors & path creation (external /Volume

Posted: June 27th, 2016, 11:24 am
by shypike
We cannot solve the issue for the temp folder.
However there is an extra option, Config->Special->wait_for_dfolder
See http://wiki.sabnzbd.org/configure-special-1-0

Re: 1.1.0B1 Looping errors & path creation (external /Volume

Posted: June 27th, 2016, 12:18 pm
by EvilFlanders
Sorry I did not see it before. Thanks!

I've tried it and it works perfectly, but why only on startup? When Sab starts and does not find the path, it hangs and waits, but why doesn't it behave the same way when the path is not accessible after? That would be great if it's possible to add.

Re: 1.1.0B1 Looping errors & path creation (external /Volume

Posted: June 28th, 2016, 8:28 am
by shypike
Because SABnzbd absolutely needs the temp path.
Waiting for it is the only solution.
However, it's the sort of hangup that could easily confuse people.
That's why we require the waiting option to be set explicitly.