passwords/passwordsCache folder is deleted during background job

After updating to nextcloud 16.0.0 and passwords 2019.5.0 i get the following errors during execution of background jobs (cron initiated).

Error PHP filesize(): stat failed for /var/www/owncloud/data/appdata_ocqg7j662p6i/passwords/passwordsCache/6ac.json.gz at /var/www/owncloud/lib/private/LargeFileHelper.php#171

Error PHP stat(): stat failed for /var/www/owncloud/data/appdata_ocqg7j662p6i/passwords/passwordsCache/6ac.json.gz at /var/www/owncloud/lib/private/Files/Storage/Local.php#142
Error PHP touch(): Unable to create file /var/www/owncloud/data/appdata_ocqg7j662p6i/passwords/passwordsCache/6ac.json.gz because No such file or directory at /var/www/owncloud/lib/private/Files/Storage/Local.php#206
…
redacted similar errors for different json.gz files

For some reason the passwordsCache folder is deleted during one of the password app related background jobs and in result causing touch not to be able to create various ***.json.gz files.

I have tried manually recreating the folder but after the background jobs are run it was removed again.

By disabling the app (thereby also the related background jobs i assume) and monitoring the affected folder for a few days i have determined the folder is not deleted by some other process.

The app itself works as intended and reinstalling the app makes no difference.

Does someone have a suggestion on how to troubleshoot this ?
Can background jobs be started manually from command-line to determine which of the six (?) background job causes this ?

The only background job which uses this cache is the pwned passwords check. It is completely normal behavior for the app to clear its own cache. (It’s right here)

I would assume that the issue here is that the permissions on the file system do not allow the user executing the cron job to create files or folders in the app data folder.

You might want to check if your webserver/php-fpm and cron jobs are running as the same user and do have all necessary permissions and ownership of the passwords app data folder.

The webserver (apache2), php-fpm and cron are run as user www-data:

www-data  1349  0.0  0.1 188360  9184 ?        S    Apr29   0:00 php-fpm: pool www
www-data  1350  0.0  0.1 188360  9184 ?        S    Apr29   0:00 php-fpm: pool www
www-data  3120  0.0  1.4 302040 81784 ?        S    May09   1:22 /usr/sbin/apache2 -k start
www-data  3132  0.0  1.2 288876 68840 ?        S    May09   1:50 /usr/sbin/apache2 -k start
www-data  4089  0.0  0.0  18496  3928 ?        S    May07   0:00 /usr/sbin/fcgi-pm -k start
www-data  4759  0.0  1.4 302032 78932 ?        S    May07   1:55 /usr/sbin/apache2 -k start
www-data 11209  0.0  1.3 301552 76604 ?        S    May11   0:06 /usr/sbin/apache2 -k start
www-data 16238  0.0  1.0 287988 60248 ?        S    May11   0:03 /usr/sbin/apache2 -k start
www-data 23196  0.0  0.8 287328 49620 ?        S    May11   0:01 /usr/sbin/apache2 -k start
www-data 23200  0.0  0.8 287328 45652 ?        S    May11   0:01 /usr/sbin/apache2 -k start
www-data 25838  0.0  1.3 301752 77880 ?        S    May10   0:28 /usr/sbin/apache2 -k start
www-data 27658  0.0  1.3 301156 76792 ?        S    May10   0:36 /usr/sbin/apache2 -k start
www-data 27672  0.0  1.3 301916 77144 ?        S    May10   0:32 /usr/sbin/apache2 -k start
root     32058  0.0  0.0   5020  2220 pts/1    S+   04:38   0:00 grep --color=auto www-data

These are the directory permissions and ownerships:

drwxr-xr-x  2 www-data www-data 4096 Apr  2 18:25 avatarsCache
drwxrwxr-x  2 www-data www-data 4096 May 11 14:25 backups
drwxr-xr-x  2 www-data www-data 4096 Apr  2 22:07 faviconCache
drwxr-xr-x  2 www-data www-data 4096 May 11 15:07 passwordsCache
drwxr-xr-x  2 www-data www-data 4096 Apr  2 19:42 previewCache

The passwordsCache folder was created manually both with chmod 555 (resulting in an permissions denied message when creating files) and chmod 755 (seeing the folder removed after which files can’t be created).

Prior to updating to nextcloud 16.0.0, and i believe passwords had already been updated to 2019.5.0 (of this i’m not 100% sure), things were working fine without error messages.

May i assume the clear button for passwords cache on the settings page performs the same routine ? Pressing this button does not result in any errors or having the folder removed.

update:
By setting the last_run value for the OCA\Passwords\Cron\CheckPasswordsJob entry in the oc_jobs sql table to a date far in the future i have temporarily disabled this speciffic cron job and no longer see the folder getting deleted.
Now i just need to teach myself enough php to make sense of the CheckPasswordsJob.php routine and maybe discover what makes it delete the folder but unable to recreate it again.

Clearing the cache in the admin settings does execute exactly the same code as the cron job.
I checked how it is on my server. Clearing the cache deletes the folder, but as soon as you reload the page it is created again automatically. (The folder is created automatically on access if it does not exist)

The permissions for the app folder are as follows:

www-data@af9e9f16c0fa:/opt/nextcloud/data/appdata_ocxxx$ ls -lAhs
total 2.4M
4.0K drwxr-xr-x  2 www-data www-data 4.0K May  9 15:54 appstore
4.0K drwxr-xr-x 29 www-data www-data 4.0K Apr 25 20:37 css
4.0K drwxr-xr-x  3 www-data www-data 4.0K Feb 10  2018 external
4.0K drwxr-xr-x  8 www-data www-data 4.0K May 16 21:32 passwords
4.0K drwxr-xr-x  4 www-data www-data 4.0K Jan 26  2018 theming

And inside the passwords folder:

www-data@af9e9f16c0fa:/opt/nextcloud/data/appdata_ocxxx$ ls -lAhs passwords/               
total 196K
4.0K drwxr-xr-x 2 www-data www-data 4.0K May 16 21:32 avatarsCache
4.0K drwxrwxr-x 2 www-data www-data 4.0K May 16 15:00 backups
4.0K drwxr-xr-x 2 www-data www-data 4.0K May 16 21:32 defaultCache
 40K drwxr-xr-x 2 www-data www-data  36K May 14 13:14 faviconCache
132K drwxrwxr-x 2 www-data www-data 132K May 16 21:34 passwordsCache
 12K drwxr-xr-x 2 www-data www-data  12K May 14 13:15 previewCache

Interestingly the passwordsCache folder is create with 775 permissions while the other folders are created with 755 permissions. This is strange since all folders are created with the same command at the same point in code.

Both the passwords/ and passwordsCache/ folder are setup having chmod755 and the latter was populated with *.json.gz files.
By pressing the clear cache button the folder gets deleted and is indeed recreated upon refreshing the page with chmod755.
If the function for recreating this folder is triggered by refreshing the webpage could it be that this function does not get triggered during the cron job ?

If the function for recreating this folder is triggered by refreshing the webpage could it be that this function does not get triggered during the cron job ?

No. Before the cache folder or anything in it is accessed there is always a check if the folder is present. The admin settings and the cron job also use the same helper class here.

What you could try is to run this command: ./occ files:scan-app-data. Nextcloud caches the file tree, which could cause issues.

It would also be great if you could log the complete log from one of the errors so i can see where in the app that file action originated.

Ok, so disabling the CheckPasswordsJob stops the errors and after re-enabling it the errors are back again.
Interesting is the errors occur at 05:25 but the passwordsCache folder has a timestamp of 09:35.

sudo -u www-data php occ files:scan-app-data

Scanning AppData for files

±--------±------±-------------+
| Folders | Files | Elapsed time |
±--------±------±-------------+
| 77 | 242 | 00:00:02 |
±--------±------±-------------+

The complete log, truncated to 0 before re-enabling the CheckPasswordsJob:

> {"reqId":"2zH1E15rXHS8jTQui3K5","level":3,"time":"2019-05-18T05:25:03+00:00","remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"touch(): Unable to create file \/var\/www\/owncloud\/data\/appdata_ocqg7j662p6i\/passwords\/passwordsCache\/d83.json.gz because No such file or directory at \/var\/www\/owncloud\/lib\/private\/Files\/Storage\/Local.php#206","userAgent":"--","version":"16.0.0.9"}
> {"reqId":"2zH1E15rXHS8jTQui3K5","level":3,"time":"2019-05-18T05:25:03+00:00","remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"stat(): stat failed for \/var\/www\/owncloud\/data\/appdata_ocqg7j662p6i\/passwords\/passwordsCache\/d83.json.gz at \/var\/www\/owncloud\/lib\/private\/Files\/Storage\/Local.php#142","userAgent":"--","version":"16.0.0.9"}
> {"reqId":"2zH1E15rXHS8jTQui3K5","level":3,"time":"2019-05-18T05:25:03+00:00","remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"filesize(): stat failed for \/var\/www\/owncloud\/data\/appdata_ocqg7j662p6i\/passwords\/passwordsCache\/d83.json.gz at \/var\/www\/owncloud\/lib\/private\/LargeFileHelper.php#171","userAgent":"--","version":"16.0.0.9"}
> {"reqId":"2zH1E15rXHS8jTQui3K5","level":3,"time":"2019-05-18T05:25:03+00:00","remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"touch(): Unable to create file \/var\/www\/owncloud\/data\/appdata_ocqg7j662p6i\/passwords\/passwordsCache\/6ac.json.gz because No such file or directory at \/var\/www\/owncloud\/lib\/private\/Files\/Storage\/Local.php#206","userAgent":"--","version":"16.0.0.9"}
> {"reqId":"2zH1E15rXHS8jTQui3K5","level":3,"time":"2019-05-18T05:25:03+00:00","remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"stat(): stat failed for \/var\/www\/owncloud\/data\/appdata_ocqg7j662p6i\/passwords\/passwordsCache\/6ac.json.gz at \/var\/www\/owncloud\/lib\/private\/Files\/Storage\/Local.php#142","userAgent":"--","version":"16.0.0.9"}
> {"reqId":"2zH1E15rXHS8jTQui3K5","level":3,"time":"2019-05-18T05:25:03+00:00","remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"filesize(): stat failed for \/var\/www\/owncloud\/data\/appdata_ocqg7j662p6i\/passwords\/passwordsCache\/6ac.json.gz at \/var\/www\/owncloud\/lib\/private\/LargeFileHelper.php#171","userAgent":"--","version":"16.0.0.9"}
> {"reqId":"2zH1E15rXHS8jTQui3K5","level":3,"time":"2019-05-18T05:25:04+00:00","remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"touch(): Unable to create file \/var\/www\/owncloud\/data\/appdata_ocqg7j662p6i\/passwords\/passwordsCache\/a45.json.gz because No such file or directory at \/var\/www\/owncloud\/lib\/private\/Files\/Storage\/Local.php#206","userAgent":"--","version":"16.0.0.9"}
> {"reqId":"2zH1E15rXHS8jTQui3K5","level":3,"time":"2019-05-18T05:25:04+00:00","remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"stat(): stat failed for \/var\/www\/owncloud\/data\/appdata_ocqg7j662p6i\/passwords\/passwordsCache\/a45.json.gz at \/var\/www\/owncloud\/lib\/private\/Files\/Storage\/Local.php#142","userAgent":"--","version":"16.0.0.9"}
> {"reqId":"2zH1E15rXHS8jTQui3K5","level":3,"time":"2019-05-18T05:25:04+00:00","remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"filesize(): stat failed for \/var\/www\/owncloud\/data\/appdata_ocqg7j662p6i\/passwords\/passwordsCache\/a45.json.gz at \/var\/www\/owncloud\/lib\/private\/LargeFileHelper.php#171","userAgent":"--","version":"16.0.0.9"}
> {"reqId":"2zH1E15rXHS8jTQui3K5","level":3,"time":"2019-05-18T05:25:04+00:00","remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"touch(): Unable to create file \/var\/www\/owncloud\/data\/appdata_ocqg7j662p6i\/passwords\/passwordsCache\/047.json.gz because No such file or directory at \/var\/www\/owncloud\/lib\/private\/Files\/Storage\/Local.php#206","userAgent":"--","version":"16.0.0.9"}
> {"reqId":"2zH1E15rXHS8jTQui3K5","level":3,"time":"2019-05-18T05:25:04+00:00","remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"stat(): stat failed for \/var\/www\/owncloud\/data\/appdata_ocqg7j662p6i\/passwords\/passwordsCache\/047.json.gz at \/var\/www\/owncloud\/lib\/private\/Files\/Storage\/Local.php#142","userAgent":"--","version":"16.0.0.9"}
> {"reqId":"2zH1E15rXHS8jTQui3K5","level":3,"time":"2019-05-18T05:25:04+00:00","remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"filesize(): stat failed for \/var\/www\/owncloud\/data\/appdata_ocqg7j662p6i\/passwords\/passwordsCache\/047.json.gz at \/var\/www\/owncloud\/lib\/private\/LargeFileHelper.php#171","userAgent":"--","version":"16.0.0.9"}
> {"reqId":"2zH1E15rXHS8jTQui3K5","level":3,"time":"2019-05-18T05:25:05+00:00","remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"touch(): Unable to create file \/var\/www\/owncloud\/data\/appdata_ocqg7j662p6i\/passwords\/passwordsCache\/fe8.json.gz because No such file or directory at \/var\/www\/owncloud\/lib\/private\/Files\/Storage\/Local.php#206","userAgent":"--","version":"16.0.0.9"}
> {"reqId":"2zH1E15rXHS8jTQui3K5","level":3,"time":"2019-05-18T05:25:05+00:00","remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"stat(): stat failed for \/var\/www\/owncloud\/data\/appdata_ocqg7j662p6i\/passwords\/passwordsCache\/fe8.json.gz at \/var\/www\/owncloud\/lib\/private\/Files\/Storage\/Local.php#142","userAgent":"--","version":"16.0.0.9"}
> {"reqId":"2zH1E15rXHS8jTQui3K5","level":3,"time":"2019-05-18T05:25:05+00:00","remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"filesize(): stat failed for \/var\/www\/owncloud\/data\/appdata_ocqg7j662p6i\/passwords\/passwordsCache\/fe8.json.gz at \/var\/www\/owncloud\/lib\/private\/LargeFileHelper.php#171","userAgent":"--","version":"16.0.0.9"}
> {"reqId":"2zH1E15rXHS8jTQui3K5","level":3,"time":"2019-05-18T05:25:05+00:00","remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"touch(): Unable to create file \/var\/www\/owncloud\/data\/appdata_ocqg7j662p6i\/passwords\/passwordsCache\/f7a.json.gz because No such file or directory at \/var\/www\/owncloud\/lib\/private\/Files\/Storage\/Local.php#206","userAgent":"--","version":"16.0.0.9"}
> {"reqId":"2zH1E15rXHS8jTQui3K5","level":3,"time":"2019-05-18T05:25:05+00:00","remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"stat(): stat failed for \/var\/www\/owncloud\/data\/appdata_ocqg7j662p6i\/passwords\/passwordsCache\/f7a.json.gz at \/var\/www\/owncloud\/lib\/private\/Files\/Storage\/Local.php#142","userAgent":"--","version":"16.0.0.9"}
> {"reqId":"2zH1E15rXHS8jTQui3K5","level":3,"time":"2019-05-18T05:25:05+00:00","remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"filesize(): stat failed for \/var\/www\/owncloud\/data\/appdata_ocqg7j662p6i\/passwords\/passwordsCache\/f7a.json.gz at \/var\/www\/owncloud\/lib\/private\/LargeFileHelper.php#171","userAgent":"--","version":"16.0.0.9"}
> {"reqId":"2zH1E15rXHS8jTQui3K5","level":3,"time":"2019-05-18T05:25:06+00:00","remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"touch(): Unable to create file \/var\/www\/owncloud\/data\/appdata_ocqg7j662p6i\/passwords\/passwordsCache\/012.json.gz because No such file or directory at \/var\/www\/owncloud\/lib\/private\/Files\/Storage\/Local.php#206","userAgent":"--","version":"16.0.0.9"}
> {"reqId":"2zH1E15rXHS8jTQui3K5","level":3,"time":"2019-05-18T05:25:06+00:00","remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"stat(): stat failed for \/var\/www\/owncloud\/data\/appdata_ocqg7j662p6i\/passwords\/passwordsCache\/012.json.gz at \/var\/www\/owncloud\/lib\/private\/Files\/Storage\/Local.php#142","userAgent":"--","version":"16.0.0.9"}
> {"reqId":"2zH1E15rXHS8jTQui3K5","level":3,"time":"2019-05-18T05:25:06+00:00","remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"filesize(): stat failed for \/var\/www\/owncloud\/data\/appdata_ocqg7j662p6i\/passwords\/passwordsCache\/012.json.gz at \/var\/www\/owncloud\/lib\/private\/LargeFileHelper.php#171","userAgent":"--","version":"16.0.0.9"}
> {"reqId":"2zH1E15rXHS8jTQui3K5","level":3,"time":"2019-05-18T05:25:06+00:00","remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"touch(): Unable to create file \/var\/www\/owncloud\/data\/appdata_ocqg7j662p6i\/passwords\/passwordsCache\/016.json.gz because No such file or directory at \/var\/www\/owncloud\/lib\/private\/Files\/Storage\/Local.php#206","userAgent":"--","version":"16.0.0.9"}
> {"reqId":"2zH1E15rXHS8jTQui3K5","level":3,"time":"2019-05-18T05:25:06+00:00","remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"stat(): stat failed for \/var\/www\/owncloud\/data\/appdata_ocqg7j662p6i\/passwords\/passwordsCache\/016.json.gz at \/var\/www\/owncloud\/lib\/private\/Files\/Storage\/Local.php#142","userAgent":"--","version":"16.0.0.9"}
> {"reqId":"2zH1E15rXHS8jTQui3K5","level":3,"time":"2019-05-18T05:25:06+00:00","remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"filesize(): stat failed for \/var\/www\/owncloud\/data\/appdata_ocqg7j662p6i\/passwords\/passwordsCache\/016.json.gz at \/var\/www\/owncloud\/lib\/private\/LargeFileHelper.php#171","userAgent":"--","version":"16.0.0.9"}
> {"reqId":"2zH1E15rXHS8jTQui3K5","level":3,"time":"2019-05-18T05:25:06+00:00","remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"touch(): Unable to create file \/var\/www\/owncloud\/data\/appdata_ocqg7j662p6i\/passwords\/passwordsCache\/b00.json.gz because No such file or directory at \/var\/www\/owncloud\/lib\/private\/Files\/Storage\/Local.php#206","userAgent":"--","version":"16.0.0.9"}
> {"reqId":"2zH1E15rXHS8jTQui3K5","level":3,"time":"2019-05-18T05:25:06+00:00","remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"stat(): stat failed for \/var\/www\/owncloud\/data\/appdata_ocqg7j662p6i\/passwords\/passwordsCache\/b00.json.gz at \/var\/www\/owncloud\/lib\/private\/Files\/Storage\/Local.php#142","userAgent":"--","version":"16.0.0.9"}
> {"reqId":"2zH1E15rXHS8jTQui3K5","level":3,"time":"2019-05-18T05:25:06+00:00","remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"filesize(): stat failed for \/var\/www\/owncloud\/data\/appdata_ocqg7j662p6i\/passwords\/passwordsCache\/b00.json.gz at \/var\/www\/owncloud\/lib\/private\/LargeFileHelper.php#171","userAgent":"--","version":"16.0.0.9"}
> {"reqId":"2zH1E15rXHS8jTQui3K5","level":3,"time":"2019-05-18T05:25:07+00:00","remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"touch(): Unable to create file \/var\/www\/owncloud\/data\/appdata_ocqg7j662p6i\/passwords\/passwordsCache\/c51.json.gz because No such file or directory at \/var\/www\/owncloud\/lib\/private\/Files\/Storage\/Local.php#206","userAgent":"--","version":"16.0.0.9"}
> {"reqId":"2zH1E15rXHS8jTQui3K5","level":3,"time":"2019-05-18T05:25:07+00:00","remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"stat(): stat failed for \/var\/www\/owncloud\/data\/appdata_ocqg7j662p6i\/passwords\/passwordsCache\/c51.json.gz at \/var\/www\/owncloud\/lib\/private\/Files\/Storage\/Local.php#142","userAgent":"--","version":"16.0.0.9"}
> {"reqId":"2zH1E15rXHS8jTQui3K5","level":3,"time":"2019-05-18T05:25:07+00:00","remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"filesize(): stat failed for \/var\/www\/owncloud\/data\/appdata_ocqg7j662p6i\/passwords\/passwordsCache\/c51.json.gz at \/var\/www\/owncloud\/lib\/private\/LargeFileHelper.php#171","userAgent":"--","version":"16.0.0.9"}
> {"reqId":"2zH1E15rXHS8jTQui3K5","level":3,"time":"2019-05-18T05:25:07+00:00","remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"touch(): Unable to create file \/var\/www\/owncloud\/data\/appdata_ocqg7j662p6i\/passwords\/passwordsCache\/9fe.json.gz because No such file or directory at \/var\/www\/owncloud\/lib\/private\/Files\/Storage\/Local.php#206","userAgent":"--","version":"16.0.0.9"}
> {"reqId":"2zH1E15rXHS8jTQui3K5","level":3,"time":"2019-05-18T05:25:07+00:00","remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"stat(): stat failed for \/var\/www\/owncloud\/data\/appdata_ocqg7j662p6i\/passwords\/passwordsCache\/9fe.json.gz at \/var\/www\/owncloud\/lib\/private\/Files\/Storage\/Local.php#142","userAgent":"--","version":"16.0.0.9"}
> {"reqId":"2zH1E15rXHS8jTQui3K5","level":3,"time":"2019-05-18T05:25:07+00:00","remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"filesize(): stat failed for \/var\/www\/owncloud\/data\/appdata_ocqg7j662p6i\/passwords\/passwordsCache\/9fe.json.gz at \/var\/www\/owncloud\/lib\/private\/LargeFileHelper.php#171","userAgent":"--","version":"16.0.0.9"}
> {"reqId":"2zH1E15rXHS8jTQui3K5","level":3,"time":"2019-05-18T05:25:07+00:00","remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"touch(): Unable to create file \/var\/www\/owncloud\/data\/appdata_ocqg7j662p6i\/passwords\/passwordsCache\/ab2.json.gz because No such file or directory at \/var\/www\/owncloud\/lib\/private\/Files\/Storage\/Local.php#206","userAgent":"--","version":"16.0.0.9"}
> {"reqId":"2zH1E15rXHS8jTQui3K5","level":3,"time":"2019-05-18T05:25:07+00:00","remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"stat(): stat failed for \/var\/www\/owncloud\/data\/appdata_ocqg7j662p6i\/passwords\/passwordsCache\/ab2.json.gz at \/var\/www\/owncloud\/lib\/private\/Files\/Storage\/Local.php#142","userAgent":"--","version":"16.0.0.9"}
> {"reqId":"2zH1E15rXHS8jTQui3K5","level":3,"time":"2019-05-18T05:25:07+00:00","remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"filesize(): stat failed for \/var\/www\/owncloud\/data\/appdata_ocqg7j662p6i\/passwords\/passwordsCache\/ab2.json.gz at \/var\/www\/owncloud\/lib\/private\/LargeFileHelper.php#171","userAgent":"--","version":"16.0.0.9"}
> {"reqId":"2zH1E15rXHS8jTQui3K5","level":3,"time":"2019-05-18T05:25:07+00:00","remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"touch(): Unable to create file \/var\/www\/owncloud\/data\/appdata_ocqg7j662p6i\/passwords\/passwordsCache\/a9d.json.gz because No such file or directory at \/var\/www\/owncloud\/lib\/private\/Files\/Storage\/Local.php#206","userAgent":"--","version":"16.0.0.9"}
> {"reqId":"2zH1E15rXHS8jTQui3K5","level":3,"time":"2019-05-18T05:25:07+00:00","remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"stat(): stat failed for \/var\/www\/owncloud\/data\/appdata_ocqg7j662p6i\/passwords\/passwordsCache\/a9d.json.gz at \/var\/www\/owncloud\/lib\/private\/Files\/Storage\/Local.php#142","userAgent":"--","version":"16.0.0.9"}
> {"reqId":"2zH1E15rXHS8jTQui3K5","level":3,"time":"2019-05-18T05:25:07+00:00","remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"filesize(): stat failed for \/var\/www\/owncloud\/data\/appdata_ocqg7j662p6i\/passwords\/passwordsCache\/a9d.json.gz at \/var\/www\/owncloud\/lib\/private\/LargeFileHelper.php#171","userAgent":"--","version":"16.0.0.9"}
> {"reqId":"2zH1E15rXHS8jTQui3K5","level":3,"time":"2019-05-18T05:25:08+00:00","remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"touch(): Unable to create file \/var\/www\/owncloud\/data\/appdata_ocqg7j662p6i\/passwords\/passwordsCache\/c90.json.gz because No such file or directory at \/var\/www\/owncloud\/lib\/private\/Files\/Storage\/Local.php#206","userAgent":"--","version":"16.0.0.9"}
> {"reqId":"2zH1E15rXHS8jTQui3K5","level":3,"time":"2019-05-18T05:25:08+00:00","remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"stat(): stat failed for \/var\/www\/owncloud\/data\/appdata_ocqg7j662p6i\/passwords\/passwordsCache\/c90.json.gz at \/var\/www\/owncloud\/lib\/private\/Files\/Storage\/Local.php#142","userAgent":"--","version":"16.0.0.9"}
> {"reqId":"2zH1E15rXHS8jTQui3K5","level":3,"time":"2019-05-18T05:25:08+00:00","remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"filesize(): stat failed for \/var\/www\/owncloud\/data\/appdata_ocqg7j662p6i\/passwords\/passwordsCache\/c90.json.gz at \/var\/www\/owncloud\/lib\/private\/LargeFileHelper.php#171","userAgent":"--","version":"16.0.0.9"}
> {"reqId":"2zH1E15rXHS8jTQui3K5","level":3,"time":"2019-05-18T05:25:08+00:00","remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"touch(): Unable to create file \/var\/www\/owncloud\/data\/appdata_ocqg7j662p6i\/passwords\/passwordsCache\/8d3.json.gz because No such file or directory at \/var\/www\/owncloud\/lib\/private\/Files\/Storage\/Local.php#206","userAgent":"--","version":"16.0.0.9"}
> {"reqId":"2zH1E15rXHS8jTQui3K5","level":3,"time":"2019-05-18T05:25:08+00:00","remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"stat(): stat failed for \/var\/www\/owncloud\/data\/appdata_ocqg7j662p6i\/passwords\/passwordsCache\/8d3.json.gz at \/var\/www\/owncloud\/lib\/private\/Files\/Storage\/Local.php#142","userAgent":"--","version":"16.0.0.9"}
> {"reqId":"2zH1E15rXHS8jTQui3K5","level":3,"time":"2019-05-18T05:25:08+00:00","remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"filesize(): stat failed for \/var\/www\/owncloud\/data\/appdata_ocqg7j662p6i\/passwords\/passwordsCache\/8d3.json.gz at \/var\/www\/owncloud\/lib\/private\/LargeFileHelper.php#171","userAgent":"--","version":"16.0.0.9"}

Update:
I have updated nextcloud to 16.0.1 and modified nextcloud’s config.php and php’s php.ini timezone parameters to have the timezone set to Europe/Amsterdam hoping either one solves my issue.
If not i’ll update this post.

Update 2: unfortunately these updates have not resolved the problems.
The passwordsCache folder was not created and i now believe the previous creation was caused by my browser refreshing the page.

There was actually a bug report with the same issue with a php stack trace that helped me to figure out what actually happens. It seems that due to caching of the folder in Nextcloud, the app believes it to be there even after it was deleted.

I will update the bug report soon, but there is already a nightly version available with a temporary workaround for this issue.

Thanks for all your patience and i hope the bugfix will work for you too.

The update to nightly version 2019.6.0-build2940 has also fixed the issue I was experiencing.

Thanks for your help.