Memory leak when using multiple collections in a cloud storage plugin
Author: gerardpuigCreated Mar 23, 2026Updated Sep 14, 2026
Labelsstalearea: coreBug
Describe the Bug
When multiple collections are used in a cloud storage plugin configuration, initClientUploads.js causes a memory leak that crashes the browser tab or even freezes the computer.
s3Storage({ collections: [ ExampleCollection, ExampleCollection, ExampleCollection, ExampleCollection, ExampleCollection, ExampleCollection, ExampleCollection, ExampleCollection, ExampleCollection, ExampleCollection, ExampleCollection, ExampleCollection, ExampleCollection, ExampleCollection, ExampleCollection, ExampleCollection, ExampleCollection, ExampleCollection, ExampleCollection, ExampleCollection, ], ...
Link to the code that reproduces this issue
Reproduction Steps
- Checkout https://github.com/gerardpuig/payload-storage-plugin-crash which is a simple project created from the whitelabel example.
- Checkout branch bug/memory-leak-cloud-storage-plugin
- Run pnpm install
- Run pnpm dev
- Go to admin, you will notice it already goes slow till it crashes.
Which area(s) are affected?
area: core
Environment Info
Binaries:
Node: 24.14.0
npm: 11.9.0
Yarn: N/A
pnpm: 10.32.1
Relevant Packages:
payload: 3.80.0
next: 16.2.1
@payloadcms/db-mongodb: 3.80.0
@payloadcms/graphql: 3.80.0
@payloadcms/next/utilities: 3.80.0
@payloadcms/plugin-cloud-storage: 3.80.0
@payloadcms/richtext-lexical: 3.80.0
@payloadcms/storage-s3: 3.80.0
@payloadcms/translations: 3.80.0
@payloadcms/ui/shared: 3.80.0
react: 19.2.2
react-dom: 19.2.2Source: payloadcms/payload