Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adjust OVN TransitSwitchIP initialization #3192

Merged
merged 1 commit into from
Oct 18, 2024

Conversation

tpantelis
Copy link
Contributor

We've observed E2E failures on route agent restart that was caused by the addition of the TransitSwitchIP refactoring. On code inspection, there's a potential timing issue related to initialization of the TransitSwitchIP. The Init method is called by NonGatewayRouteHandler.Init however the NewNonGatewayRouteController is started before that in Handler.Init so, depending on timing, nonGatewayRouteCreatedOrUpdated could get invoked prior to initialization of the TransitSwitchIP, in which case it would observe an empty IP.

To avoid this, move the TransitSwitchIP.Init call to Handler.Init prior to starting the NewNonGatewayRouteController.

We've observed E2E failures on route agent restart that was caused by
the addition of the TransitSwitchIP refactoring. On code inspection,
there's a potential timing issue related to initialization of the
TransitSwitchIP. The Init method is called by
NonGatewayRouteHandler.Init however the NewNonGatewayRouteController
is started before that in Handler.Init so, depending on timing,
nonGatewayRouteCreatedOrUpdated could get invoked prior to
initialization of the TransitSwitchIP, in which case it would observe
an empty IP.

To avoid this, move the TransitSwitchIP.Init call to Handler.Init prior
to starting the NewNonGatewayRouteController.

Signed-off-by: Tom Pantelis <tompantelis@gmail.com>
@submariner-bot
Copy link
Contributor

🤖 Created branch: z_pr3192/tpantelis/transit_switch_ip
🚀 Full E2E won't run until the "ready-to-test" label is applied. I will add it automatically once the PR has 2 approvals, or you can add it manually.

@tpantelis tpantelis added ready-to-test When a PR is ready for full E2E testing backport This change requires a backport to eligible release branches labels Oct 17, 2024
@tpantelis tpantelis enabled auto-merge (rebase) October 17, 2024 20:44
@tpantelis tpantelis merged commit 5b70b1e into submariner-io:devel Oct 18, 2024
56 of 57 checks passed
@submariner-bot
Copy link
Contributor

🤖 Closed branches: [z_pr3192/tpantelis/transit_switch_ip]

@Jaanki
Copy link
Contributor

Jaanki commented Oct 28, 2024

@tpantelis Does this need to be backported to 0.18.0 as well?

@tpantelis
Copy link
Contributor Author

@tpantelis Does this need to be backported to 0.18.0 as well?

No - it was added in 0.19

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backport This change requires a backport to eligible release branches backport-handled ready-to-test When a PR is ready for full E2E testing
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

5 participants