)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":8655,"name":"Jakub Libosvar","email":"libosvar@redhat.com","username":"jlibosva"},"change_message_id":"379fbac9fd7d29f77463cab07650eb275c5b2872","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"896d115f_4c5e02df","updated":"2021-11-17 18:32:15.000000000","message":"I just noticed there is another solution for this problem: https://review.opendev.org/c/openstack/neutron/+/813883","commit_id":"0b7ddb71a72732c881e7d023fbbd57ba75cb8586"}],"neutron/plugins/ml2/drivers/ovn/mech_driver/ovsdb/ovn_db_sync.py":[{"author":{"_account_id":5756,"name":"Terry Wilson","email":"twilson@redhat.com","username":"otherwiseguy"},"change_message_id":"d543b8e4e472c4ccdaeb28ff52b480f050cfa374","unresolved":true,"context_lines":[{"line_number":226,"context_line":"    def _get_acls_from_port_groups(self):"},{"line_number":227,"context_line":"        ovn_acls \u003d []"},{"line_number":228,"context_line":"        port_groups \u003d self.ovn_api.db_list_rows(\u0027Port_Group\u0027).execute()"},{"line_number":229,"context_line":"        acl_columns \u003d (set(self.ovn_api._tables[\u0027ACL\u0027].columns) \u0026"},{"line_number":230,"context_line":"                       set(ovn_const.ACL_EXPECTED_COLUMNS_NBDB))"},{"line_number":231,"context_line":"        acl_columns.discard(\u0027external_ids\u0027)"},{"line_number":232,"context_line":"        for pg in port_groups:"}],"source_content_type":"text/x-python","patch_set":1,"id":"51d62444_a78462c2","line":229,"updated":"2021-11-17 20:32:58.000000000","message":"silly nits would be to just go ahead and make the constant a set and do:\n\n acl_columns \u003d (self.ovn.api._tables[\u0027ACL\u0027].columns.keys \u0026\n                ovn_const.ACL_EXPECTED_COLUMNS_NBDB) - {\u0027external_ids\u0027}\n\nthe - {\u0027external_ids\u0027} might be taking code golf a bit too far. 😋 Of course, this relies on py3 only behavior, so meh.","commit_id":"0b7ddb71a72732c881e7d023fbbd57ba75cb8586"},{"author":{"_account_id":5756,"name":"Terry Wilson","email":"twilson@redhat.com","username":"otherwiseguy"},"change_message_id":"af5e1609c0dfb04db2503de9d7422e47307deb72","unresolved":false,"context_lines":[{"line_number":226,"context_line":"    def _get_acls_from_port_groups(self):"},{"line_number":227,"context_line":"        ovn_acls \u003d []"},{"line_number":228,"context_line":"        port_groups \u003d self.ovn_api.db_list_rows(\u0027Port_Group\u0027).execute()"},{"line_number":229,"context_line":"        acl_columns \u003d (set(self.ovn_api._tables[\u0027ACL\u0027].columns) \u0026"},{"line_number":230,"context_line":"                       set(ovn_const.ACL_EXPECTED_COLUMNS_NBDB))"},{"line_number":231,"context_line":"        acl_columns.discard(\u0027external_ids\u0027)"},{"line_number":232,"context_line":"        for pg in port_groups:"}],"source_content_type":"text/x-python","patch_set":1,"id":"84fdbdfb_c1049711","line":229,"in_reply_to":"183be2a3_d0b69393","updated":"2021-11-17 20:45:17.000000000","message":"It almost certainly is better to use discard() :D","commit_id":"0b7ddb71a72732c881e7d023fbbd57ba75cb8586"},{"author":{"_account_id":8655,"name":"Jakub Libosvar","email":"libosvar@redhat.com","username":"jlibosva"},"change_message_id":"a56355822c8579262d9f3b2d59544c1d4603053e","unresolved":true,"context_lines":[{"line_number":226,"context_line":"    def _get_acls_from_port_groups(self):"},{"line_number":227,"context_line":"        ovn_acls \u003d []"},{"line_number":228,"context_line":"        port_groups \u003d self.ovn_api.db_list_rows(\u0027Port_Group\u0027).execute()"},{"line_number":229,"context_line":"        acl_columns \u003d (set(self.ovn_api._tables[\u0027ACL\u0027].columns) \u0026"},{"line_number":230,"context_line":"                       set(ovn_const.ACL_EXPECTED_COLUMNS_NBDB))"},{"line_number":231,"context_line":"        acl_columns.discard(\u0027external_ids\u0027)"},{"line_number":232,"context_line":"        for pg in port_groups:"}],"source_content_type":"text/x-python","patch_set":1,"id":"183be2a3_d0b69393","line":229,"in_reply_to":"51d62444_a78462c2","updated":"2021-11-17 20:38:27.000000000","message":"Thanks, I didn\u0027t know dict views are set-like. I thought about doing \"- {\u0027external_ids\u0027}\" but I thought it\u0027s faster to remove one rather then doing set difference.","commit_id":"0b7ddb71a72732c881e7d023fbbd57ba75cb8586"},{"author":{"_account_id":5756,"name":"Terry Wilson","email":"twilson@redhat.com","username":"otherwiseguy"},"change_message_id":"d543b8e4e472c4ccdaeb28ff52b480f050cfa374","unresolved":true,"context_lines":[{"line_number":232,"context_line":"        for pg in port_groups:"},{"line_number":233,"context_line":"            acls \u003d getattr(pg, \u0027acls\u0027, [])"},{"line_number":234,"context_line":"            for acl in acls:"},{"line_number":235,"context_line":"                acl_string \u003d {}"},{"line_number":236,"context_line":"                acl_string[\u0027port_group\u0027] \u003d pg.name"},{"line_number":237,"context_line":"                for acl_key in acl_columns:"},{"line_number":238,"context_line":"                    acl_string[acl_key] \u003d getattr(acl, acl_key)"}],"source_content_type":"text/x-python","patch_set":1,"id":"8b2f4995_9e9efa1f","line":235,"updated":"2021-11-17 20:32:58.000000000","message":"Continuing the silly nit train:\n\n acl_string \u003d {k: getattr(acl, k) for k in acl_columns}\n acl_string[\u0027port_group\u0027] \u003d pg.name","commit_id":"0b7ddb71a72732c881e7d023fbbd57ba75cb8586"},{"author":{"_account_id":8655,"name":"Jakub Libosvar","email":"libosvar@redhat.com","username":"jlibosva"},"change_message_id":"a56355822c8579262d9f3b2d59544c1d4603053e","unresolved":false,"context_lines":[{"line_number":232,"context_line":"        for pg in port_groups:"},{"line_number":233,"context_line":"            acls \u003d getattr(pg, \u0027acls\u0027, [])"},{"line_number":234,"context_line":"            for acl in acls:"},{"line_number":235,"context_line":"                acl_string \u003d {}"},{"line_number":236,"context_line":"                acl_string[\u0027port_group\u0027] \u003d pg.name"},{"line_number":237,"context_line":"                for acl_key in acl_columns:"},{"line_number":238,"context_line":"                    acl_string[acl_key] \u003d getattr(acl, acl_key)"}],"source_content_type":"text/x-python","patch_set":1,"id":"c7b221f5_9cc8b0cb","line":235,"in_reply_to":"8b2f4995_9e9efa1f","updated":"2021-11-17 20:38:27.000000000","message":"Done","commit_id":"0b7ddb71a72732c881e7d023fbbd57ba75cb8586"}]}
