Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

When S3 storage is turned on, ETag is not returned #842

Open
lognaturel opened this issue Dec 10, 2024 · 0 comments
Open

When S3 storage is turned on, ETag is not returned #842

lognaturel opened this issue Dec 10, 2024 · 0 comments
Assignees
Labels
backend Requires a change to the API server

Comments

@lognaturel
Copy link
Member

lognaturel commented Dec 10, 2024

Problem description

When a server is configured to store blobs in S3, responses to OpenRosa requests (and likely other requests) for those blobs don't include ETag headers. This means that browser caching can't be taken advantage of.

URL of the page

https://test.getodk.cloud/v1/key/uQpSMt9QOnZHtq1We9Zveqo3VR0u7!L5UXIdvXbui1n1KkFPEaUA$fmYfWYzEsRA/projects/523/forms/geojsonUpdateBug/attachments/abc.geojson

Steps to reproduce the problem

  • Enable S3 storage on a server
  • Upload a file
  • Request that file through the OpenRosa API

Expected behavior

Central uses information it already has like the file's md5 hash as the ETag so that it can return a 304 if the client already has the file cached.

Central version shown in version.txt

versions:
801ab503c74eaa24b27a226622eceee9351d5db0 (v2024.2.1-10-g801ab50)
+5e95312bc6177ed79f170d8851da39fe327219d4 client (v2024.2.1-63-g5e95312b)
+4355d9e4c3a0f7bb6b694aad4cf318145905da2e server (v2024.2.0-114-g4355d9e4)

Browser version

Firefox 132.0.2 (aarch64)

Notes

Discovered while looking into #662

@lognaturel lognaturel added the backend Requires a change to the API server label Dec 10, 2024
@github-project-automation github-project-automation bot moved this to 🕒 backlog in ODK Central Dec 10, 2024
@alxndrsn alxndrsn self-assigned this Dec 11, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backend Requires a change to the API server
Projects
Status: 🕒 backlog
Development

No branches or pull requests

2 participants