)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":9531,"name":"liuyulong","display_name":"LIU Yulong","email":"i@liuyulong.me","username":"LIU-Yulong"},"change_message_id":"ceedd36093e0be97e65ed81550be51c93ce55897","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Validate that snat namespace exits in _create_dvr_gateway"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"During rescheduling dvr router snat namespace may not be configured"},{"line_number":10,"context_line":"properly. Verify that snat namespace exits or create one."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Closes-bug: 1881995"},{"line_number":13,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"ff570b3c_b7639fdd","line":10,"range":{"start_line":9,"start_character":31,"end_line":10,"end_character":42},"updated":"2020-06-08 15:06:37.000000000","message":"IMO, \"not properly configured\" and \"not exist\" should be two different problem, so it\u0027s better to distinguish the root cause of each.","commit_id":"508799e3673abff9eab20da7dd67eb590c9e22d7"},{"author":{"_account_id":9531,"name":"liuyulong","display_name":"LIU Yulong","email":"i@liuyulong.me","username":"LIU-Yulong"},"change_message_id":"ceedd36093e0be97e65ed81550be51c93ce55897","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Validate that snat namespace exits in _create_dvr_gateway"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"During rescheduling dvr router snat namespace may not be configured"},{"line_number":10,"context_line":"properly. Verify that snat namespace exits or create one."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Closes-bug: 1881995"},{"line_number":13,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"ff570b3c_b7bf1ffb","line":10,"range":{"start_line":10,"start_character":22,"end_line":10,"end_character":42},"updated":"2020-06-08 15:06:37.000000000","message":"OK, maybe [1] is the answer why the snat namespace was not created properly? But again for my test I can not reproduce the issue, the host has default setting \"net.ipv4.ip_forward \u003d 0\".\n\n[1] https://bugs.launchpad.net/neutron/+bug/1881995/comments/2\n[2] http://paste.openstack.org/show/794477/","commit_id":"508799e3673abff9eab20da7dd67eb590c9e22d7"},{"author":{"_account_id":7249,"name":"Ann Taraday","email":"akamyshnikova@mirantis.com","username":"AKamyshnikova"},"change_message_id":"fe94cc800969ceb91588dc3ee1217cdece92bf5e","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Validate that snat namespace exits in _create_dvr_gateway"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"During rescheduling dvr router snat namespace may not be configured"},{"line_number":10,"context_line":"properly. Verify that snat namespace exits or create one."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Closes-bug: 1881995"},{"line_number":13,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"ff570b3c_4372334b","line":10,"range":{"start_line":9,"start_character":31,"end_line":10,"end_character":42},"in_reply_to":"ff570b3c_b7639fdd","updated":"2020-06-09 10:13:22.000000000","message":"It was not created by the moment when _create_dvr_gateway started, bad phrasing, sorry.\nI put some comments on bug description with details of reproduction.","commit_id":"508799e3673abff9eab20da7dd67eb590c9e22d7"},{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"703cb3a663d8f8f4ee062ac5ab74a0bc4caa0430","unresolved":false,"context_lines":[{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Verify that snat namespace exits or create one."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Closes-bug: 1881995"},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"Change-Id: Ic28ce249d59264b0b882bd1cc3c9fb55854a6a47"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"bf51134e_b1a3e0b1","line":15,"range":{"start_line":15,"start_character":0,"end_line":15,"end_character":6},"updated":"2020-06-25 18:32:46.000000000","message":"Since this is a workaround while other debugging is ongoing, should this be Partial-bug ?","commit_id":"bab6c285f82ecb93376659344766170d445eca1d"}],"neutron/agent/l3/dvr_edge_router.py":[{"author":{"_account_id":9531,"name":"liuyulong","display_name":"LIU Yulong","email":"i@liuyulong.me","username":"LIU-Yulong"},"change_message_id":"ceedd36093e0be97e65ed81550be51c93ce55897","unresolved":false,"context_lines":[{"line_number":157,"context_line":"            mtu\u003dport.get(\u0027mtu\u0027))"},{"line_number":158,"context_line":""},{"line_number":159,"context_line":"    def initialize(self, process_monitor):"},{"line_number":160,"context_line":"        self._create_snat_namespace()"},{"line_number":161,"context_line":"        super(DvrEdgeRouter, self).initialize(process_monitor)"},{"line_number":162,"context_line":""},{"line_number":163,"context_line":"    def _create_dvr_gateway(self, ex_gw_port, gw_interface_name):"}],"source_content_type":"text/x-python","patch_set":1,"id":"ff570b3c_c44f7fbc","line":160,"range":{"start_line":160,"start_character":8,"end_line":160,"end_character":37},"updated":"2020-06-08 15:06:37.000000000","message":"Could not reproduce the bug in local stable/queens. When the router was added to a new L3-agent, this line should do the snat config work.","commit_id":"508799e3673abff9eab20da7dd67eb590c9e22d7"},{"author":{"_account_id":9531,"name":"liuyulong","display_name":"LIU Yulong","email":"i@liuyulong.me","username":"LIU-Yulong"},"change_message_id":"ceedd36093e0be97e65ed81550be51c93ce55897","unresolved":false,"context_lines":[{"line_number":164,"context_line":"        # connect snat_ports to br_int from SNAT namespace"},{"line_number":165,"context_line":""},{"line_number":166,"context_line":"        # Check if snat namespace exists, so it can initialized properly"},{"line_number":167,"context_line":"        if not self.snat_namespace.exists():"},{"line_number":168,"context_line":"            self._create_snat_namespace()"},{"line_number":169,"context_line":""},{"line_number":170,"context_line":"        for port in self.get_snat_interfaces():"}],"source_content_type":"text/x-python","patch_set":1,"id":"ff570b3c_84d3c7d5","line":167,"range":{"start_line":167,"start_character":20,"end_line":167,"end_character":34},"updated":"2020-06-08 15:06:37.000000000","message":"This should be the problem: why the snat ns does not exist.","commit_id":"508799e3673abff9eab20da7dd67eb590c9e22d7"},{"author":{"_account_id":9531,"name":"liuyulong","display_name":"LIU Yulong","email":"i@liuyulong.me","username":"LIU-Yulong"},"change_message_id":"ceedd36093e0be97e65ed81550be51c93ce55897","unresolved":false,"context_lines":[{"line_number":165,"context_line":""},{"line_number":166,"context_line":"        # Check if snat namespace exists, so it can initialized properly"},{"line_number":167,"context_line":"        if not self.snat_namespace.exists():"},{"line_number":168,"context_line":"            self._create_snat_namespace()"},{"line_number":169,"context_line":""},{"line_number":170,"context_line":"        for port in self.get_snat_interfaces():"},{"line_number":171,"context_line":"            self._plug_snat_port(port)"}],"source_content_type":"text/x-python","patch_set":1,"id":"ff570b3c_17b6cb3f","line":168,"range":{"start_line":168,"start_character":12,"end_line":168,"end_character":41},"updated":"2020-06-08 15:06:37.000000000","message":"Yep, this partially revert the commit:\n7a9d6d26419defa148764166600bc4ac6b50c109\n\nWhat\u0027s the status of master branch?","commit_id":"508799e3673abff9eab20da7dd67eb590c9e22d7"},{"author":{"_account_id":7249,"name":"Ann Taraday","email":"akamyshnikova@mirantis.com","username":"AKamyshnikova"},"change_message_id":"fe94cc800969ceb91588dc3ee1217cdece92bf5e","unresolved":false,"context_lines":[{"line_number":165,"context_line":""},{"line_number":166,"context_line":"        # Check if snat namespace exists, so it can initialized properly"},{"line_number":167,"context_line":"        if not self.snat_namespace.exists():"},{"line_number":168,"context_line":"            self._create_snat_namespace()"},{"line_number":169,"context_line":""},{"line_number":170,"context_line":"        for port in self.get_snat_interfaces():"},{"line_number":171,"context_line":"            self._plug_snat_port(port)"}],"source_content_type":"text/x-python","patch_set":1,"id":"ff570b3c_832d6bff","line":168,"range":{"start_line":168,"start_character":12,"end_line":168,"end_character":41},"in_reply_to":"ff570b3c_17b6cb3f","updated":"2020-06-09 10:13:22.000000000","message":"Haven\u0027t checked, will verify, but the logic not so different I assumed.","commit_id":"508799e3673abff9eab20da7dd67eb590c9e22d7"},{"author":{"_account_id":7249,"name":"Ann Taraday","email":"akamyshnikova@mirantis.com","username":"AKamyshnikova"},"change_message_id":"544ec61c2f170b69933b5196470e13125c43d305","unresolved":false,"context_lines":[{"line_number":165,"context_line":""},{"line_number":166,"context_line":"        # Check if snat namespace exists, so it can initialized properly"},{"line_number":167,"context_line":"        if not self.snat_namespace.exists():"},{"line_number":168,"context_line":"            self._create_snat_namespace()"},{"line_number":169,"context_line":""},{"line_number":170,"context_line":"        for port in self.get_snat_interfaces():"},{"line_number":171,"context_line":"            self._plug_snat_port(port)"}],"source_content_type":"text/x-python","patch_set":1,"id":"ff570b3c_1304f47d","line":168,"range":{"start_line":168,"start_character":12,"end_line":168,"end_character":41},"in_reply_to":"ff570b3c_832d6bff","updated":"2020-06-10 12:12:47.000000000","message":"Issue is reproducing on master as well, will attach logs to bug.","commit_id":"508799e3673abff9eab20da7dd67eb590c9e22d7"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"0a54a6eb695ff7d7df8fe39e094e1374f0816e08","unresolved":false,"context_lines":[{"line_number":165,"context_line":""},{"line_number":166,"context_line":"        # Check if snat namespace exists, so it can initialized properly"},{"line_number":167,"context_line":"        if not self.snat_namespace.exists():"},{"line_number":168,"context_line":"            self._create_snat_namespace()"},{"line_number":169,"context_line":""},{"line_number":170,"context_line":"        for port in self.get_snat_interfaces():"},{"line_number":171,"context_line":"            self._plug_snat_port(port)"}],"source_content_type":"text/x-python","patch_set":2,"id":"ff570b3c_bf9a185f","line":168,"updated":"2020-06-11 10:36:26.000000000","message":"I\u0027m ok with this change, but seems to be a workaround rather than a fix.\n\nAccording to Liu\u0027s comments, this could be a race condition in the requests https://bugs.launchpad.net/neutron/+bug/1881995/comments/5. But the added command is received first.\n\nAlso reviewing the logs you provided [1], I see your debug line in L86 (where, using pdb, you can\u0027t see the namespace). Who is calling the namespace creation in L98?\n\n[1]http://paste.openstack.org/show/794506/","commit_id":"c60f58d940ddcf6e4bde76593c046d57a2cbe3bc"},{"author":{"_account_id":7249,"name":"Ann Taraday","email":"akamyshnikova@mirantis.com","username":"AKamyshnikova"},"change_message_id":"a542336b25de194a5369acaa6b8d549bb3fea122","unresolved":false,"context_lines":[{"line_number":165,"context_line":""},{"line_number":166,"context_line":"        # Check if snat namespace exists, so it can initialized properly"},{"line_number":167,"context_line":"        if not self.snat_namespace.exists():"},{"line_number":168,"context_line":"            self._create_snat_namespace()"},{"line_number":169,"context_line":""},{"line_number":170,"context_line":"        for port in self.get_snat_interfaces():"},{"line_number":171,"context_line":"            self._plug_snat_port(port)"}],"source_content_type":"text/x-python","patch_set":2,"id":"ff570b3c_5fe3fca4","line":168,"in_reply_to":"ff570b3c_bf9a185f","updated":"2020-06-11 10:55:59.000000000","message":"This is definitely a workaround, but I would prefer to have it fixed, while searching for better solution. I will add note comment.\n\nNamespace is created during _plug_snat_port -\u003e _internal_network_added -\u003e self.driver.plug -\u003e plug_new -\u003e ensure_namespace \nIt is created, but sysctl net.ipv4.ip_forward (and others) are not getting set, so if default host has other settings - this will be misconfigured. \n\nI\u0027ve attached debug console logs with tracing this http://paste.openstack.org/show/794507/","commit_id":"c60f58d940ddcf6e4bde76593c046d57a2cbe3bc"}]}
