Skip to content

daemon: re-verify bootc status before staging to avoid spurious reboot - #275

Open
ptalgulk01 wants to merge 1 commit into
bootc-dev:mainfrom
ptalgulk01:fix-daemon-spurious-restage
Open

ptalgulk01 wants to merge 1 commit into
bootc-dev:mainfrom
ptalgulk01:fix-daemon-spurious-restage

Conversation

@ptalgulk01

Copy link
Copy Markdown
Collaborator

A stale cached bootc status can make the daemon re-stage and reboot an image the node already booted after a mid-rollout image change (#256). Force a live bootc status read whenever booted != desired, before any destructive action, falling back to the cached view if the refresh fails.

Adds TestStaleStatusNoSpuriousRestage (fails without the fix).

Fixes part of #256

…t. Fixes part of bootc-dev#256.

Signed-off-by: Prachiti Talgulkar <ptalgulk01@users.noreply.github.com>
@alicefr

alicefr commented Oct 30, 2026 •

Copy link
Copy Markdown
Collaborator

@ptalgulk01 have you been able to identify the cache as the culprit? I haven't been able to reproduce the issue in a way to have meaningful log in #251 :/. I don't know if the real reason can be really a stale cache since we reboots and read a fresh result at start-up. We should understand if is our bug or if it is bootc that reports stale data during reboots. @Johan-Liebert1 @jmarrero does this ring any bells on bootc side?

@alicefr

alicefr commented Oct 30, 2026

Copy link
Copy Markdown
Collaborator

We finally have a failure in the PR (see this run). From this run, it seems that the first reboot was never finalized and it got lost and it was tried again.

@Johan-Liebert1

Copy link
Copy Markdown
Member

bootc never caches the status result. Every time bootc status is run, everything is freshly fetched from the filesystem

@alicefr

alicefr commented Oct 30, 2026

Copy link
Copy Markdown
Collaborator

bootc never caches the status result. Every time bootc status is run, everything is freshly fetched from the filesystem

But we do cache bootc status in the operator, but the reason seems something else

This branch has not been deployed

No deployments
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.

3 participants