Buffering proxy does not enforce a reasonable size limits on bytes
When BufferingProxyStorage.content_add
is called, the buffering proxy acts like this:
- adds all contents to its buffer
- if the buffer has too many objects, issue a
content_add
call to the backend, with all objects in it - if the buffer has too many
Content
bytes, issue acontent_add
call to the backend, with all objects in it
However, if BufferingProxyStorage.content_add
with a bunch of large contents (eg. 100 contents of 100MB each), then it will issue one huge content_add
to the backend (eg. 10GB); which may be rejected by the backend's reverse proxy, such as in https://sentry.softwareheritage.org/share/issue/fb0e707a7a1b40a38f99ec22be3cb9e9/ (while loading https://packages.debian.org/bullseye/nvidia-cuda-toolkit which is full of blobs with size around 100MB)