• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

ovn-kubernetes / ovn-kubernetes / 19120763589

05 Nov 2025 05:43PM UTC coverage: 54.195% (-0.3%) from 54.458%
19120763589

push

github

jcaamano
Fix cleanup of LRP for deleted pods

When the EIP controller cleans up a stale EIP assignment for a pod,
it also removes the pod object from the podAssignment cache.
This is incorrect, as it prevents the EIP controller from processing
the subsequent pod delete event.

Scenario:

1. pod-1 is served by eip-1, both hosted on node1.
2. node1’s ovnkube-controller restarts.
3. Pod add event is received by the EIP controller — no changes.
4. eip-1 moves from node1 to node0.
5. The EIP controller receives the eip-1 add event.
6. eip-1 cleans up pod-1’s stale assignment (SNAT and LRP) for node1,
   but removes the pod object from the podAssignment cache when no other
   assignments found.
7. The EIP controller programs the LRP entry with node0’s transit IP as
   the next hop, but the pod assignment cache is not updated with new
   podAssignmentState.
8. The pod delete event is received by the EIP controller but ignored,
   since the pod object is missing from the assignment cache.

So this commit fixes the issue by adding podAssignmentState back into
podAssignment cache at step 7.

Signed-off-by: Periyasamy Palanisamy <pepalani@redhat.com>

1 of 1 new or added line in 1 file covered. (100.0%)

1305 existing lines in 15 files now uncovered.

39761 of 73367 relevant lines covered (54.19%)

439.26 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

48.15
/go-controller/pkg/node/user_defined_node_network_controller.go


Source Not Available

STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc