Skip to content

File object PUTs are unconditional #110

Description

@revett

Only the manifest upload is conditional. The per file pushes in executeSyncPlan are plain PUTs, so a pass that later loses the manifest CAS has already overwritten objects the winning pass uploaded. The bucket then holds bytes that disagree with the hash the winning manifest records. Convergence eventually self heals via rehash, but any device pulling in the window receives bytes that do not match the manifest entry, and once #95 (verify pulled content) lands, that window becomes a hard sync failure loop instead of a silent mismatch.

Metadata

Metadata

Assignees

No one assigned

    Labels

    good first issueIdeal tasks for newcomers and contributors

    Type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions