)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"21745bcaf36fe2f8f9a8cdec4e3670920aadcd4c","unresolved":true,"context_lines":[{"line_number":4,"context_line":"Commit:     kyu0 \u003ckyu0.lee@samsung.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2026-05-11 16:54:23 +0900"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Set MTU of metadata port tap interface to network MTU"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"The metadata port tap interface MTU was not being set to the network"},{"line_number":10,"context_line":"MTU, causing a mismatch between VM interface MTU and metadata port"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"bc6f7113_d22ec386","line":7,"range":{"start_line":7,"start_character":11,"end_line":7,"end_character":24},"updated":"2026-05-11 09:04:18.000000000","message":"and LB (https://review.opendev.org/c/openstack/neutron/+/988044/1/neutron/plugins/ml2/drivers/ovn/mech_driver/ovsdb/ovn_client.py#447)","commit_id":"b86acdd9efffacd767daad2e529af07ebfb35679"},{"author":{"_account_id":36716,"name":"Kyuyeong Lee","display_name":"Kyuyeong Lee","email":"kyu0.lee@samsung.com","username":"kyu0"},"change_message_id":"a785acfbf76fe0ec72af1fb1af217b4b14c1d42e","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     kyu0 \u003ckyu0.lee@samsung.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2026-05-11 16:54:23 +0900"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Set MTU of metadata port tap interface to network MTU"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"The metadata port tap interface MTU was not being set to the network"},{"line_number":10,"context_line":"MTU, causing a mismatch between VM interface MTU and metadata port"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"461f9eb9_e7c95d10","line":7,"range":{"start_line":7,"start_character":11,"end_line":7,"end_character":24},"in_reply_to":"bc6f7113_d22ec386","updated":"2026-05-13 07:01:19.000000000","message":"I\u0027ve modified the commit message in Patchset 2. Thanks.","commit_id":"b86acdd9efffacd767daad2e529af07ebfb35679"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"21745bcaf36fe2f8f9a8cdec4e3670920aadcd4c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"cdfc5809_a2b0dac4","updated":"2026-05-11 09:04:18.000000000","message":"IMPORTANT: we are not considering the case when the network MTU is updated (if we actually want to consider it). If not, we must document it.\n\nNOTE: make reference to the failed patch [1] that initially tried to introduce this.\n\nNOTE: this patch deserves a release note\n\n\n[1]https://review.opendev.org/q/I7ff300e9634e5e3fc68d70540392109fd8b9babc","commit_id":"b86acdd9efffacd767daad2e529af07ebfb35679"},{"author":{"_account_id":36716,"name":"Kyuyeong Lee","display_name":"Kyuyeong Lee","email":"kyu0.lee@samsung.com","username":"kyu0"},"change_message_id":"2b7b6b37ac5f55a4f5d14dee8f66291e3069e21d","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"1ddb6c4a_72587490","in_reply_to":"cdfc5809_a2b0dac4","updated":"2026-05-13 07:00:20.000000000","message":"Thanks for the review, Rodolfo.\n\nI\u0027ve addressed your comments in Patchset 2:\n\n1. Documented that this patch does not update existing metadata datapaths when network MTU is changed.\n2. Added reference to previous attempt. This patch retrieves MTU from metadata port external_ids instead of Port_Binding external_ids.\n3. Added release note.","commit_id":"b86acdd9efffacd767daad2e529af07ebfb35679"},{"author":{"_account_id":36716,"name":"Kyuyeong Lee","display_name":"Kyuyeong Lee","email":"kyu0.lee@samsung.com","username":"kyu0"},"change_message_id":"1c33c51ffd18a1680d17bfa7b6fae5af5fca0efe","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":2,"id":"d7b526c0_5c397640","updated":"2026-05-14 04:45:01.000000000","message":"Rodolfo, I have a question about handling existing networks.\n\nThis patch only applies the correct MTU to newly created networks.\nFor existing networks, should we provide a migration mechanism (e.g., a separate script or internal logic), or is it acceptable to leave them as-is?\n\nI\u0027m leaning towards not providing migration to avoid complexity and potential service disruption during metadata namespace recreation.","commit_id":"76fd035791149903bb2ae06879a91ef82cb7c811"},{"author":{"_account_id":36716,"name":"Kyuyeong Lee","display_name":"Kyuyeong Lee","email":"kyu0.lee@samsung.com","username":"kyu0"},"change_message_id":"872e7dd9bbc796eadb81d4f7635e8b98297989b7","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"d859a912_6a48924b","updated":"2026-05-19 05:39:20.000000000","message":"I\u0027ve submitted an alternative approach for this bug at https://review.opendev.org/+/989055\n\nThe key difference is that it retrieves MTU from Logical_Switch external_ids instead of Port_Binding external_ids, which avoids ML2 driver changes and provides a more direct data source.","commit_id":"cfd621770f13729c7cc89c065064498236ff122c"},{"author":{"_account_id":36716,"name":"Kyuyeong Lee","display_name":"Kyuyeong Lee","email":"kyu0.lee@samsung.com","username":"kyu0"},"change_message_id":"8d06184c93669ff08c0728ec34881689f39e4211","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"5b7550bf_86ce0af3","updated":"2026-05-15 05:00:04.000000000","message":"recheck neutron-ovn-rally-task","commit_id":"cfd621770f13729c7cc89c065064498236ff122c"},{"author":{"_account_id":36716,"name":"Kyuyeong Lee","display_name":"Kyuyeong Lee","email":"kyu0.lee@samsung.com","username":"kyu0"},"change_message_id":"7a97de523677a435d80de58b03e982604e87c68c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"e5de72e2_dbe0b355","updated":"2026-05-20 01:42:43.000000000","message":"recheck openstack-tox-pep8, neutron-functional","commit_id":"76e1be24ee9a8168c6d65364969f435114ad2b8a"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"583e20e4afb48e99d2569d3d93f5187beb07f237","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"ca4e5c5c_6d9c4873","updated":"2026-05-20 06:14:31.000000000","message":"recheck pep8","commit_id":"76e1be24ee9a8168c6d65364969f435114ad2b8a"}],"neutron/agent/ovn/metadata/agent.py":[{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"21745bcaf36fe2f8f9a8cdec4e3670920aadcd4c","unresolved":true,"context_lines":[{"line_number":772,"context_line":"        # The VM port\u0027s external_ids doesn\u0027t have MTU, only the metadata port"},{"line_number":773,"context_line":"        # does"},{"line_number":774,"context_line":"        datapath_uuid \u003d str(datapath.uuid)"},{"line_number":775,"context_line":"        metadata_port \u003d self.sb_idl.get_metadata_port(datapath_uuid)"},{"line_number":776,"context_line":"        mtu \u003d 0"},{"line_number":777,"context_line":"        if metadata_port:"},{"line_number":778,"context_line":"            mtu \u003d int(metadata_port.external_ids.get("}],"source_content_type":"text/x-python","patch_set":1,"id":"5e344704_53b45939","line":775,"range":{"start_line":775,"start_character":8,"end_line":775,"end_character":68},"updated":"2026-05-11 09:04:18.000000000","message":"This command is not necessary. In `_get_provision_params` we are already retrieving the metadata port. You can store the MTU there.","commit_id":"b86acdd9efffacd767daad2e529af07ebfb35679"},{"author":{"_account_id":36716,"name":"Kyuyeong Lee","display_name":"Kyuyeong Lee","email":"kyu0.lee@samsung.com","username":"kyu0"},"change_message_id":"f9f32a1c6fa8a5e6790ca914aa143b4e3cc62d17","unresolved":false,"context_lines":[{"line_number":772,"context_line":"        # The VM port\u0027s external_ids doesn\u0027t have MTU, only the metadata port"},{"line_number":773,"context_line":"        # does"},{"line_number":774,"context_line":"        datapath_uuid \u003d str(datapath.uuid)"},{"line_number":775,"context_line":"        metadata_port \u003d self.sb_idl.get_metadata_port(datapath_uuid)"},{"line_number":776,"context_line":"        mtu \u003d 0"},{"line_number":777,"context_line":"        if metadata_port:"},{"line_number":778,"context_line":"            mtu \u003d int(metadata_port.external_ids.get("}],"source_content_type":"text/x-python","patch_set":1,"id":"e0740826_036ce465","line":775,"range":{"start_line":775,"start_character":8,"end_line":775,"end_character":68},"in_reply_to":"5e344704_53b45939","updated":"2026-05-13 07:03:18.000000000","message":"Thank you. I\u0027ve applied it in Patchset 2.","commit_id":"b86acdd9efffacd767daad2e529af07ebfb35679"},{"author":{"_account_id":34271,"name":"Miro Tomaska","display_name":"Miro Tomaska","email":"mtomaska@redhat.com","username":"mtomaska"},"change_message_id":"d099d2bc19177ceb6b35d00eccf9462a698da10c","unresolved":true,"context_lines":[{"line_number":735,"context_line":"            metadata_port.external_ids["},{"line_number":736,"context_line":"                ovn_const.OVN_CIDRS_EXT_ID_KEY].split(\u0027 \u0027))"},{"line_number":737,"context_line":"        mtu \u003d int(metadata_port.external_ids.get("},{"line_number":738,"context_line":"            ovn_const.OVN_NETWORK_MTU_EXT_ID_KEY) or \u00270\u0027)"},{"line_number":739,"context_line":"        metadata_port_info \u003d MetadataPortInfo(mac, ip_addresses,"},{"line_number":740,"context_line":"                                              metadata_port.logical_port, mtu)"},{"line_number":741,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"273195a3_124bfd3a","line":738,"range":{"start_line":738,"start_character":11,"end_line":738,"end_character":57},"updated":"2026-05-14 14:22:47.000000000","message":"nit: `get` provides a way to specify default value `dictionary.get(keyname, default_value\u003dNone)`\n\nAlso isn\u0027t 0 a bad default value? Why not default to `1500`? And log a warning that mtu was not retrieved and default of 1500 is getting set instead.","commit_id":"76fd035791149903bb2ae06879a91ef82cb7c811"},{"author":{"_account_id":36716,"name":"Kyuyeong Lee","display_name":"Kyuyeong Lee","email":"kyu0.lee@samsung.com","username":"kyu0"},"change_message_id":"b1e790c2ad1351bdeb19f35e1acbbba6e931bab5","unresolved":true,"context_lines":[{"line_number":735,"context_line":"            metadata_port.external_ids["},{"line_number":736,"context_line":"                ovn_const.OVN_CIDRS_EXT_ID_KEY].split(\u0027 \u0027))"},{"line_number":737,"context_line":"        mtu \u003d int(metadata_port.external_ids.get("},{"line_number":738,"context_line":"            ovn_const.OVN_NETWORK_MTU_EXT_ID_KEY) or \u00270\u0027)"},{"line_number":739,"context_line":"        metadata_port_info \u003d MetadataPortInfo(mac, ip_addresses,"},{"line_number":740,"context_line":"                                              metadata_port.logical_port, mtu)"},{"line_number":741,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"442e1d46_1cd3a07c","line":738,"range":{"start_line":738,"start_character":11,"end_line":738,"end_character":57},"in_reply_to":"273195a3_124bfd3a","updated":"2026-05-15 02:20:00.000000000","message":"Thanks for the review, Miro.\n\nI\u0027ve applied the code style improvement using dict.get(key, default) in Patchset 3.\n\nRegarding the default value, I prefer keeping it as 0.\nWhen MTU is not found in external_ids, setting it to 0 ensures that the `if mtu:` check at line 805 evaluates to False, and the system default MTU is used instead.","commit_id":"76fd035791149903bb2ae06879a91ef82cb7c811"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"9a7866e035410a866543d1629c03fe2af9b00066","unresolved":true,"context_lines":[{"line_number":52,"context_line":"MetadataPortInfo \u003d collections.namedtuple(\u0027MetadataPortInfo\u0027, [\u0027mac\u0027,"},{"line_number":53,"context_line":"                                                               \u0027ip_addresses\u0027,"},{"line_number":54,"context_line":"                                                               \u0027logical_port\u0027,"},{"line_number":55,"context_line":"                                                               \u0027mtu\u0027])"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"OVN_METADATA_UUID_NAMESPACE \u003d uuid.UUID(\u0027d34bf9f6-da32-4871-9af8-15a4626b41ab\u0027)"},{"line_number":58,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"da63fbde_1cbb0a23","line":55,"range":{"start_line":55,"start_character":63,"end_line":55,"end_character":70},"updated":"2026-05-19 11:07:32.000000000","message":"nit: in order to keep the git history, it is better to do this:\n```\n                                                               \u0027logical_port\u0027,\n                                                               \u0027mtu\u0027,\n                                                               ])\n```","commit_id":"cfd621770f13729c7cc89c065064498236ff122c"},{"author":{"_account_id":36716,"name":"Kyuyeong Lee","display_name":"Kyuyeong Lee","email":"kyu0.lee@samsung.com","username":"kyu0"},"change_message_id":"eb28165e7240a4177d04540643f956946b211810","unresolved":false,"context_lines":[{"line_number":52,"context_line":"MetadataPortInfo \u003d collections.namedtuple(\u0027MetadataPortInfo\u0027, [\u0027mac\u0027,"},{"line_number":53,"context_line":"                                                               \u0027ip_addresses\u0027,"},{"line_number":54,"context_line":"                                                               \u0027logical_port\u0027,"},{"line_number":55,"context_line":"                                                               \u0027mtu\u0027])"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"OVN_METADATA_UUID_NAMESPACE \u003d uuid.UUID(\u0027d34bf9f6-da32-4871-9af8-15a4626b41ab\u0027)"},{"line_number":58,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"d295041a_161df362","line":55,"range":{"start_line":55,"start_character":63,"end_line":55,"end_character":70},"in_reply_to":"da63fbde_1cbb0a23","updated":"2026-05-19 11:22:13.000000000","message":"Thanks, applied in Patchset 4.","commit_id":"cfd621770f13729c7cc89c065064498236ff122c"}],"neutron/plugins/ml2/drivers/ovn/mech_driver/ovsdb/ovn_client.py":[{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"21745bcaf36fe2f8f9a8cdec4e3670920aadcd4c","unresolved":true,"context_lines":[{"line_number":448,"context_line":"                port_type \u003d ovn_const.LSP_TYPE_LOCALPORT"},{"line_number":449,"context_line":"                # Set MTU for LOCALPORT type ports (metadata and OVN LB HM"},{"line_number":450,"context_line":"                # ports) from the network"},{"line_number":451,"context_line":"                port_net \u003d self._plugin.get_network(context,"},{"line_number":452,"context_line":"                                                    port[\u0027network_id\u0027])"},{"line_number":453,"context_line":"                mtu \u003d str(port_net[\u0027mtu\u0027])"},{"line_number":454,"context_line":""},{"line_number":455,"context_line":"            if utils.is_port_external(port):"},{"line_number":456,"context_line":"                port_type \u003d ovn_const.LSP_TYPE_EXTERNAL"},{"line_number":457,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"b37ab6d7_1d618030","line":454,"range":{"start_line":451,"start_character":16,"end_line":454,"end_character":1},"updated":"2026-05-11 09:04:18.000000000","message":"The variable `port` comes from `Ml2Plugin.create_port` or `update_port`. The `mech_context` is a `PortContext` type variable. Inside the port dictionary there is also the network dictionary with the `mtu` field.","commit_id":"b86acdd9efffacd767daad2e529af07ebfb35679"},{"author":{"_account_id":36716,"name":"Kyuyeong Lee","display_name":"Kyuyeong Lee","email":"kyu0.lee@samsung.com","username":"kyu0"},"change_message_id":"e21ecbbe77010f043bdd666154785221ed49e538","unresolved":false,"context_lines":[{"line_number":448,"context_line":"                port_type \u003d ovn_const.LSP_TYPE_LOCALPORT"},{"line_number":449,"context_line":"                # Set MTU for LOCALPORT type ports (metadata and OVN LB HM"},{"line_number":450,"context_line":"                # ports) from the network"},{"line_number":451,"context_line":"                port_net \u003d self._plugin.get_network(context,"},{"line_number":452,"context_line":"                                                    port[\u0027network_id\u0027])"},{"line_number":453,"context_line":"                mtu \u003d str(port_net[\u0027mtu\u0027])"},{"line_number":454,"context_line":""},{"line_number":455,"context_line":"            if utils.is_port_external(port):"},{"line_number":456,"context_line":"                port_type \u003d ovn_const.LSP_TYPE_EXTERNAL"},{"line_number":457,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"24c12e40_c0dc2dc5","line":454,"range":{"start_line":451,"start_character":16,"end_line":454,"end_character":1},"in_reply_to":"b37ab6d7_1d618030","updated":"2026-05-13 07:03:34.000000000","message":"Thank you. I\u0027ve applied it in Patchset 2.","commit_id":"b86acdd9efffacd767daad2e529af07ebfb35679"}]}
