Skip to content

Introduce upgrade - #1829

Merged
robertbaldyga merged 5 commits into
Open-CAS:masterfrom
robertbaldyga:upgrade
Sep 29, 2026
Merged

robertbaldyga merged 5 commits into
Open-CAS:masterfrom
robertbaldyga:upgrade

Conversation

@robertbaldyga

Copy link
Copy Markdown
Member

No description provided.

Avoid breaking the installation completeness even if it's not working.

Signed-off-by: Robert Baldyga <robert.baldyga@unvertical.com>
Signed-off-by: Robert Baldyga <robert.baldyga@unvertical.com>
Allow to build cas_cache module in two versions - one for the new
cas_bd and one compatible with symvers of running cas_bd.

That way we can load new cas_cache with old cas_bd temporarily,
allowing for smooth transition between two versions.

Signed-off-by: Robert Baldyga <robert.baldyga@unvertical.com>
Introduce upgrade target, which performs in-flight upgrade of cas_cache
module. It requires Open CAS to be built with FALLBACK_SYMVERS option
pointing at the symvers file of currently loaded cas_bd module.

It automatically unloads cas_cache, installs new modules in regular and
symvers-compatible versions and loads cas_cache compatible with running
cas_bd (transition mode). After unloading both modules or rebooting,
the new versions of both modules are loaded automatically.

This mechanism is currently limited to the same Open CAS version, so it
is usable mostly for development purposes. It opens a path for full
in-flight upgrade once metadata migration mechanism is ready.

Signed-off-by: Robert Baldyga <robert.baldyga@unvertical.com>
Signed-off-by: Robert Baldyga <robert.baldyga@unvertical.com>
@robertbaldyga
robertbaldyga merged commit 816aef1 into Open-CAS:master Sep 29, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant