Skip to content

[Server] Support importing completed KV snapshots #4223

Description

@platinumhamburg

Search before asking

  • I searched in the issues and found nothing similar.

Description

Fluss should be able to import a completed KV snapshot produced outside a
TabletServer and restore it through the ordinary snapshot recovery path.

This is the storage foundation for bulk loading. The imported result should be
indistinguishable from an ordinary completed Fluss snapshot after it has been
validated and adopted.

Scope

  • Define portable metadata for completed KV snapshot files.
  • Serialize and deserialize the snapshot metadata with compatibility checks.
  • Validate imported files, including their paths, sizes, digests, snapshot ID,
    and log end offset.
  • Adopt a validated snapshot into the existing completed-snapshot store.
  • Restore replicas from an imported snapshot through the ordinary KV recovery
    path.
  • Preserve active snapshot references so imported files are not removed while
    they are still in use.
  • Keep existing locally generated and tiered snapshot behavior unchanged.

Willingness to contribute

  • I'm willing to submit a PR!

Activity

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

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions