)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":38822,"name":"JayGue Lee","display_name":"JayGue Lee","email":"enginrect@gmail.com","username":"enginrect"},"change_message_id":"82ec3933e9f1fe3d61a2d1d91f58bcd7437b83ee","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"bc7c6cb1_565651f4","updated":"2026-02-13 03:57:51.000000000","message":"Hi @froyo\nAs I commented in https://bugs.launchpad.net/neutron/+bug/2130211, I took a shot to patch it by myself.\nCould you review this?","commit_id":"b57510aea2b4008d004ca5fce2ae023962f8f549"},{"author":{"_account_id":38822,"name":"JayGue Lee","display_name":"JayGue Lee","email":"enginrect@gmail.com","username":"enginrect"},"change_message_id":"9da9c150f3a09d1f203b617280631be0e31eb3a1","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"a150c157_56fef853","updated":"2026-02-18 23:48:11.000000000","message":"Thanks Rodolfo — that makes sense.\nI wasn’t aware that the neutron:provnet-physical-network external_id is only present after Neutron change 962568. In my test environment that patch is not included yet, which is why the tag was missing and I tried to infer the provider LS based on the presence of a localnet port.\nGiven this, I agree that ovn-octavia-provider should primarily rely on Neutron-provided metadata when available. I will  drop the inference logic.\nThanks again for the clarification.","commit_id":"b57510aea2b4008d004ca5fce2ae023962f8f549"}],"ovn_octavia_provider/helper.py":[{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"14aa7a4c790d763876831ec4d1dca1afee85f456","unresolved":true,"context_lines":[{"line_number":152,"context_line":"        if not ovn_ls:"},{"line_number":153,"context_line":"            return False"},{"line_number":154,"context_line":""},{"line_number":155,"context_line":"        # NOTE(JayGue Lee): Do not rely on Neutron-specific external_ids"},{"line_number":156,"context_line":"        # (e.g. \u0027neutron:provnet-physical-network\u0027). The reliable indicator"},{"line_number":157,"context_line":"        # is the presence of a localnet LSP on the Logical Switch."},{"line_number":158,"context_line":"        try:"}],"source_content_type":"text/x-python","patch_set":2,"id":"f487f077_30f32f03","line":155,"range":{"start_line":155,"start_character":8,"end_line":155,"end_character":72},"updated":"2026-02-13 06:58:33.000000000","message":"Why is that? The resource is created by Neutron and this tag should be added. The OVN cluster is controller by Neutron. Why do you need no to rely on Neutron?","commit_id":"b57510aea2b4008d004ca5fce2ae023962f8f549"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"31c15ebffaf0f2e7d09a10e828093cb29d492d6c","unresolved":true,"context_lines":[{"line_number":152,"context_line":"        if not ovn_ls:"},{"line_number":153,"context_line":"            return False"},{"line_number":154,"context_line":""},{"line_number":155,"context_line":"        # NOTE(JayGue Lee): Do not rely on Neutron-specific external_ids"},{"line_number":156,"context_line":"        # (e.g. \u0027neutron:provnet-physical-network\u0027). The reliable indicator"},{"line_number":157,"context_line":"        # is the presence of a localnet LSP on the Logical Switch."},{"line_number":158,"context_line":"        try:"}],"source_content_type":"text/x-python","patch_set":2,"id":"0bcb9cfe_43190d44","line":155,"range":{"start_line":155,"start_character":8,"end_line":155,"end_character":72},"in_reply_to":"f487f077_30f32f03","updated":"2026-02-13 07:02:15.000000000","message":"I\u0027ve read https://bugs.launchpad.net/neutron/+bug/2130211/comments/18. If you don\u0027t have the tag \u0027neutron:provnet-physical-network\u0027 in the LS is because your Neutron version does not have https://review.opendev.org/c/openstack/neutron/+/962568. You can update Neutron or you can backport this patch in your D/S code.\nWe can also consider backporting this Neutron patch to older releases in order to sync with this patch.","commit_id":"b57510aea2b4008d004ca5fce2ae023962f8f549"},{"author":{"_account_id":38822,"name":"JayGue Lee","display_name":"JayGue Lee","email":"enginrect@gmail.com","username":"enginrect"},"change_message_id":"9da9c150f3a09d1f203b617280631be0e31eb3a1","unresolved":true,"context_lines":[{"line_number":152,"context_line":"        if not ovn_ls:"},{"line_number":153,"context_line":"            return False"},{"line_number":154,"context_line":""},{"line_number":155,"context_line":"        # NOTE(JayGue Lee): Do not rely on Neutron-specific external_ids"},{"line_number":156,"context_line":"        # (e.g. \u0027neutron:provnet-physical-network\u0027). The reliable indicator"},{"line_number":157,"context_line":"        # is the presence of a localnet LSP on the Logical Switch."},{"line_number":158,"context_line":"        try:"}],"source_content_type":"text/x-python","patch_set":2,"id":"8183beea_f258836a","line":155,"range":{"start_line":155,"start_character":8,"end_line":155,"end_character":72},"in_reply_to":"f487f077_30f32f03","updated":"2026-02-18 23:48:11.000000000","message":"Thanks for the clarification.\n\nIn my testing, I noticed that the provider network’s logical switch did not include neutron:provnet-physical-network in external_ids. The logical switch I observed had only the following keys:\n1. neutron:availability_zone_hints\n2. neutron:mtu\n3. neutron:network_name\n4. neutron:provnet-network-type\n5. neutron:revision_number\n\nSo even when the logical switch corresponds to a provider network, the neutron:provnet-physical-network key didn’t appear to be set in OVN.\n\nAdditionally, I tried to trace how OVN_PHYSNET_EXT_ID_KEY is used on the Neutron side, but I wasn’t able to find a reference to it being actively written to OVN (it looks defined, but I couldn’t locate call sites that populate it). It’s very possible I missed something or that the behavior depends on the backend/configuration.\n\nWould you mind confirming whether Neutron is expected to always set this external_id on the logical switch in your environment? If there’s a known code path or configuration that ensures it, I’d be happy to adjust the change accordingly.","commit_id":"b57510aea2b4008d004ca5fce2ae023962f8f549"}]}
