Skip to content

[Bug]: Enabled encryption throws exceptions in some cases #53651

@mejo-

Description

@mejo-

⚠️ This issue respects the following points: ⚠️

Bug description

As reported in the chat, the behat tests in Collectives that run against server master branch started to fail a few days/weeks ago. Same tests against stable30 don't fail.

See e.g. https://github.com/nextcloud/collectives/actions/runs/15827916887/job/44612898469?pr=1828 for a failed test. In the job summary the nextcloud.log file is available.

Here's a possibly related error from that file:

{"reqId":"u2fKWOzLpGezmFYHbZEd","level":3,"time":"2025-06-23T14:25:37+00:00","remoteAddr":"::1","user":"jane","app":"no app in context","method":"DELETE","url":"/ocs/v2.php/apps/collectives/api/v1.0/collectives/trash/10?circle=1&format=json","message":"Node for share not found, fileid: 121","userAgent":"GuzzleHttp/7","version":"32.0.0.0","exception":{"Exception":"OCP\\Files\\NotFoundException","Message":"Node for share not found, fileid: 121","Code":0,"Trace":[{"file":"/home/runner/actions-runner/_work/collectives/collectives/lib/private/Encryption/EncryptionEventListener.php","line":55,"function":"getNode","class":"OC\\Share20\\Share","type":"->","args":[]},{"file":"/home/runner/actions-runner/_work/collectives/collectives/lib/private/EventDispatcher/ServiceEventListener.php","line":68,"function":"handle","class":"OC\\Encryption\\EncryptionEventListener","type":"->","args":[{"__class__":"OCP\\Share\\Events\\ShareDeletedEvent"}]},{"file":"/home/runner/actions-runner/_work/collectives/collectives/3rdparty/symfony/event-dispatcher/EventDispatcher.php","line":220,"function":"__invoke","class":"OC\\EventDispatcher\\ServiceEventListener","type":"->","args":[{"__class__":"OCP\\Share\\Events\\ShareDeletedEvent"},"OCP\\Share\\Events\\ShareDeletedEvent",{"__class__":"Symfony\\Component\\EventDispatcher\\EventDispatcher"}]},{"file":"/home/runner/actions-runner/_work/collectives/collectives/3rdparty/symfony/event-dispatcher/EventDispatcher.php","line":56,"function":"callListeners","class":"Symfony\\Component\\EventDispatcher\\EventDispatcher","type":"->","args":[[{"__class__":"Closure"},{"__class__":"Closure"},{"__class__":"Closure"},{"__class__":"Closure"},{"__class__":"Closure"}],"OCP\\Share\\Events\\ShareDeletedEvent",{"__class__":"OCP\\Share\\Events\\ShareDeletedEvent"}]},{"file":"/home/runner/actions-runner/_work/collectives/collectives/lib/private/EventDispatcher/EventDispatcher.php","line":67,"function":"dispatch","class":"Symfony\\Component\\EventDispatcher\\EventDispatcher","type":"->","args":[{"__class__":"OCP\\Share\\Events\\ShareDeletedEvent"},"OCP\\Share\\Events\\ShareDeletedEvent"]},{"file":"/home/runner/actions-runner/_work/collectives/collectives/lib/private/EventDispatcher/EventDispatcher.php","line":79,"function":"dispatch","class":"OC\\EventDispatcher\\EventDispatcher","type":"->","args":["OCP\\Share\\Events\\ShareDeletedEvent",{"__class__":"OCP\\Share\\Events\\ShareDeletedEvent"}]},{"file":"/home/runner/actions-runner/_work/collectives/collectives/lib/private/Share20/Manager.php","line":1144,"function":"dispatchTyped","class":"OC\\EventDispatcher\\EventDispatcher","type":"->","args":[{"__class__":"OCP\\Share\\Events\\ShareDeletedEvent"}]},{"file":"/home/runner/actions-runner/_work/collectives/collectives/apps/collectives/lib/Service/CollectiveShareService.php","line":263,"function":"deleteShare","class":"OC\\Share20\\Manager","type":"->","args":[{"__class__":"OC\\Share20\\Share"}]},{"file":"/home/runner/actions-runner/_work/collectives/collectives/apps/collectives/lib/Service/CollectiveShareService.php","line":296,"function":"deleteFileShare","class":"OCA\\Collectives\\Service\\CollectiveShareService","type":"->","args":["rW8bfstWE5kwFf2"]},{"file":"/home/runner/actions-runner/_work/collectives/collectives/apps/collectives/lib/Service/CollectiveService.php","line":349,"function":"deleteShareByCollectiveId","class":"OCA\\Collectives\\Service\\CollectiveShareService","type":"->","args":[10]},{"file":"/home/runner/actions-runner/_work/collectives/collectives/apps/collectives/lib/Controller/TrashController.php","line":73,"function":"deleteCollective","class":"OCA\\Collectives\\Service\\CollectiveService","type":"->","args":[10,"jane",true]},{"file":"/home/runner/actions-runner/_work/collectives/collectives/apps/collectives/lib/Controller/OCSExceptionHelper.php","line":27,"function":"OCA\\Collectives\\Controller\\{closure}","class":"OCA\\Collectives\\Controller\\TrashController","type":"->","args":["*** sensitive parameters replaced ***"]},{"file":"/home/runner/actions-runner/_work/collectives/collectives/apps/collectives/lib/Controller/TrashController.php","line":73,"function":"handleErrorResponse","class":"OCA\\Collectives\\Controller\\TrashController","type":"->","args":[{"__class__":"Closure"},{"__class__":"OC\\AppFramework\\ScopedPsrLogger"}]},{"file":"/home/runner/actions-runner/_work/collectives/collectives/lib/private/AppFramework/Http/Dispatcher.php","line":202,"function":"delete","class":"OCA\\Collectives\\Controller\\TrashController","type":"->","args":[10,true]},{"file":"/home/runner/actions-runner/_work/collectives/collectives/lib/private/AppFramework/Http/Dispatcher.php","line":116,"function":"executeController","class":"OC\\AppFramework\\Http\\Dispatcher","type":"->","args":[{"__class__":"OCA\\Collectives\\Controller\\TrashController"},"delete"]},{"file":"/home/runner/actions-runner/_work/collectives/collectives/lib/private/AppFramework/App.php","line":161,"function":"dispatch","class":"OC\\AppFramework\\Http\\Dispatcher","type":"->","args":[{"__class__":"OCA\\Collectives\\Controller\\TrashController"},"delete"]},{"file":"/home/runner/actions-runner/_work/collectives/collectives/lib/private/Route/Router.php","line":313,"function":"main","class":"OC\\AppFramework\\App","type":"::","args":["OCA\\Collectives\\Controller\\TrashController","delete",{"__class__":"OC\\AppFramework\\DependencyInjection\\DIContainer"},{"apiVersion":"1.0","id":"10","_route":"ocs.collectives.trash.delete"}]},{"file":"/home/runner/actions-runner/_work/collectives/collectives/ocs/v1.php","line":57,"function":"match","class":"OC\\Route\\Router","type":"->","args":["/ocsapp/apps/collectives/api/v1.0/collectives/trash/10"]},{"file":"/home/runner/actions-runner/_work/collectives/collectives/ocs/v2.php","line":7,"args":["/home/runner/actions-runner/_work/collectives/collectives/ocs/v1.php"],"function":"require_once"}],"File":"/home/runner/actions-runner/_work/collectives/collectives/lib/private/Share20/Share.php","Line":167,"message":"Node for share not found, fileid: 121","exception":{},"CustomMessage":"Node for share not found, fileid: 121"}}

Steps to reproduce

See the behat-sqlite-encryption.yml workflow in Collectives

Expected behavior

Should not throw.

Nextcloud Server version

master

Operating system

None

PHP engine version

None

Web server

None

Database engine version

None

Is this bug present after an update or on a fresh install?

None

Are you using the Nextcloud Server Encryption module?

None

What user-backends are you using?

  • Default user-backend (database)
  • LDAP/ Active Directory
  • SSO - SAML
  • Other

Configuration report

List of activated Apps

Nextcloud Signing status

Nextcloud Logs

Additional info

No response

Metadata

Metadata

Assignees

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions