)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"1a315cb05bfeb74b58fb0ddc88c6d7df6e8f859d","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"808446ba_dd6ba234","updated":"2026-05-28 18:01:13.000000000","message":"We need to add some kind of test to neutron/tests/common/test_db_base_plugin_v2.py so we know this works","commit_id":"1595ef32a7c27a258e19a1ed286c1d46d216eec1"},{"author":{"_account_id":36760,"name":"Jimin Shin","display_name":"Jimin Shin","email":"jimin3.shin@samsung.com","username":"Jimin"},"change_message_id":"82cacc1b2a51fcb384a43ac4448af39170da2608","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"036b4d53_039f5fc3","in_reply_to":"808446ba_dd6ba234","updated":"2026-05-29 12:05:53.000000000","message":"I added some tests! Thank you!","commit_id":"1595ef32a7c27a258e19a1ed286c1d46d216eec1"},{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"94f1e00179621754e0ec16e7c05a6a190695aaff","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"ce03fefd_28822689","updated":"2026-06-02 14:14:23.000000000","message":"what happens with the already in the db unsanitized mac addresses ? have you tried that path like after an upgrade?","commit_id":"e1e02a2b88a5eaf279c4e7b6cd7892a3d4c788f3"}],"neutron/db/db_base_plugin_v2.py":[{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"1a315cb05bfeb74b58fb0ddc88c6d7df6e8f859d","unresolved":true,"context_lines":[{"line_number":1628,"context_line":""},{"line_number":1629,"context_line":"        with db_api.CONTEXT_WRITER.using(context):"},{"line_number":1630,"context_line":"            db_port \u003d db_port or self._get_port(context, id)"},{"line_number":1631,"context_line":"            new_mac \u003d new_port.get(\u0027mac_address\u0027)"},{"line_number":1632,"context_line":"            if new_mac:"},{"line_number":1633,"context_line":"                new_mac \u003d converters.convert_to_sanitized_mac_address(new_mac)"},{"line_number":1634,"context_line":"                new_port[\u0027mac_address\u0027] \u003d new_mac"},{"line_number":1635,"context_line":"            self._validate_port_for_update(context, db_port, new_port, new_mac)"},{"line_number":1636,"context_line":"            # Note: _make_port_dict is called here to load extension data"},{"line_number":1637,"context_line":"            # (specifically host binding).  The IPAM plugin is separate from"}],"source_content_type":"text/x-python","patch_set":1,"id":"ed72ee70_182ecfbc","line":1634,"range":{"start_line":1631,"start_character":12,"end_line":1634,"end_character":49},"updated":"2026-05-28 18:01:13.000000000","message":"nit: I guess this whole block could be outside the write context, right after new_port is initialized.","commit_id":"1595ef32a7c27a258e19a1ed286c1d46d216eec1"},{"author":{"_account_id":36760,"name":"Jimin Shin","display_name":"Jimin Shin","email":"jimin3.shin@samsung.com","username":"Jimin"},"change_message_id":"82cacc1b2a51fcb384a43ac4448af39170da2608","unresolved":true,"context_lines":[{"line_number":1628,"context_line":""},{"line_number":1629,"context_line":"        with db_api.CONTEXT_WRITER.using(context):"},{"line_number":1630,"context_line":"            db_port \u003d db_port or self._get_port(context, id)"},{"line_number":1631,"context_line":"            new_mac \u003d new_port.get(\u0027mac_address\u0027)"},{"line_number":1632,"context_line":"            if new_mac:"},{"line_number":1633,"context_line":"                new_mac \u003d converters.convert_to_sanitized_mac_address(new_mac)"},{"line_number":1634,"context_line":"                new_port[\u0027mac_address\u0027] \u003d new_mac"},{"line_number":1635,"context_line":"            self._validate_port_for_update(context, db_port, new_port, new_mac)"},{"line_number":1636,"context_line":"            # Note: _make_port_dict is called here to load extension data"},{"line_number":1637,"context_line":"            # (specifically host binding).  The IPAM plugin is separate from"}],"source_content_type":"text/x-python","patch_set":1,"id":"666c7184_7d90042c","line":1634,"range":{"start_line":1631,"start_character":12,"end_line":1634,"end_character":49},"in_reply_to":"ed72ee70_182ecfbc","updated":"2026-05-29 12:05:53.000000000","message":"I moved the code block!","commit_id":"1595ef32a7c27a258e19a1ed286c1d46d216eec1"}]}
