Skip to content

Partly synced attachments are served as 500, truncated 200 or 404 with no way to tell them apart #81

Open

Description

@gmaclennan

Part of #80.

When an attachment has only partly synced to the cloud, the blob server still answers 200 and then the body stops at the first missing block, or the socket is reset before headers if the second block is missing. The cloud's attachments route turns that into a 500 with fetch failed, and a gap in the drive's index core turns into a core-shaped 500 (UNKNOWN_ERROR) because hypercore's "block not available" error is wrapped as a 500 and overrides the 404 the route had set. The client cannot tell "missing", "broken" and "not here yet" apart, and nothing on the server notices.

Fixes:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions