)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"191cc87857f0aa044011e89a189ec975bebc1242","unresolved":true,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Check for hybrid plugging in OVS"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"There is a cold migration scenario that leaves some interfaces behind in"},{"line_number":10,"context_line":"case port binding changes from hybrid to direct plugging between the"},{"line_number":11,"context_line":"nodes. This patch adds functionality that checks presence of"},{"line_number":12,"context_line":"intermediate linux bridge and clears things up properly if found."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"d0f668e3_4f94f4c1","line":9,"updated":"2022-04-23 09:04:28.000000000","message":"for context cold migration between differnt backend or firewall dirvers is not supprot today. it was intentionall not supported when we added support for live migration across backends.\n\nso this is a new feature not a bug.","commit_id":"67fb05c2833ef792a094dc4c280870dbf5f8f06c"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"e16e91fbf4941613f7dc8e42b9a4fd85e2631600","unresolved":true,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Check for hybrid plugging in OVS"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"There is a cold migration scenario that leaves some interfaces behind in"},{"line_number":10,"context_line":"case port binding changes from hybrid to direct plugging between the"},{"line_number":11,"context_line":"nodes. This patch adds functionality that checks presence of"},{"line_number":12,"context_line":"intermediate linux bridge and clears things up properly if found."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"afd957b7_e9b28452","line":9,"in_reply_to":"570aa0d5_859f8ca4","updated":"2022-04-25 21:33:46.000000000","message":"TL;DR we only support cross backend migration if you use multiple port bindigns and we do not support that for cold migraiton in general. supporting it for cold migration was inentionally gated on nueton requiring all backend to support multiple port bidnings. that never happened so we do not support it.\n\n\nif you read the nova spec you can see that it only talks about support this for live migration\n\nhttps://specs.openstack.org/openstack/nova-specs/specs/rocky/implemented/neutron-new-port-binding-api.html\n\nit make some refrence to other move operation but we only implemnted multiple port biding for livemigration at the tiem and intentionally exluced cold migration.\n\nwe had planned ot port cold migration to use multile port binding whne neutron started to require all backends to supprt multipel port bindigns.\n\nthat has to this day still not happened. we planned to remove the support for move operation without multiple port bindign with two cycles.\n\nhttps://specs.openstack.org/openstack/nova-specs/specs/rocky/implemented/neutron-new-port-binding-api.html#proposed-change\n\nform a nova perspecitve there was ans still is very little value in support multiple port bidning and therefore the ablity to cold migrate across network backend if we also have to supprot the legacy flow so that is why we have never offically supported this upstream and why we do not support id downstream.","commit_id":"67fb05c2833ef792a094dc4c280870dbf5f8f06c"},{"author":{"_account_id":8655,"name":"Jakub Libosvar","email":"libosvar@redhat.com","username":"jlibosva"},"change_message_id":"68f1da72da96e2af6c9ef813e525fcd966e04d6c","unresolved":true,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Check for hybrid plugging in OVS"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"There is a cold migration scenario that leaves some interfaces behind in"},{"line_number":10,"context_line":"case port binding changes from hybrid to direct plugging between the"},{"line_number":11,"context_line":"nodes. This patch adds functionality that checks presence of"},{"line_number":12,"context_line":"intermediate linux bridge and clears things up properly if found."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"570aa0d5_859f8ca4","line":9,"in_reply_to":"d0f668e3_4f94f4c1","updated":"2022-04-25 18:32:16.000000000","message":"Thanks for the review, I\u0027ll update it to treat it as a feature. However, is this documented somewhere? My understanding was that Neutron introduced the multiple port binding API to be able to have mixed environments with nodes supporting hybrid plug and nodes that do not. Was cold migration specifically excluded as a supported operation? Shall it fail then when attempting to migrate between two different plugging mechanisms or will this \"feature\" be enough to support such operation?","commit_id":"67fb05c2833ef792a094dc4c280870dbf5f8f06c"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"321d225e7fb09cbe9c326ebca8726b5919e00fff","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"8057b833_b1bb22d6","updated":"2022-04-23 09:02:01.000000000","message":"overall this looks ok. ill review it again on monday.\nim currently debating if we should add functional tests in addtion to the unit tests\nor if the tempest testing is enough. the ovn job is testing the hybrid plug false case and we have an ovs iptable job that tested the hybrid-plug\u003dtrue case.\n\nso all branches should have been taken excpet the cleanup branch.","commit_id":"67fb05c2833ef792a094dc4c280870dbf5f8f06c"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"8cf6732b85bf1fd8b6d658c738a8e7ddd6a86edd","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"196a792f_31ee3131","updated":"2022-04-25 21:37:53.000000000","message":"recheck tempest.api.compute.servers.test_list_server_filters.ListServerFiltersTestJSON failed with no valid host cause by a db connection error https://zuul.opendev.org/t/openstack/build/37409a54c9dc4c2e843eb59a84996b17/log/controller/logs/screen-n-cpu.txt#42318\nhttps://zuul.opendev.org/t/openstack/build/37409a54c9dc4c2e843eb59a84996b17/log/controller/logs/screen-n-cond-cell1.txt#864","commit_id":"9ace551db2262d1134ad984ae8a10436a02cdac6"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"b6726ed4aba559aeadd431db396eff96e849265c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"c6bbb5e6_60a64208","updated":"2022-06-08 10:14:33.000000000","message":"the zuul jobs are now passing and the gate issues have been resolved by removing py36\n\nwe might need to rebase this to pick up that change but i belive zuul will correctly merge this with master when it executes so it shoudl work as is.","commit_id":"9ace551db2262d1134ad984ae8a10436a02cdac6"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"dcfd01369d557a799e780e5901999f8f9b7b3c57","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"a345d549_6035e924","updated":"2022-05-03 13:11:45.000000000","message":"we are now correctly tracking this as a feature so we should not need a config option to disable it or deprection notice/todo to remove it.\n\nwe likely shoudl revisit if we want to keep this forever but as long as hybrid plug is supported in neutron i guess this is required for cold migration from hybrid_plug\u003dtrue to false to clean up properly.\nif we get bugs related to the perfromace impact of always checkin for the bridge we can also consider guardign this behind a workaround config option.\n\nthinking about it a little this will only enable migration in one direction.\ndo we also want to supprot it in the other direction form hybrid_plug\u003dfalse to hybrid_plug\u003dtrue\n\ni guess that is not strictly required but if we were to offically supprot cold migration between network backend and or firewall drivers i think we should ensure it works in all combinations.","commit_id":"9ace551db2262d1134ad984ae8a10436a02cdac6"}],"releasenotes/notes/OVSVif-hybrid-unplug-f37bf57bc8e913de.yaml":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"191cc87857f0aa044011e89a189ec975bebc1242","unresolved":true,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"other:"},{"line_number":4,"context_line":"  - |"},{"line_number":5,"context_line":"    The unplug() method for VIFOpenVSwitch type now checks for existence of"},{"line_number":6,"context_line":"    linux bridge used in hybrid plugging mechanism. In case it exists, the"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"21d5fc08_3b88e0fd","line":3,"updated":"2022-04-23 09:04:28.000000000","message":"this should be in the feature section not other","commit_id":"67fb05c2833ef792a094dc4c280870dbf5f8f06c"},{"author":{"_account_id":8655,"name":"Jakub Libosvar","email":"libosvar@redhat.com","username":"jlibosva"},"change_message_id":"68f1da72da96e2af6c9ef813e525fcd966e04d6c","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"other:"},{"line_number":4,"context_line":"  - |"},{"line_number":5,"context_line":"    The unplug() method for VIFOpenVSwitch type now checks for existence of"},{"line_number":6,"context_line":"    linux bridge used in hybrid plugging mechanism. In case it exists, the"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"a38b8557_ef5dfad6","line":3,"in_reply_to":"21d5fc08_3b88e0fd","updated":"2022-04-25 18:32:16.000000000","message":"Done","commit_id":"67fb05c2833ef792a094dc4c280870dbf5f8f06c"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"e1d0db4c104f2d0adbdfc9f96808e13ac7822c84","unresolved":true,"context_lines":[{"line_number":2,"context_line":""},{"line_number":3,"context_line":"feature:"},{"line_number":4,"context_line":"  - |"},{"line_number":5,"context_line":"    The unplug() method for VIFOpenVSwitch type now checks for existence of"},{"line_number":6,"context_line":"    linux bridge used in hybrid plugging mechanism. In case it exists, the"},{"line_number":7,"context_line":"    interfaces related to the hybrid plugging are deleted too. This is useful"},{"line_number":8,"context_line":"    in particular for cold migration use case when target node has updated"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"07f5b052_06ffb020","line":5,"range":{"start_line":5,"start_character":8,"end_line":5,"end_character":16},"updated":"2022-06-30 14:34:30.000000000","message":"nit:\n\n  ``unplug()``","commit_id":"9ace551db2262d1134ad984ae8a10436a02cdac6"}]}
