[release-2.0] Fix port status not updating to ACTIVE after server interface attachment#766
Merged
mandre merged 2 commits intorelease-2.0from Apr 23, 2026
Merged
Conversation
When the server controller attaches a port via Nova os-interface, the port's Neutron status transitions asynchronously from DOWN to ACTIVE as OVN binds the port. The port controller may reconcile after device_id is set but before the status becomes ACTIVE, writing DOWN to the port's status and setting Progressing: False. The existing serverToPortMapFunc watch handler only triggers port re-reconciliation when DeviceID disagrees with the server's interface list. When the port controller already picked up the device_id but not the ACTIVE status, DeviceID matches and no re-reconciliation is triggered, leaving the port status permanently stale at DOWN. Add a check for ports that are listed in the server's interfaces and have the correct DeviceID but still show status DOWN, triggering a re-reconciliation to pick up the current Neutron status.
Apply the same fix as the port controller: when serverToVolumeMapFunc detects a volume that is listed in the server's interfaces and already has the correct attachment info, but the volume's Cinder status is not in-use, trigger a re-reconciliation to pick up the current status from Cinder.
mandre
approved these changes
Apr 23, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Backport: #765
When the server controller attaches a port via Nova os-interface, the port's Neutron status transitions asynchronously from DOWN to ACTIVE as OVN binds the port. The port controller may reconcile after device_id is set but before the status becomes ACTIVE, writing DOWN to the port's status and setting Progressing: False.
The existing serverToPortMapFunc watch handler only triggers port re-reconciliation when DeviceID disagrees with the server's interface list. When the port controller already picked up the device_id but not the ACTIVE status, DeviceID matches and no re-reconciliation is triggered, leaving the port status permanently stale at DOWN.
Add a check for ports that are listed in the server's interfaces and have the correct DeviceID but still show status DOWN, triggering a re-reconciliation to pick up the current Neutron status.
Fixes #764