Page 1 of 1

InterDir set to network share causes Could not create file *.out.tmp: (null) errors

Posted: 10 Aug 2019, 15:07
by fredhen
Hi there,

I am running NZBGet 21.1-testing-r2311 (same happens on 21.0 stable) on a RaspberryPi that's running OSMC. After updating to Linux 4.19 I've been getting errors when downloading NZB's when the InterDir is set to my network share:

Code: Select all

ERROR   Could not create file /mnt/External/Downloads/Downloading/ezNZB-Test.#2/1.out.tmp: (null)
ERROR   Could not create file /mnt/External/Downloads/Downloading/ezNZB-Test.#2/1.out.tmp: (null)
WARNING Cancelling download and deleting ezNZB-Test due to health 79.0% below critical 85.0%
ERROR   Could not create file /mnt/External/Downloads/Downloading/ezNZB-Test.#2/1.out.tmp: (null)
This is however only affecting the intermediate files. My MainDir is set to /mnt/External/Downloads and every else such as the nzb, queue and tmp folders and files are working fine as well as the .lock and .log files. It also unpacks to another folder /mnt/External/Downloads/completed which also works fine it is just the intermediate files. The network share is also unprotected and mounted as follows:

Code: Select all

//192.168.0.200/sda2/Downloads  /mnt/External/Downloads cifs    guest,x-systemd.automount,noauto,rw,iocharset=utf8,uid=1000,gid=1000    0       0
If I change the directory to a folder I created on the SD card (/opt/nzbget/Downloading) then it downloads and moves the files just fine and I'm running like this at the moment, but I would prefer keeping it to the network share like it's been for the last couple of years.

As a random test I changed the folder to /mnt/External/Downloads/tmp but that also fails.

I'm pretty sure it's not a NZBGet issue, but I thought I'd ask here for help if there is anything that I need to change or configure differently.

I found this and this issue logged here, but didn't come right either.
I have tried creating the file myself using the same user account which works fine.
Running in console mode gives the same errors. (I start NZBGet up with a systemd script (posted below)
The share is definitely mounted when NZBGet starts and reloading gives the same error after ensuring that the share is mounted.

I've seen the possibility to compile in debug mode and I'm not sure if that will give more information, but if needed, please let me know how to. My linux / terminal skills are enough to get me by

systemd script:

Code: Select all

[Unit]
Description=NZBGet Daemon
After=systemd-user-sessions.service network.target medusa.service
Wants=medusa.service

[Service]
User=osmc
Group=osmc
Type=forking
ExecStart=/opt/nzbget/nzbget -c /opt/nzbget/nzbget.conf -D
ExecStop=/opt/nzbget/nzbget -Q
ExecReload=/opt/nzbget/nzbget -O
KillMode=process
Restart=on-failure

[Install]
WantedBy=multi-user.target

Re: InterDir set to network share causes Could not create file *.out.tmp: (null) errors

Posted: 11 Aug 2019, 10:32
by sanderj
Long shot:

So InterDir is set to "/mnt/External/Downloads/Downloading/" ... which does not contain "intermediate"?
What is DestDir set to? Could there be an overlap ... ?

Furthermore:
- do you see the directory like /mnt/External/Downloads/Downloading/ezNZB-Test.#2/ created at all?? If so, do you see any files created in that directory?
- does it happen always, or intermittently?
- "Cancelling download and deleting ezNZB-Test due to health 79.0% below critical 85.0%" ... how can that happen after the first rar not being downloaded?

Re: InterDir set to network share causes Could not create file *.out.tmp: (null) errors

Posted: 11 Aug 2019, 19:23
by hugbug
sanderj wrote:
11 Aug 2019, 10:32
does it happen always, or intermittently?
The main question at the moment.

Re: InterDir set to network share causes Could not create file *.out.tmp: (null) errors

Posted: 11 Aug 2019, 22:43
by fredhen
sanderj wrote:
11 Aug 2019, 10:32
So InterDir is set to "/mnt/External/Downloads/Downloading/" ... which does not contain "intermediate"?
Correct. /mnt/External/Downloads/Downloading/ is the InterDir
sanderj wrote:
11 Aug 2019, 10:32
What is DestDir set to? Could there be an overlap ... ?
DestDir is set to /mnt/External/Downloads/completed
sanderj wrote:
11 Aug 2019, 10:32
Furthermore:
- do you see the directory like /mnt/External/Downloads/Downloading/ezNZB-Test.#2/ created at all?? If so, do you see any files created in that directory?
Yes. The directory is created. I also see .tmp files and 0 KB .rar files in a test I did now.
I tried downloading (testkees) [06 19] - ubuntu-18 04 2-desktop-amd64 part06 rar
The directory (testkees)_[06_19]_-__ubuntu-18.04.2-desktop-amd64.part06.rar_.#14 is created as well as .tmp files. Initially with a size of 0KB during the errors, but as the error moves to another .tmp file the file remains in the directory with a 8 KB size. It seems like it's getting recreated every time the error is shown in the log while the health drops until the download is cancelled after which the last attempted .tmp file no longer exists.
I had the following errors (771 total):

Code: Select all

Could not create file /mnt/External/Downloads/Downloading/(testkees)_[06_19]_-__ubuntu-18.04.2-desktop-amd64.part06.rar_.#14/100.out.tmp: (null)
Could not create file /mnt/External/Downloads/Downloading/(testkees)_[06_19]_-__ubuntu-18.04.2-desktop-amd64.part06.rar_.#14/101.out.tmp: (null)
Could not create file /mnt/External/Downloads/Downloading/(testkees)_[06_19]_-__ubuntu-18.04.2-desktop-amd64.part06.rar_.#14/102.out.tmp: (null)
And the following warnings (only these 3):

Code: Select all

274 of 274 article downloads failed for "(testkees)_[06_19]_-__ubuntu-18.04.2-desktop-amd64.part06.rar_/ubuntu-18.04.2-desktop-amd64.part01.rar"
274 of 274 article downloads failed for "(testkees)_[06_19]_-__ubuntu-18.04.2-desktop-amd64.part06.rar_/ubuntu-18.04.2-desktop-amd64.part02.rar"
Cancelling download and deleting (testkees)_[06_19]_-__ubuntu-18.04.2-desktop-amd64.part06.rar_ due to health 84.9% below critical 85.0%
And ended up with the below in the directory:

Code: Select all

osmc@osmc:/mnt/External/Downloads/Downloading/(testkees)_[06_19]_-__ubuntu-18.04.2-desktop-amd64.part06.rar_.#14$ ls -l
total 2048
-rwxrwxrwx 1 osmc osmc   8192 Jan  4  2011 100.out.tmp
-rwxrwxrwx 1 osmc osmc 729088 Jan  4  2011 101.out.tmp
-rwxrwxrwx 1 osmc osmc      0 Aug 12 00:30 ubuntu-18.04.2-desktop-amd64.part01.rar
-rwxrwxrwx 1 osmc osmc      0 Aug 12 00:31 ubuntu-18.04.2-desktop-amd64.part02.rar
hugbug wrote:
11 Aug 2019, 19:23
sanderj wrote:
11 Aug 2019, 10:32
does it happen always, or intermittently?
The main question at the moment.
Always. As long as the InterDir is pointing to a mount on the network share this is happening.
sanderj wrote:
11 Aug 2019, 10:32
- "Cancelling download and deleting ezNZB-Test due to health 79.0% below critical 85.0%" ... how can that happen after the first rar not being downloaded?
That was a silly test nzb. The above ubuntu as an example has 771 errors before deleting

To be more specific here is my paths:
MainDir: /mnt/External/Downloads
DestDir: ${MainDir}/completed
InterDir: ${MainDir}/Downloading
NzbDir:${MainDir}/nzb
QueueDir: ${MainDir}/queue
TempDir: ${MainDir}/tmp
WebDir: ${AppDir}/webui
ScriptDir: ${AppDir}/scripts
LockFile: ${MainDir}/nzbget.lock
LogFile: ${MainDir}/nzbget.log
ConfigTemplate: ${AppDir}/webui/nzbget.conf.template
RequiredDir:
CertStore: ${AppDir}/cacert.pem
So if I change InterDir to ${AppDir}/Downloading then the issue is resolved.
${AppDir} refers to /opt/nzbget/