)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":34118,"name":"Arnau Verdaguer","email":"averdagu@redhat.com","username":"averdaguer"},"change_message_id":"625d1a67944c08eea37f378695cb91772a7412d1","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"08b60f73_309f5292","updated":"2023-07-20 15:30:41.000000000","message":"Thanks Rodolfo, good patch! I\u0027m not voting yet since I did not test it","commit_id":"d3f9440cc628d21aacf8fc155395727c8cfd954a"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"ff68e26dfcd01fa91ee7a87fbbe8587b1c73bcaf","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"0177b613_1c7c3fe5","updated":"2023-08-24 12:41:51.000000000","message":"recheck\n\ntest_resize_volume_backed_server_confirm failure looks unrelated","commit_id":"e1f887ca9ffa73dde8ab41590f2131f3297aa3cd"}],"neutron/common/ovn/utils.py":[{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"50ce10d75eaf206af3471e8588863043b5dc35bf","unresolved":true,"context_lines":[{"line_number":1080,"context_line":"def get_requested_chassis(requested_chassis):"},{"line_number":1081,"context_line":"    \"\"\"Returns a list with the items in the LSP.options:requested-chassis\"\"\""},{"line_number":1082,"context_line":"    if isinstance(requested_chassis, str):"},{"line_number":1083,"context_line":"        return requested_chassis.split(\u0027,\u0027)"}],"source_content_type":"text/x-python","patch_set":4,"id":"28ceba3c_ec961052","line":1083,"updated":"2023-07-21 12:16:23.000000000","message":"Should we return an empty list if the type is not what we expect ? Or an error ?\n\nI know this method is only being used by the new code and it adds a \u0027\u0027 (empty string) as default value for get() but, since this method should also be an stand-alone thing it should address other future usages as well.","commit_id":"d2d9ef989fb5c9af1a64e7a0241ecb59132e29d3"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"187cbde01ac6d205422cbb477123d7d3f1f1d289","unresolved":true,"context_lines":[{"line_number":1080,"context_line":"def get_requested_chassis(requested_chassis):"},{"line_number":1081,"context_line":"    \"\"\"Returns a list with the items in the LSP.options:requested-chassis\"\"\""},{"line_number":1082,"context_line":"    if isinstance(requested_chassis, str):"},{"line_number":1083,"context_line":"        return requested_chassis.split(\u0027,\u0027)"}],"source_content_type":"text/x-python","patch_set":4,"id":"547aae67_8b26dc7c","line":1083,"in_reply_to":"28ceba3c_ec961052","updated":"2023-08-22 12:46:23.000000000","message":"I still think we should return something or raise an error if the type of the parameter is not what we expect here","commit_id":"d2d9ef989fb5c9af1a64e7a0241ecb59132e29d3"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"8ffe9f630689b00bcfda393f0f0430c7cec3ad46","unresolved":false,"context_lines":[{"line_number":1080,"context_line":"def get_requested_chassis(requested_chassis):"},{"line_number":1081,"context_line":"    \"\"\"Returns a list with the items in the LSP.options:requested-chassis\"\"\""},{"line_number":1082,"context_line":"    if isinstance(requested_chassis, str):"},{"line_number":1083,"context_line":"        return requested_chassis.split(\u0027,\u0027)"}],"source_content_type":"text/x-python","patch_set":4,"id":"7ac89c5f_7f6a8d65","line":1083,"in_reply_to":"547aae67_8b26dc7c","updated":"2023-08-24 09:05:22.000000000","message":"Right, the default returned value should be [].","commit_id":"d2d9ef989fb5c9af1a64e7a0241ecb59132e29d3"},{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"e3f87b2aa71f3ea8a6303e9bdcdaa885feb0b78d","unresolved":true,"context_lines":[{"line_number":1085,"context_line":"def get_requested_chassis(requested_chassis):"},{"line_number":1086,"context_line":"    \"\"\"Returns a list with the items in the LSP.options:requested-chassis\"\"\""},{"line_number":1087,"context_line":"    if isinstance(requested_chassis, str):"},{"line_number":1088,"context_line":"        return requested_chassis.split(\u0027,\u0027)"},{"line_number":1089,"context_line":"    return []"}],"source_content_type":"text/x-python","patch_set":7,"id":"7f4a7342_a3fbc4b6","line":1088,"updated":"2023-08-25 14:32:36.000000000","message":"Just a comment that the default value of \u0027\u0027 from the caller will return [\u0027\u0027] here, which technically has a length of 1, not zero. And that\u0027s different than returning [] below. But maybe that never happens?","commit_id":"e1f887ca9ffa73dde8ab41590f2131f3297aa3cd"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"bc45e88c6d0cc8376b6c5ef13552cd43c8ec8fc8","unresolved":false,"context_lines":[{"line_number":1085,"context_line":"def get_requested_chassis(requested_chassis):"},{"line_number":1086,"context_line":"    \"\"\"Returns a list with the items in the LSP.options:requested-chassis\"\"\""},{"line_number":1087,"context_line":"    if isinstance(requested_chassis, str):"},{"line_number":1088,"context_line":"        return requested_chassis.split(\u0027,\u0027)"},{"line_number":1089,"context_line":"    return []"}],"source_content_type":"text/x-python","patch_set":7,"id":"c2decc3c_d57af355","line":1088,"in_reply_to":"7f4a7342_a3fbc4b6","updated":"2023-08-25 15:06:08.000000000","message":"Yes but that is not a problem. This is used in [1] and we are expecting more than 1 items.\n\n[1]https://review.opendev.org/c/openstack/neutron/+/888769/7/neutron/plugins/ml2/drivers/ovn/mech_driver/ovsdb/ovsdb_monitor.py#282","commit_id":"e1f887ca9ffa73dde8ab41590f2131f3297aa3cd"}],"neutron/plugins/ml2/drivers/ovn/mech_driver/ovsdb/ovsdb_monitor.py":[{"author":{"_account_id":34118,"name":"Arnau Verdaguer","email":"averdagu@redhat.com","username":"averdaguer"},"change_message_id":"625d1a67944c08eea37f378695cb91772a7412d1","unresolved":true,"context_lines":[{"line_number":282,"context_line":"        if len(req_chassis) \u003e 1:"},{"line_number":283,"context_line":"            # This event has been issued during a LSP migration. During this"},{"line_number":284,"context_line":"            # process, the LSP will change the port binding but the port status"},{"line_number":285,"context_line":"            # will be handled by the ``LogicalSwitchPortCreateDownEvent`` and"},{"line_number":286,"context_line":"            # ``LogicalSwitchPortCreateUpEvent`` events."},{"line_number":287,"context_line":"            return False"},{"line_number":288,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"1708351e_334b2831","line":285,"range":{"start_line":285,"start_character":39,"end_line":285,"end_character":71},"updated":"2023-07-20 15:30:41.000000000","message":"I think that during Live migration we don\u0027t see any LogicalSwitchPortCreateDownEvent and LogicalSwitchPortCreateUpEvent, we see The UpdateUpEvent and the UpdateDownEvent. Am I right?","commit_id":"d3f9440cc628d21aacf8fc155395727c8cfd954a"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"8ffe9f630689b00bcfda393f0f0430c7cec3ad46","unresolved":false,"context_lines":[{"line_number":282,"context_line":"        if len(req_chassis) \u003e 1:"},{"line_number":283,"context_line":"            # This event has been issued during a LSP migration. During this"},{"line_number":284,"context_line":"            # process, the LSP will change the port binding but the port status"},{"line_number":285,"context_line":"            # will be handled by the ``LogicalSwitchPortCreateDownEvent`` and"},{"line_number":286,"context_line":"            # ``LogicalSwitchPortCreateUpEvent`` events."},{"line_number":287,"context_line":"            return False"},{"line_number":288,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"b8d43bbe_142dab07","line":285,"range":{"start_line":285,"start_character":39,"end_line":285,"end_character":71},"in_reply_to":"1708351e_334b2831","updated":"2023-08-24 09:05:22.000000000","message":"Right, not the CreateUp/Down but the UpdateUp/Down","commit_id":"d3f9440cc628d21aacf8fc155395727c8cfd954a"}]}
