Skip to content

Pod volume/cgroup cleanup logic is faulty #42776

@yujuhong

Description

@yujuhong

Both cleanup rely on the periodic syncBatch in the status manger to trigger the final pod deletion. This is specifically checked in if m.needsUpdate(syncedUID, status) || m.couldBeDeleted(uid, status.status) .

However, syncBatch calls syncPod, which checks if !m.needsUpdate(uid, status), and skip if it's true at the beginning of the function. This means that it will never trigger the final deletion request (unless something else triggers it).

This causes pod deletion to take > 1 minute in many cases, hence a bunch of test flake.

Ideally, kubelet should not rely on the periodic syncBatch to send out deletion request, but at the least, this buggy logic should be fixed.

/cc @kubernetes/sig-node-bugs @dchen1107 @Random-Liu

Metadata

Metadata

Labels

kind/bugCategorizes issue or PR as related to a bug.priority/critical-urgentHighest priority. Must be actively worked on as someone's top priority right now.sig/nodeCategorizes an issue or PR as relevant to SIG Node.

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions