Skip to content

libra pull falls back to local storage when global config DB schema is newer than the installed binary #434

Description

@genedna

Running libra pull with libra 0.17.1513 produces a warning because the global Libra config database was created or migrated by a newer Libra binary:

  Warning: failed to resolve LIBRA_STORAGE_TYPE: failed to connect to global config '/home/eli/.libra/config.db': Repository database schema version 2026062301 is newer than this Libra binary supports (latest supported: 2026061401). Install a
  newer Libra binary.. Falling back to local storage.

Environment observed:

  libra binary: /home/eli/.libra/bin/libra
  libra version: 0.17.1513
  global config: /home/eli/.libra/config.db

Actual behavior:

libra pull continues after the schema mismatch and falls back to local storage. This is risky because the command may proceed without the intended global storage configuration, which could cause confusing behavior or an incorrect pull source.

Expected behavior:

When the global config DB schema is newer than the binary supports, Libra should either fail fast with a clear actionable error or make the degraded fallback explicit enough that users understand remote/global storage config was ignored.

Possible root cause:

The installed Libra binary supports schema version 2026061401, but /home/eli/.libra/config.db is at schema version 2026062301. This likely happened after running a newer Libra binary previously, then later invoking an older binary from PATH.

Suggested improvement:

Add a clearer diagnostic for global config schema incompatibility, including:

  • the active binary path and version
  • the config DB path and schema version
  • the supported schema version
  • whether the command is safe to continue
  • the exact upgrade command or installation path the user should use

For commands like pull, consider failing instead of falling back to local storage when global storage configuration cannot be loaded.

Metadata

Metadata

Assignees

Type

Fields

No fields configured for Task.

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions