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

Fix race when out-of-order RemoteEndpoint events are seen #2399

Merged
merged 2 commits into from
Apr 7, 2023

Conversation

sridhargaddam
Copy link
Member

When there is a gateway migration in a remote cluster or if there is any stale endpoint on the Broker associated with the remoteCluster, the events might come in out of order which can create issues for datapath connectivity. The existing code was already having checks to ignore stale endpoint notifications in the kubeproxy and OVN handler. However, similar check was missing in MTU handler and an issue was seen in one of the environments. This PR moves the checks to the event handler framework and removes them from the registered handlers so that the fix will apply to all the handlers.

When there is a gateway migration in a remote cluster or if there
is any stale endpoint on the Broker associated with the remoteCluster,
the events might come in out of order which can create issues for
datapath connectivity. The existing code was already having checks
to ignore stale endpoint notifications in the kubeproxy and OVN handler.
However, similar check was missing in MTU handler and an issue was
seen in one of the environments. This PR moves the checks to the
event handler framework and removes them from the registered handlers
so that the fix will apply to all the handlers.

Signed-off-by: Sridhar Gaddam <sgaddam@redhat.com>
@submariner-bot
Copy link
Contributor

🤖 Created branch: z_pr2399/sridhargaddam/fix-out-of-order-events
🚀 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.

@sridhargaddam sridhargaddam self-assigned this Apr 6, 2023
@sridhargaddam sridhargaddam added the backport This change requires a backport to eligible release branches label Apr 6, 2023
@submariner-bot submariner-bot added the ready-to-test When a PR is ready for full E2E testing label Apr 6, 2023
@skitt skitt enabled auto-merge (rebase) April 6, 2023 14:54
@skitt skitt merged commit fd4d3d1 into submariner-io:devel Apr 7, 2023
@submariner-bot
Copy link
Contributor

🤖 Closed branches: [z_pr2399/sridhargaddam/fix-out-of-order-events]

Jaanki added a commit to Jaanki/submariner that referenced this pull request Apr 17, 2023
Jaanki added a commit to Jaanki/submariner that referenced this pull request Apr 17, 2023
@dfarrell07 dfarrell07 added the release-note-needed Should be mentioned in the release notes label Apr 25, 2023
sridhargaddam added a commit to sridhargaddam/submariner that referenced this pull request Apr 26, 2023
Related to: submariner-io#2399
Signed-off-by: Sridhar Gaddam <sgaddam@redhat.com>
sridhargaddam added a commit to sridhargaddam/submariner that referenced this pull request Apr 26, 2023
Related to: submariner-io#2399
Signed-off-by: Sridhar Gaddam <sgaddam@redhat.com>
tpantelis pushed a commit that referenced this pull request Apr 26, 2023
Related to: #2399
Signed-off-by: Sridhar Gaddam <sgaddam@redhat.com>
sridhargaddam added a commit to sridhargaddam/submariner that referenced this pull request Apr 27, 2023
Related to: submariner-io#2399
Signed-off-by: Sridhar Gaddam <sgaddam@redhat.com>
sridhargaddam added a commit to sridhargaddam/submariner that referenced this pull request Apr 27, 2023
Related to: submariner-io#2399
Signed-off-by: Sridhar Gaddam <sgaddam@redhat.com>
sridhargaddam added a commit to sridhargaddam/submariner that referenced this pull request Apr 27, 2023
Related to: submariner-io#2399
Signed-off-by: Sridhar Gaddam <sgaddam@redhat.com>
skitt pushed a commit that referenced this pull request Apr 27, 2023
Related to: #2399
Signed-off-by: Sridhar Gaddam <sgaddam@redhat.com>
skitt pushed a commit that referenced this pull request Apr 27, 2023
Related to: #2399
Signed-off-by: Sridhar Gaddam <sgaddam@redhat.com>
skitt pushed a commit that referenced this pull request Apr 27, 2023
Related to: #2399
Signed-off-by: Sridhar Gaddam <sgaddam@redhat.com>
@dfarrell07 dfarrell07 removed the release-note-needed Should be mentioned in the release notes label May 4, 2023
sridhargaddam added a commit to sridhargaddam/submariner that referenced this pull request Jun 5, 2023
When there is a gateway migration in a remote cluster or if there
is any stale endpoint on the Broker associated with the remoteCluster,
the events might come in out of order which can create issues for
datapath connectivity. This PR includes the necessary checks in
Globalnet pod to ignore any stale events.

Related to: submariner-io#2399
Signed-off-by: Sridhar Gaddam <sgaddam@redhat.com>
tpantelis pushed a commit that referenced this pull request Jun 5, 2023
When there is a gateway migration in a remote cluster or if there
is any stale endpoint on the Broker associated with the remoteCluster,
the events might come in out of order which can create issues for
datapath connectivity. This PR includes the necessary checks in
Globalnet pod to ignore any stale events.

Related to: #2399
Signed-off-by: Sridhar Gaddam <sgaddam@redhat.com>
sridhargaddam added a commit to sridhargaddam/submariner that referenced this pull request Jun 5, 2023
When there is a gateway migration in a remote cluster or if there
is any stale endpoint on the Broker associated with the remoteCluster,
the events might come in out of order which can create issues for
datapath connectivity. This PR includes the necessary checks in
Globalnet pod to ignore any stale events.

Related to: submariner-io#2399
Signed-off-by: Sridhar Gaddam <sgaddam@redhat.com>
sridhargaddam added a commit to sridhargaddam/submariner that referenced this pull request Jun 5, 2023
When there is a gateway migration in a remote cluster or if there
is any stale endpoint on the Broker associated with the remoteCluster,
the events might come in out of order which can create issues for
datapath connectivity. This PR includes the necessary checks in
Globalnet pod to ignore any stale events.

Related to: submariner-io#2399
Signed-off-by: Sridhar Gaddam <sgaddam@redhat.com>
tpantelis pushed a commit that referenced this pull request Jun 5, 2023
When there is a gateway migration in a remote cluster or if there
is any stale endpoint on the Broker associated with the remoteCluster,
the events might come in out of order which can create issues for
datapath connectivity. This PR includes the necessary checks in
Globalnet pod to ignore any stale events.

Related to: #2399
Signed-off-by: Sridhar Gaddam <sgaddam@redhat.com>
tpantelis pushed a commit that referenced this pull request Jun 5, 2023
When there is a gateway migration in a remote cluster or if there
is any stale endpoint on the Broker associated with the remoteCluster,
the events might come in out of order which can create issues for
datapath connectivity. This PR includes the necessary checks in
Globalnet pod to ignore any stale events.

Related to: #2399
Signed-off-by: Sridhar Gaddam <sgaddam@redhat.com>
novad03 pushed a commit to novad03/k8s-submariner that referenced this pull request Nov 25, 2023
Related to: submariner-io/submariner#2399
Signed-off-by: Sridhar Gaddam <sgaddam@redhat.com>
novad03 pushed a commit to novad03/k8s-submariner that referenced this pull request Nov 25, 2023
When there is a gateway migration in a remote cluster or if there
is any stale endpoint on the Broker associated with the remoteCluster,
the events might come in out of order which can create issues for
datapath connectivity. This PR includes the necessary checks in
Globalnet pod to ignore any stale events.

Related to: submariner-io/submariner#2399
Signed-off-by: Sridhar Gaddam <sgaddam@redhat.com>
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 release-note-handled
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants