stackabletech / stackabletech/commons-operator

Pod expiration drifts when system is suspended

Open
#302 0 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

type/bug
Dominant language
Python
Stars
8
Forks
4
Avg merge
7h 48m
Merged PRs (30d)
7

Description

Affected Stackable version

dev (24.11 prerelease)

Current and expected behavior

@xeniape ran into an issue (sble employees: see slack) where pods would be left with expired certificates after a while, rather than getting evicted by commons-op as expected. Restarting commons-op evicted the pods, as expected.

Our current working hypothesis here is that commons-op's re-reconciliation timer didn't advance while the computer was suspended, causing the eviction to be delayed by the same amount of time.

Possible solution

Either:

  1. Change the timer to use wall time instead of monotonic/CPU time
  2. Cap the re-reconciliation timer, causing spurious reconciles but at least limiting the issue
  3. Make the timer automatically expire when resuming from suspend

Either way, we should probably also communicate upstream with kube-rs and either fix it there or highlight the issue somehow.

Additional context

No response

Environment

No response

Would you like to work on fixing this bug?

None

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by locating the commons-op re-reconciliation timer and reviewing how kube-rs timers behave across system suspend and resume. Reproduce the delayed pod eviction if possible, then determine whether an upstream kube-rs fix or a commons-op change is appropriate. Done means expired certificates lead to timely eviction after resume, with regression coverage or an upstream issue documenting the limitation.

Written by the indexing model from the issue text.

Assessment

Tech stack
kubernetes, rust
Domain
devops, infrastructure
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.