Skip to content

Conversation

giorio94
Copy link
Member

@giorio94 giorio94 commented Dec 2, 2024

The blamed commit was intended to silence not found errors during restoration, which are expected if the corresponding pod has been deleted asynchronously while the agent was down. However, it mistakenly modified the execution flow, breaking out of the switch (rather than returning) and eventually leading to accessing a nil pointer, with the obvious ill-fated consequences.

Let's fix this by restoring the original execution flow, and add a dedicated unit test to prevent regressions.

Fixes: 40130c7 ("endpoint: silence metadata resolver not found errors during restoration")

Fix potential Cilium agent panic during endpoint restoration, occurring if the corresponding pod gets deleted while the agent is restarting. This regression only affects Cilium v1.16.4.

The blamed commit was intended to silence not found errors during
restoration, which are expected if the corresponding pod has been
deleted asynchronously while the agent was down. However, it mistakenly
modified the execution flow, breaking out of the switch (rather than
returning) and eventually leading to accessing a nil pointer, with
the obvious ill-fated consequences.

Let's fix this by restoring the original execution flow, and add
a dedicated unit test to prevent regressions.

Fixes: 40130c7 ("endpoint: silence metadata resolver not found errors during restoration")
Signed-off-by: Marco Iorio <marco.iorio@isovalent.com>
@giorio94 giorio94 added kind/bug This is a bug in the Cilium logic. area/daemon Impacts operation of the Cilium daemon. release-note/bug This PR fixes an issue in a previous release of Cilium. kind/regression This functionality worked fine before, but was broken in a newer release of Cilium. backport/author The backport will be carried out by the author of the PR. release-blocker/1.16 This issue will prevent the release of the next version of Cilium. needs-backport/1.16 This PR / issue needs backporting to the v1.16 branch labels Dec 2, 2024
@giorio94
Copy link
Member Author

giorio94 commented Dec 2, 2024

/test

@giorio94 giorio94 marked this pull request as ready for review December 2, 2024 11:23
@giorio94 giorio94 requested a review from a team as a code owner December 2, 2024 11:23
@giorio94 giorio94 requested a review from squeed December 2, 2024 11:23
@maintainer-s-little-helper maintainer-s-little-helper bot added the ready-to-merge This PR has passed all tests and received consensus from code owners to merge. label Dec 2, 2024
@squeed squeed added this pull request to the merge queue Dec 2, 2024
Merged via the queue into cilium:main with commit 7c39c9a Dec 2, 2024
70 checks passed
@giorio94 giorio94 mentioned this pull request Dec 2, 2024
1 task
@giorio94 giorio94 added backport-pending/1.16 The backport for Cilium 1.16.x for this PR is in progress. and removed needs-backport/1.16 This PR / issue needs backporting to the v1.16 branch labels Dec 2, 2024
@github-actions github-actions bot added backport-done/1.16 The backport for Cilium 1.16.x for this PR is done. and removed backport-pending/1.16 The backport for Cilium 1.16.x for this PR is in progress. labels Dec 3, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/daemon Impacts operation of the Cilium daemon. backport/author The backport will be carried out by the author of the PR. backport-done/1.16 The backport for Cilium 1.16.x for this PR is done. kind/bug This is a bug in the Cilium logic. kind/regression This functionality worked fine before, but was broken in a newer release of Cilium. ready-to-merge This PR has passed all tests and received consensus from code owners to merge. release-blocker/1.16 This issue will prevent the release of the next version of Cilium. release-note/bug This PR fixes an issue in a previous release of Cilium.
Projects
Archived in project
Development

Successfully merging this pull request may close these issues.

2 participants