Uploading in shared folders is broker with nextcloud 14.0.1

Nextcloud version (eg, 12.0.2): 14.0.4
Operating system and version (eg, Ubuntu 17.04): Ubuntu 18.04
Apache or nginx version (eg, Apache 2.4.25): Apache
PHP version (eg, 7.1): 7.2

The issue you are facing:
Uploading files in any shared folder isn’t posible. After choosing a file an click “ok” - nothing happens.
Uploading file in “real” folders is working.

Is this the first time you’ve seen this error? (Y/N): Y

Steps to replicate it:

  1. Share any folder with any account and give permissions to write.
  2. Try to upload any file with the account the folder is shared with.

The output of your Nextcloud log in Admin > Logging:

Error	remote	TypeError: Argument 2 passed to OCA\DAV\Connector\Sabre\Directory::__construct() must implement interface OCP\Files\FileInfo, boolean given, called in /var/www/nextcloud/apps/dav/lib/Upload/UploadHome.php on line 93

    /var/www/nextcloud/apps/dav/lib/Upload/UploadHome.php - line 93:

    OCA\DAV\Connector\Sabre\Directory->__construct(OC\Files\View {}, false)

    /var/www/nextcloud/apps/dav/lib/Upload/UploadHome.php - line 51:

    OCA\DAV\Upload\UploadHome->impl()

    /var/www/nextcloud/apps/dav/lib/Upload/UploadHome.php - line 61:

    OCA\DAV\Upload\UploadHome->getChild("web-file-up ... 8")

    /var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Tree.php - line 105:

    OCA\DAV\Upload\UploadHome->childExists("web-file-up ... 8")

    /var/www/nextcloud/3rdparty/sabre/dav/lib/DAVACL/Plugin.php - line 878:

    Sabre\DAV\Tree->nodeExists("uploads/Tes ... 8")

    /var/www/nextcloud/apps/dav/lib/Connector/Sabre/DavAclPlugin.php - line 95:

    Sabre\DAVACL\Plugin->beforeMethod(Sabre\HTTP\R ... "}, Sabre\HTTP\Response {})

    OCA\DAV\Connector\Sabre\DavAclPlugin->beforeMethod(Sabre\HTTP\R ... "}, Sabre\HTTP\Response {})

    /var/www/nextcloud/3rdparty/sabre/event/lib/EventEmitterTrait.php - line 105:

    call_user_func_array([ OCA\DAV\Co ... "], [ Sabre\HTTP ... }])

    /var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php - line 466:

    Sabre\Event\EventEmitter->emit("beforeMethod", [ Sabre\HTTP ... }])

    /var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php - line 254:

    Sabre\DAV\Server->invokeMethod(Sabre\HTTP\R ... "}, Sabre\HTTP\Response {})

    /var/www/nextcloud/apps/dav/lib/Server.php - line 293:

    Sabre\DAV\Server->exec()

    /var/www/nextcloud/apps/dav/appinfo/v2/remote.php - line 35:

    OCA\DAV\Server->exec()

    /var/www/nextcloud/remote.php - line 163:

    require_once("/var/www/ne ... p")

The output of your config.php file in /path/to/nextcloud (make sure you remove any identifiable information!):


{
    "system": {
        "instanceid": "***REMOVED SENSITIVE VALUE***",
        "passwordsalt": "***REMOVED SENSITIVE VALUE***",
        "secret": "***REMOVED SENSITIVE VALUE***",
        "trusted_domains": [
            "toothless.goip.de",
            "toothless.fritz.box"
        ],
        "datadirectory": "***REMOVED SENSITIVE VALUE***",
        "overwrite.cli.url": "https:\/\/toothless.goip.de",
        "dbtype": "mysql",
        "version": "14.0.1.1",
        "dbname": "***REMOVED SENSITIVE VALUE***",
        "dbhost": "***REMOVED SENSITIVE VALUE***",
        "dbtableprefix": "oc_",
        "mysql.utf8mb4": true,
        "dbuser": "***REMOVED SENSITIVE VALUE***",
        "dbpassword": "***REMOVED SENSITIVE VALUE***",
        "installed": true,
        "enable_previews": false,
        "skeletondirectory": "",
        "logtimezone": "Europe\/Berlin",
        "log_type": "file",
        "logfile": "\/var\/log\/nextcloud\/nextcloud.log",
        "memcache.local": "\\OC\\Memcache\\APCu",
        "memcache.locking": "\\OC\\Memcache\\Redis",
        "redis": {
            "host": "***REMOVED SENSITIVE VALUE***",
            "port": 6379
        },
        "htaccess.RewriteBase": "\/",
        "filesystem_check_changes": 1,
        "mail_smtpmode": "smtp",
        "mail_smtpauthtype": "LOGIN",
        "mail_smtpauth": true,
        "mail_from_address": "***REMOVED SENSITIVE VALUE***",
        "mail_domain": "***REMOVED SENSITIVE VALUE***",
        "mail_smtphost": "***REMOVED SENSITIVE VALUE***",
        "mail_smtpport": 587,
        "mail_smtpname": "***REMOVED SENSITIVE VALUE***",
        "mail_smtppassword": "***REMOVED SENSITIVE VALUE***",
        "mail_smtpsecure": "tls",
        "knowledgebaseenabled": false,
        "maintenance": false,
        "theme": "",
        "loglevel": 1,
        "data-fingerprint": "daf767cfda940da49aead6029558d893",
        "updater.secret": "***REMOVED SENSITIVE VALUE***"
    },
}

Hm, now this works for me as well. No error in log.
Yesterday, immediately after the update to 14.0.1 this surely didn’t work.
Strange things…

Maybe cron/cleanup or something else have to run after the update to fix this?
Whatever…