)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":9656,"name":"Ihar Hrachyshka","email":"ihrachys@redhat.com","username":"ihrachys","status":"Red Hat Networking Systems Engineer"},"change_message_id":"25929d8796912f16c064f4d25e5e2f6803494afc","unresolved":true,"context_lines":[{"line_number":4,"context_line":"Commit:     Daniel Alvarez Sanchez \u003cdalvarez@redhat.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2021-10-11 09:58:23 +0200"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"[ovn] Clean up MAC_Binding entries with ovsdb-client"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"In order to stop monitoring the MAC_Binding table in the SB"},{"line_number":10,"context_line":"database, that can eventually lead to OOM killers due to the lack"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"3f222fea_9afbc724","line":7,"updated":"2021-10-11 17:59:28.000000000","message":"I find this headline not reflect the goal of the patch.\n\nAFAIU the goal is to stop monitoring the table, and the switch to ovsdb-client is just a fallout from this decision. I believe the former should be the headline, and then the rest of the commit explains why we have to switch to ovsdb-client (because we stop monitoring through IDL).","commit_id":"ae2d4be57cf3d177c9365ff2305327e0b5e055ef"},{"author":{"_account_id":23804,"name":"Daniel Alvarez","email":"dalvarez@redhat.com","username":"dalvarez"},"change_message_id":"f160648bf14eb41498421ee7c87074e0345bb962","unresolved":true,"context_lines":[{"line_number":4,"context_line":"Commit:     Daniel Alvarez Sanchez \u003cdalvarez@redhat.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2021-10-11 09:58:23 +0200"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"[ovn] Clean up MAC_Binding entries with ovsdb-client"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"In order to stop monitoring the MAC_Binding table in the SB"},{"line_number":10,"context_line":"database, that can eventually lead to OOM killers due to the lack"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"23a28cac_d026678b","line":7,"in_reply_to":"3f222fea_9afbc724","updated":"2021-10-11 19:54:48.000000000","message":"Absolutely; thanks","commit_id":"ae2d4be57cf3d177c9365ff2305327e0b5e055ef"},{"author":{"_account_id":9656,"name":"Ihar Hrachyshka","email":"ihrachys@redhat.com","username":"ihrachys","status":"Red Hat Networking Systems Engineer"},"change_message_id":"0fabc8490bb8c88c55bacd5fbd73ddca25d67ff5","unresolved":true,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"[ovn] Stop monitoring the SB MAC_Binding table to reduce mem footprint"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"The MAC_Binding table in the SB database may grow indifinetely (due"},{"line_number":10,"context_line":"to a lack of an aging mechanism of its entries) and eventually"},{"line_number":11,"context_line":"lead to OOM killers for neutron-server which maintains an in-memory"},{"line_number":12,"context_line":"copy of the database."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":10,"id":"ee11d5a7_29ccd193","line":9,"updated":"2021-10-11 20:19:11.000000000","message":"indefinitely","commit_id":"1a3981ec3b14e0368b7a2a8b44f61ce80d22d385"},{"author":{"_account_id":23804,"name":"Daniel Alvarez","email":"dalvarez@redhat.com","username":"dalvarez"},"change_message_id":"83ab247244a3074e8c7a6116f342a0d2e14fa4db","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"[ovn] Stop monitoring the SB MAC_Binding table to reduce mem footprint"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"The MAC_Binding table in the SB database may grow indifinetely (due"},{"line_number":10,"context_line":"to a lack of an aging mechanism of its entries) and eventually"},{"line_number":11,"context_line":"lead to OOM killers for neutron-server which maintains an in-memory"},{"line_number":12,"context_line":"copy of the database."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":10,"id":"c63c550a_114032ce","line":9,"in_reply_to":"ee11d5a7_29ccd193","updated":"2021-10-11 21:59:31.000000000","message":"Done","commit_id":"1a3981ec3b14e0368b7a2a8b44f61ce80d22d385"},{"author":{"_account_id":9656,"name":"Ihar Hrachyshka","email":"ihrachys@redhat.com","username":"ihrachys","status":"Red Hat Networking Systems Engineer"},"change_message_id":"0fabc8490bb8c88c55bacd5fbd73ddca25d67ff5","unresolved":true,"context_lines":[{"line_number":13,"context_line":""},{"line_number":14,"context_line":"In order to stop monitoring this table, this patch is invoking"},{"line_number":15,"context_line":"the ovsdb-client tool to remove the entries associated to"},{"line_number":16,"context_line":"Floating IPs that have just been dettached. The execution of this"},{"line_number":17,"context_line":"tool is really fast as it will just invoke a JSON-RPC transact command"},{"line_number":18,"context_line":"which doesn\u0027t require downloading the database contents."},{"line_number":19,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":10,"id":"e460f8a9_58675037","line":16,"updated":"2021-10-11 20:19:11.000000000","message":"detached","commit_id":"1a3981ec3b14e0368b7a2a8b44f61ce80d22d385"},{"author":{"_account_id":23804,"name":"Daniel Alvarez","email":"dalvarez@redhat.com","username":"dalvarez"},"change_message_id":"83ab247244a3074e8c7a6116f342a0d2e14fa4db","unresolved":false,"context_lines":[{"line_number":13,"context_line":""},{"line_number":14,"context_line":"In order to stop monitoring this table, this patch is invoking"},{"line_number":15,"context_line":"the ovsdb-client tool to remove the entries associated to"},{"line_number":16,"context_line":"Floating IPs that have just been dettached. The execution of this"},{"line_number":17,"context_line":"tool is really fast as it will just invoke a JSON-RPC transact command"},{"line_number":18,"context_line":"which doesn\u0027t require downloading the database contents."},{"line_number":19,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":10,"id":"b2a322e0_bcb398e8","line":16,"in_reply_to":"e460f8a9_58675037","updated":"2021-10-11 21:59:31.000000000","message":"Done","commit_id":"1a3981ec3b14e0368b7a2a8b44f61ce80d22d385"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":9656,"name":"Ihar Hrachyshka","email":"ihrachys@redhat.com","username":"ihrachys","status":"Red Hat Networking Systems Engineer"},"change_message_id":"0fabc8490bb8c88c55bacd5fbd73ddca25d67ff5","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":10,"id":"9025adbf_8a244a1e","updated":"2021-10-11 20:19:11.000000000","message":"typos; no need to respin for just that but you can pick them up if there\u0027s another revision","commit_id":"1a3981ec3b14e0368b7a2a8b44f61ce80d22d385"},{"author":{"_account_id":23804,"name":"Daniel Alvarez","email":"dalvarez@redhat.com","username":"dalvarez"},"change_message_id":"374e0ca1b2231ebcca43fff977cf4f62e3134b19","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":10,"id":"27eae331_dd35f1ec","in_reply_to":"9025adbf_8a244a1e","updated":"2021-10-11 20:35:08.000000000","message":"agh, im a mess today (i shouldn\u0027t be working and trying to fix the damn functional test) :) Sorry and thanks for the comments will fix the typos if there\u0027s a need for another respin","commit_id":"1a3981ec3b14e0368b7a2a8b44f61ce80d22d385"},{"author":{"_account_id":5756,"name":"Terry Wilson","email":"twilson@redhat.com","username":"otherwiseguy"},"change_message_id":"71c93e2220ca067524a7eeab1a6de60d5bf84a18","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":11,"id":"9117c96e_9208dd3a","updated":"2021-10-11 21:21:21.000000000","message":"Looks like it is going to have SSL issues. :/","commit_id":"34e0b33cf62718a1d2d8fcdc85e1d529f5372601"},{"author":{"_account_id":23804,"name":"Daniel Alvarez","email":"dalvarez@redhat.com","username":"dalvarez"},"change_message_id":"7ef06e3a1bb7098e71d73885c1bce7eb2ecc2b36","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":12,"id":"1e1b3e1f_532c5575","updated":"2021-10-13 12:58:49.000000000","message":"recheck","commit_id":"f6c35527698119ee6f73a6a3613c9beebb563840"},{"author":{"_account_id":23804,"name":"Daniel Alvarez","email":"dalvarez@redhat.com","username":"dalvarez"},"change_message_id":"4a1c789548d2d81565c54fe9efcf95d776548a83","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":12,"id":"54691af4_a8039b5e","updated":"2021-10-13 07:06:25.000000000","message":"recheck","commit_id":"f6c35527698119ee6f73a6a3613c9beebb563840"},{"author":{"_account_id":23804,"name":"Daniel Alvarez","email":"dalvarez@redhat.com","username":"dalvarez"},"change_message_id":"05e4b18011ce677eafb974097f8874f42f932767","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":12,"id":"9ce200d3_f0edf9b9","updated":"2021-10-14 08:08:25.000000000","message":"recheck","commit_id":"f6c35527698119ee6f73a6a3613c9beebb563840"},{"author":{"_account_id":23804,"name":"Daniel Alvarez","email":"dalvarez@redhat.com","username":"dalvarez"},"change_message_id":"635b5d9db00afce63df8899a36080eb204d9d74b","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":12,"id":"ae81d554_5b8aec77","updated":"2021-10-12 07:37:57.000000000","message":"recheck","commit_id":"f6c35527698119ee6f73a6a3613c9beebb563840"},{"author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"change_message_id":"754403028c941fa8ddf3a531b36ae2e5bc9898f0","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":12,"id":"b2a8c9de_436ef9ba","updated":"2021-10-12 08:02:50.000000000","message":"recheck","commit_id":"f6c35527698119ee6f73a6a3613c9beebb563840"},{"author":{"_account_id":8655,"name":"Jakub Libosvar","email":"libosvar@redhat.com","username":"jlibosva"},"change_message_id":"1a6b66aab3d74ee2c37276c84d7c23025eff9c00","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":12,"id":"d9fba5e1_c33a2207","updated":"2021-10-13 21:05:43.000000000","message":"recheck","commit_id":"f6c35527698119ee6f73a6a3613c9beebb563840"},{"author":{"_account_id":8655,"name":"Jakub Libosvar","email":"libosvar@redhat.com","username":"jlibosva"},"change_message_id":"7bbdfa48bfaccc71f5a537e9701f52e27295c5c5","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":12,"id":"fc78da59_b2b490fe","updated":"2021-10-12 20:36:47.000000000","message":"recheck","commit_id":"f6c35527698119ee6f73a6a3613c9beebb563840"}],"neutron/plugins/ml2/drivers/ovn/mech_driver/mech_driver.py":[{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"de312b1501863cc048ae8734c7a79ca89e8d7d27","unresolved":true,"context_lines":[{"line_number":1099,"context_line":""},{"line_number":1100,"context_line":"    def delete_mac_binding_entries(self, external_ip):"},{"line_number":1101,"context_line":"        \"\"\"Delete all MAC_Binding entries associated to this IP address\"\"\""},{"line_number":1102,"context_line":"        cmd \u003d [\u0027ovsdb-client\u0027, \u0027transact\u0027, ovn_conf.get_ovn_sb_connection(),"},{"line_number":1103,"context_line":"               \u0027[\"OVN_Southbound\", {\"op\": \"delete\", \"table\": \"MAC_Binding\", \\"},{"line_number":1104,"context_line":"               \"where\": [[\"ip\", \"\u003d\u003d\", \"%s\"]]}]\u0027 % external_ip]"},{"line_number":1105,"context_line":"        return processutils.execute(*cmd,"}],"source_content_type":"text/x-python","patch_set":1,"id":"aa1da487_af020181","line":1102,"range":{"start_line":1102,"start_character":16,"end_line":1102,"end_character":28},"updated":"2021-10-07 07:59:55.000000000","message":"I think this is just a workaround. We should add a note here to undo this patch once the MAC aging feature is coded in core OVN.","commit_id":"60fe86c64da71626dd5897319ad3c5a112ac6289"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"de312b1501863cc048ae8734c7a79ca89e8d7d27","unresolved":true,"context_lines":[{"line_number":1100,"context_line":"    def delete_mac_binding_entries(self, external_ip):"},{"line_number":1101,"context_line":"        \"\"\"Delete all MAC_Binding entries associated to this IP address\"\"\""},{"line_number":1102,"context_line":"        cmd \u003d [\u0027ovsdb-client\u0027, \u0027transact\u0027, ovn_conf.get_ovn_sb_connection(),"},{"line_number":1103,"context_line":"               \u0027[\"OVN_Southbound\", {\"op\": \"delete\", \"table\": \"MAC_Binding\", \\"},{"line_number":1104,"context_line":"               \"where\": [[\"ip\", \"\u003d\u003d\", \"%s\"]]}]\u0027 % external_ip]"},{"line_number":1105,"context_line":"        return processutils.execute(*cmd,"},{"line_number":1106,"context_line":"                                    log_errors\u003dprocessutils.LOG_FINAL_ERRORS)"}],"source_content_type":"text/x-python","patch_set":1,"id":"b2dc29aa_5733ccef","line":1103,"range":{"start_line":1103,"start_character":76,"end_line":1103,"end_character":77},"updated":"2021-10-07 07:59:55.000000000","message":"nit: we usually use parentheses instead of line breaks","commit_id":"60fe86c64da71626dd5897319ad3c5a112ac6289"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"f8eb6caf9d725f4e9779c83b869912a5e6742c38","unresolved":true,"context_lines":[{"line_number":1101,"context_line":"        \"\"\"Delete all MAC_Binding entries associated to this IP address\"\"\""},{"line_number":1102,"context_line":"        cmd \u003d [\u0027ovsdb-client\u0027, \u0027transact\u0027, ovn_conf.get_ovn_sb_connection(),"},{"line_number":1103,"context_line":"               \u0027[\"OVN_Southbound\", {\"op\": \"delete\", \"table\": \"MAC_Binding\", \\"},{"line_number":1104,"context_line":"               \"where\": [[\"ip\", \"\u003d\u003d\", \"%s\"]]}]\u0027 % external_ip]"},{"line_number":1105,"context_line":"        return processutils.execute(*cmd,"},{"line_number":1106,"context_line":"                                    log_errors\u003dprocessutils.LOG_FINAL_ERROR)"},{"line_number":1107,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"93a3ef03_fb210655","line":1104,"updated":"2021-10-07 10:31:42.000000000","message":"I think this approach is better than as it would avoid MAC_Bindings entirely. Two things tho:\n\n1) I checked the logs and currently it\u0027s failing for SSL connections, we should account for that.\n\n2) Have we tested running this command with a large OVSDB ? My fear is whether this will create a IDL underneath when connecting to the database cuz, if the DB is huge this command can be very slow and could hang for longer periods of time.\n\nOther than that it looks very good! If 2) is not a problem I think we should go with this approach.\n\n[0] https://review.opendev.org/c/openstack/neutron/+/812713","commit_id":"d2b1bf994a912feb42aa10deec1eb143f3e3a47c"},{"author":{"_account_id":23804,"name":"Daniel Alvarez","email":"dalvarez@redhat.com","username":"dalvarez"},"change_message_id":"5c35107bb0043fa04b053b3cc1f3dc822f6a0676","unresolved":true,"context_lines":[{"line_number":1101,"context_line":"        \"\"\"Delete all MAC_Binding entries associated to this IP address\"\"\""},{"line_number":1102,"context_line":"        cmd \u003d [\u0027ovsdb-client\u0027, \u0027transact\u0027, ovn_conf.get_ovn_sb_connection(),"},{"line_number":1103,"context_line":"               \u0027[\"OVN_Southbound\", {\"op\": \"delete\", \"table\": \"MAC_Binding\", \\"},{"line_number":1104,"context_line":"               \"where\": [[\"ip\", \"\u003d\u003d\", \"%s\"]]}]\u0027 % external_ip]"},{"line_number":1105,"context_line":"        return processutils.execute(*cmd,"},{"line_number":1106,"context_line":"                                    log_errors\u003dprocessutils.LOG_FINAL_ERROR)"},{"line_number":1107,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"7bca3098_8b1364fc","line":1104,"in_reply_to":"6532d69e_3af03917","updated":"2021-10-07 11:15:45.000000000","message":"I tested 2) on a not so large DB but verified with tcpdump that ovsdb-client is not downloading the contents. See the following paste where you can see the 3 way handshake plus just the query [0].\n\nRe 1) you\u0027re right... need to pass in the params with the certificates and so on.\n\n\n[0] https://paste.openstack.org/show/809837/","commit_id":"d2b1bf994a912feb42aa10deec1eb143f3e3a47c"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"af413c19969fa78b3333b1399a141ff73fc1bd3a","unresolved":true,"context_lines":[{"line_number":1101,"context_line":"        \"\"\"Delete all MAC_Binding entries associated to this IP address\"\"\""},{"line_number":1102,"context_line":"        cmd \u003d [\u0027ovsdb-client\u0027, \u0027transact\u0027, ovn_conf.get_ovn_sb_connection(),"},{"line_number":1103,"context_line":"               \u0027[\"OVN_Southbound\", {\"op\": \"delete\", \"table\": \"MAC_Binding\", \\"},{"line_number":1104,"context_line":"               \"where\": [[\"ip\", \"\u003d\u003d\", \"%s\"]]}]\u0027 % external_ip]"},{"line_number":1105,"context_line":"        return processutils.execute(*cmd,"},{"line_number":1106,"context_line":"                                    log_errors\u003dprocessutils.LOG_FINAL_ERROR)"},{"line_number":1107,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"6532d69e_3af03917","line":1104,"in_reply_to":"93a3ef03_fb210655","updated":"2021-10-07 10:32:04.000000000","message":"better than [0] I mean","commit_id":"d2b1bf994a912feb42aa10deec1eb143f3e3a47c"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"b3233066e5a9d297721bbf297d245c49b35c1f6b","unresolved":true,"context_lines":[{"line_number":1099,"context_line":""},{"line_number":1100,"context_line":"    def _get_ovsdb_client_cmd(self, ip):"},{"line_number":1101,"context_line":"        if self.use_ssl is None:"},{"line_number":1102,"context_line":"            self.priv_key_file \u003d ovn_conf.get_ovn_sb_private_key()"},{"line_number":1103,"context_line":"            self.cert_file \u003d ovn_conf.get_ovn_sb_certificate()"},{"line_number":1104,"context_line":"            self.ca_cert_file \u003d ovn_conf.get_ovn_sb_ca_cert()"},{"line_number":1105,"context_line":"            self.use_ssl \u003d True if self.priv_key_file else False"},{"line_number":1106,"context_line":""},{"line_number":1107,"context_line":"        cmd \u003d [\u0027ovsdb-client\u0027, \u0027transact\u0027, ovn_conf.get_ovn_sb_connection()]"}],"source_content_type":"text/x-python","patch_set":4,"id":"c24f144f_49f2e7e8","line":1104,"range":{"start_line":1102,"start_character":1,"end_line":1104,"end_character":61},"updated":"2021-10-08 12:32:45.000000000","message":"These shouldn\u0027t be public attributes for this class IMHO\n\nAlso the values for those are already stored in CONF.ovn.ovn_sb_..., maybe just use that directly ?","commit_id":"d7cfbf0dbbb8222dbf9e623ae56592efbc0adcfd"},{"author":{"_account_id":23804,"name":"Daniel Alvarez","email":"dalvarez@redhat.com","username":"dalvarez"},"change_message_id":"84057fe801ae0d0ceff6bcf547e9c08f013c4583","unresolved":false,"context_lines":[{"line_number":1099,"context_line":""},{"line_number":1100,"context_line":"    def _get_ovsdb_client_cmd(self, ip):"},{"line_number":1101,"context_line":"        if self.use_ssl is None:"},{"line_number":1102,"context_line":"            self.priv_key_file \u003d ovn_conf.get_ovn_sb_private_key()"},{"line_number":1103,"context_line":"            self.cert_file \u003d ovn_conf.get_ovn_sb_certificate()"},{"line_number":1104,"context_line":"            self.ca_cert_file \u003d ovn_conf.get_ovn_sb_ca_cert()"},{"line_number":1105,"context_line":"            self.use_ssl \u003d True if self.priv_key_file else False"},{"line_number":1106,"context_line":""},{"line_number":1107,"context_line":"        cmd \u003d [\u0027ovsdb-client\u0027, \u0027transact\u0027, ovn_conf.get_ovn_sb_connection()]"}],"source_content_type":"text/x-python","patch_set":4,"id":"7a53228f_0897261f","line":1104,"range":{"start_line":1102,"start_character":1,"end_line":1104,"end_character":61},"in_reply_to":"c24f144f_49f2e7e8","updated":"2021-10-08 14:48:22.000000000","message":"Ack","commit_id":"d7cfbf0dbbb8222dbf9e623ae56592efbc0adcfd"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"b3233066e5a9d297721bbf297d245c49b35c1f6b","unresolved":true,"context_lines":[{"line_number":1110,"context_line":"                    \u0027-C\u0027, self.ca_cert_file]"},{"line_number":1111,"context_line":"        cmd +\u003d [\u0027[\"OVN_Southbound\", {\"op\": \"delete\", \"table\": \"MAC_Binding\", \\"},{"line_number":1112,"context_line":"                \"where\": [[\"ip\", \"\u003d\u003d\", \"%s\"]]}]\u0027 % ip]"},{"line_number":1113,"context_line":"        return cmd"},{"line_number":1114,"context_line":""},{"line_number":1115,"context_line":"    def delete_mac_binding_entries(self, external_ip):"},{"line_number":1116,"context_line":"        \"\"\"Delete all MAC_Binding entries associated to this IP address\"\"\""}],"source_content_type":"text/x-python","patch_set":4,"id":"4f647d09_ffad6dc3","line":1113,"updated":"2021-10-08 12:32:45.000000000","message":"Some unit testing would be good too, just making sure we do not decrease the % of coverage for the project.","commit_id":"d7cfbf0dbbb8222dbf9e623ae56592efbc0adcfd"},{"author":{"_account_id":23804,"name":"Daniel Alvarez","email":"dalvarez@redhat.com","username":"dalvarez"},"change_message_id":"84057fe801ae0d0ceff6bcf547e9c08f013c4583","unresolved":false,"context_lines":[{"line_number":1110,"context_line":"                    \u0027-C\u0027, self.ca_cert_file]"},{"line_number":1111,"context_line":"        cmd +\u003d [\u0027[\"OVN_Southbound\", {\"op\": \"delete\", \"table\": \"MAC_Binding\", \\"},{"line_number":1112,"context_line":"                \"where\": [[\"ip\", \"\u003d\u003d\", \"%s\"]]}]\u0027 % ip]"},{"line_number":1113,"context_line":"        return cmd"},{"line_number":1114,"context_line":""},{"line_number":1115,"context_line":"    def delete_mac_binding_entries(self, external_ip):"},{"line_number":1116,"context_line":"        \"\"\"Delete all MAC_Binding entries associated to this IP address\"\"\""}],"source_content_type":"text/x-python","patch_set":4,"id":"90f69423_3d1dd4a4","line":1113,"in_reply_to":"4f647d09_ffad6dc3","updated":"2021-10-08 14:48:22.000000000","message":"Done","commit_id":"d7cfbf0dbbb8222dbf9e623ae56592efbc0adcfd"},{"author":{"_account_id":8655,"name":"Jakub Libosvar","email":"libosvar@redhat.com","username":"jlibosva"},"change_message_id":"d1116755f81a921ee53bdeb2b5de018e66d0b0bd","unresolved":true,"context_lines":[{"line_number":1106,"context_line":"                    ovn_conf.get_ovn_sb_certificate(), \u0027-C\u0027,"},{"line_number":1107,"context_line":"                    ovn_conf.get_ovn_sb_ca_cert()]"},{"line_number":1108,"context_line":""},{"line_number":1109,"context_line":"        cmd +\u003d [\u0027[\"OVN_Southbound\", {\"op\": \"delete\", \"table\": \"MAC_Binding\", \u0027"},{"line_number":1110,"context_line":"                \u0027\"where\": [[\"ip\", \"\u003d\u003d\", \"%s\"]]}]\u0027 % external_ip]"},{"line_number":1111,"context_line":""},{"line_number":1112,"context_line":"        return processutils.execute(*self._get_ovsdb_client_cmd(external_ip),"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a3a9b7e_73bb31fe","line":1109,"range":{"start_line":1109,"start_character":8,"end_line":1109,"end_character":11},"updated":"2021-10-08 15:00:00.000000000","message":"I\u0027m confused. Is it used anywhere below? It\u0027s not passed to the execute() call on L1112\n\nAlso it seems to be a static list - just an idea that we don\u0027t need to construct the same thing again and again with every call.","commit_id":"07200ac05c04c8420255bdba6f4a0b1daa6d88e1"},{"author":{"_account_id":23804,"name":"Daniel Alvarez","email":"dalvarez@redhat.com","username":"dalvarez"},"change_message_id":"be68a8bfeedeb5bfa488512857eddb3a63dca629","unresolved":true,"context_lines":[{"line_number":1106,"context_line":"                    ovn_conf.get_ovn_sb_certificate(), \u0027-C\u0027,"},{"line_number":1107,"context_line":"                    ovn_conf.get_ovn_sb_ca_cert()]"},{"line_number":1108,"context_line":""},{"line_number":1109,"context_line":"        cmd +\u003d [\u0027[\"OVN_Southbound\", {\"op\": \"delete\", \"table\": \"MAC_Binding\", \u0027"},{"line_number":1110,"context_line":"                \u0027\"where\": [[\"ip\", \"\u003d\u003d\", \"%s\"]]}]\u0027 % external_ip]"},{"line_number":1111,"context_line":""},{"line_number":1112,"context_line":"        return processutils.execute(*self._get_ovsdb_client_cmd(external_ip),"}],"source_content_type":"text/x-python","patch_set":5,"id":"9a951ded_163f5947","line":1109,"range":{"start_line":1109,"start_character":8,"end_line":1109,"end_character":11},"in_reply_to":"5663529f_2529792f","updated":"2021-10-08 15:34:53.000000000","message":"agh lol i forgot to commit my changes locally. nice daniel","commit_id":"07200ac05c04c8420255bdba6f4a0b1daa6d88e1"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"52eaebffe1fd19e03a3cee938c8a753f07fac004","unresolved":true,"context_lines":[{"line_number":1106,"context_line":"                    ovn_conf.get_ovn_sb_certificate(), \u0027-C\u0027,"},{"line_number":1107,"context_line":"                    ovn_conf.get_ovn_sb_ca_cert()]"},{"line_number":1108,"context_line":""},{"line_number":1109,"context_line":"        cmd +\u003d [\u0027[\"OVN_Southbound\", {\"op\": \"delete\", \"table\": \"MAC_Binding\", \u0027"},{"line_number":1110,"context_line":"                \u0027\"where\": [[\"ip\", \"\u003d\u003d\", \"%s\"]]}]\u0027 % external_ip]"},{"line_number":1111,"context_line":""},{"line_number":1112,"context_line":"        return processutils.execute(*self._get_ovsdb_client_cmd(external_ip),"}],"source_content_type":"text/x-python","patch_set":5,"id":"9f39f25b_061c51e8","line":1109,"range":{"start_line":1109,"start_character":8,"end_line":1109,"end_character":11},"in_reply_to":"7a3a9b7e_73bb31fe","updated":"2021-10-08 15:08:17.000000000","message":"Ah yes, \"_get_ovsdb_client_cmd\" comes from PS3 [1]. But yes, cmd should be in the execute call.\n\n[1]https://review.opendev.org/c/openstack/neutron/+/812805/3/neutron/plugins/ml2/drivers/ovn/mech_driver/mech_driver.py","commit_id":"07200ac05c04c8420255bdba6f4a0b1daa6d88e1"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"2818e63bd5a777eb226007f90b7c30053829fc78","unresolved":true,"context_lines":[{"line_number":1106,"context_line":"                    ovn_conf.get_ovn_sb_certificate(), \u0027-C\u0027,"},{"line_number":1107,"context_line":"                    ovn_conf.get_ovn_sb_ca_cert()]"},{"line_number":1108,"context_line":""},{"line_number":1109,"context_line":"        cmd +\u003d [\u0027[\"OVN_Southbound\", {\"op\": \"delete\", \"table\": \"MAC_Binding\", \u0027"},{"line_number":1110,"context_line":"                \u0027\"where\": [[\"ip\", \"\u003d\u003d\", \"%s\"]]}]\u0027 % external_ip]"},{"line_number":1111,"context_line":""},{"line_number":1112,"context_line":"        return processutils.execute(*self._get_ovsdb_client_cmd(external_ip),"}],"source_content_type":"text/x-python","patch_set":5,"id":"5663529f_2529792f","line":1109,"range":{"start_line":1109,"start_character":8,"end_line":1109,"end_character":11},"in_reply_to":"9f39f25b_061c51e8","updated":"2021-10-08 15:09:51.000000000","message":"good catch, there\u0027s no _get_ovsdb_client_cmd() anymore","commit_id":"07200ac05c04c8420255bdba6f4a0b1daa6d88e1"}],"neutron/tests/functional/plugins/ml2/drivers/ovn/mech_driver/ovsdb/test_ovsdb_monitor.py":[{"author":{"_account_id":5756,"name":"Terry Wilson","email":"twilson@redhat.com","username":"otherwiseguy"},"change_message_id":"c853517c8dc62ed8ddedbbf4ce36a7e1b1bbd36f","unresolved":true,"context_lines":[{"line_number":146,"context_line":"        * Check that the MAC_Binding entry gets deleted."},{"line_number":147,"context_line":"        \"\"\""},{"line_number":148,"context_line":"        net_name \u003d \u0027network1\u0027"},{"line_number":149,"context_line":"        self.mech_driver.sb_ovn.idl.update_tables("},{"line_number":150,"context_line":"            [\u0027MAC_Binding\u0027], self.mech_driver.sb_schema_helper.schema_json)"},{"line_number":151,"context_line":"        row_event \u003d WaitForDataPathBindingCreateEvent(net_name)"},{"line_number":152,"context_line":"        self.mech_driver.sb_ovn.idl.notify_handler.watch_event(row_event)"}],"source_content_type":"text/x-python","patch_set":11,"id":"51ad878f_673ca51e","line":149,"updated":"2021-10-11 20:47:39.000000000","message":"Do we still need this line if we are checking via ovsdb-client now?","commit_id":"34e0b33cf62718a1d2d8fcdc85e1d529f5372601"},{"author":{"_account_id":5756,"name":"Terry Wilson","email":"twilson@redhat.com","username":"otherwiseguy"},"change_message_id":"1d4bfb5c7dbfa5617baf766fd64089a802dd43e2","unresolved":false,"context_lines":[{"line_number":146,"context_line":"        * Check that the MAC_Binding entry gets deleted."},{"line_number":147,"context_line":"        \"\"\""},{"line_number":148,"context_line":"        net_name \u003d \u0027network1\u0027"},{"line_number":149,"context_line":"        self.mech_driver.sb_ovn.idl.update_tables("},{"line_number":150,"context_line":"            [\u0027MAC_Binding\u0027], self.mech_driver.sb_schema_helper.schema_json)"},{"line_number":151,"context_line":"        row_event \u003d WaitForDataPathBindingCreateEvent(net_name)"},{"line_number":152,"context_line":"        self.mech_driver.sb_ovn.idl.notify_handler.watch_event(row_event)"}],"source_content_type":"text/x-python","patch_set":11,"id":"0848695a_bd363cf8","line":149,"in_reply_to":"1c974dd5_862eacc3","updated":"2021-10-11 21:07:35.000000000","message":"Got it, looks good then. :D","commit_id":"34e0b33cf62718a1d2d8fcdc85e1d529f5372601"},{"author":{"_account_id":23804,"name":"Daniel Alvarez","email":"dalvarez@redhat.com","username":"dalvarez"},"change_message_id":"1c3e3f671891a46f8cf652630ee0af55fa64e043","unresolved":true,"context_lines":[{"line_number":146,"context_line":"        * Check that the MAC_Binding entry gets deleted."},{"line_number":147,"context_line":"        \"\"\""},{"line_number":148,"context_line":"        net_name \u003d \u0027network1\u0027"},{"line_number":149,"context_line":"        self.mech_driver.sb_ovn.idl.update_tables("},{"line_number":150,"context_line":"            [\u0027MAC_Binding\u0027], self.mech_driver.sb_schema_helper.schema_json)"},{"line_number":151,"context_line":"        row_event \u003d WaitForDataPathBindingCreateEvent(net_name)"},{"line_number":152,"context_line":"        self.mech_driver.sb_ovn.idl.notify_handler.watch_event(row_event)"}],"source_content_type":"text/x-python","patch_set":11,"id":"1c974dd5_862eacc3","line":149,"in_reply_to":"51ad878f_673ca51e","updated":"2021-10-11 20:49:18.000000000","message":"Yeah, without it I can\u0027t insert the entry in L158... sigh\nI can use ovsdb-client for a transact \u0027insert\u0027 operation but IMO the best way would be to adapt the current functional testing to select which tables we want to monitor (maybe all?) independently from what the prod code watches.\n\nFollow up patch?","commit_id":"34e0b33cf62718a1d2d8fcdc85e1d529f5372601"}]}
