)]}'
{"neutron/tests/fullstack/resources/config.py":[{"author":{"_account_id":8655,"name":"Jakub Libosvar","email":"libosvar@redhat.com","username":"jlibosva"},"change_message_id":"3e61a05113d914f24c7c01a0223014c3c59a50f4","unresolved":false,"context_lines":[{"line_number":89,"context_line":"            },"},{"line_number":90,"context_line":"            \u0027agent\u0027: {"},{"line_number":91,"context_line":"                \u0027report_interval\u0027: env_desc.agent_down_time / 2.0,"},{"line_number":92,"context_line":"                \u0027root_helper\u0027: os.environ.get(\u0027OS_ROOTWRAP_CMD\u0027),"},{"line_number":93,"context_line":"                \u0027root_helper_daemon\u0027: os.environ.get(\u0027OS_ROOTWRAP_DAEMON_CMD\u0027),"},{"line_number":94,"context_line":"            },"},{"line_number":95,"context_line":"        })"}],"source_content_type":"text/x-python","patch_set":4,"id":"5ff73747_309d00bc","line":92,"range":{"start_line":92,"start_character":0,"end_line":92,"end_character":65},"updated":"2017-04-27 12:53:30.000000000","message":"If OS_ROOTWRAP_CMD won\u0027t be defined in the environment, this will set root_helper to None explicitly. We should not override the default if env var is not set.","commit_id":"e400e70e81b008acd03e84a738e081e5655cc3c6"},{"author":{"_account_id":21781,"name":"Hunt Xu","email":"mhuntxu@gmail.com","username":"huntxu"},"change_message_id":"d6ea14e0dc287e711f768c4fa0bebd62f4455bd9","unresolved":false,"context_lines":[{"line_number":89,"context_line":"            },"},{"line_number":90,"context_line":"            \u0027agent\u0027: {"},{"line_number":91,"context_line":"                \u0027report_interval\u0027: env_desc.agent_down_time / 2.0,"},{"line_number":92,"context_line":"                \u0027root_helper\u0027: os.environ.get(\u0027OS_ROOTWRAP_CMD\u0027),"},{"line_number":93,"context_line":"                \u0027root_helper_daemon\u0027: os.environ.get(\u0027OS_ROOTWRAP_DAEMON_CMD\u0027),"},{"line_number":94,"context_line":"            },"},{"line_number":95,"context_line":"        })"}],"source_content_type":"text/x-python","patch_set":4,"id":"5ff73747_d9002904","line":92,"range":{"start_line":92,"start_character":0,"end_line":92,"end_character":65},"in_reply_to":"5ff73747_309d00bc","updated":"2017-04-28 06:47:32.000000000","message":"Done","commit_id":"e400e70e81b008acd03e84a738e081e5655cc3c6"},{"author":{"_account_id":8655,"name":"Jakub Libosvar","email":"libosvar@redhat.com","username":"jlibosva"},"change_message_id":"41a62206d5bf188e4998af433aeab1cff1444350","unresolved":false,"context_lines":[{"line_number":89,"context_line":"            },"},{"line_number":90,"context_line":"            \u0027agent\u0027: {"},{"line_number":91,"context_line":"                \u0027report_interval\u0027: env_desc.agent_down_time / 2.0,"},{"line_number":92,"context_line":"                \u0027root_helper\u0027: os.environ.get(\u0027OS_ROOTWRAP_CMD\u0027, \u0027sudo\u0027),"},{"line_number":93,"context_line":"            },"},{"line_number":94,"context_line":"        })"},{"line_number":95,"context_line":"        # Set root_helper_daemon only when env var is set"}],"source_content_type":"text/x-python","patch_set":5,"id":"5ff73747_3fec7f28","line":92,"updated":"2017-05-02 08:55:21.000000000","message":"We should do the same as with root_helper_daemon - if, for whatever reason, we\u0027d switch the default of root_helper then we need to change also this line. If OS_ROOTWRAP_CMD is not specified, we should leave it up to default value.","commit_id":"77d8e1c7832c53d2c9fef6d8232bf0c50ae8e035"},{"author":{"_account_id":21781,"name":"Hunt Xu","email":"mhuntxu@gmail.com","username":"huntxu"},"change_message_id":"f0f778418d6b42591426f0787fa611c4878b0855","unresolved":false,"context_lines":[{"line_number":89,"context_line":"            },"},{"line_number":90,"context_line":"            \u0027agent\u0027: {"},{"line_number":91,"context_line":"                \u0027report_interval\u0027: env_desc.agent_down_time / 2.0,"},{"line_number":92,"context_line":"                \u0027root_helper\u0027: os.environ.get(\u0027OS_ROOTWRAP_CMD\u0027, \u0027sudo\u0027),"},{"line_number":93,"context_line":"            },"},{"line_number":94,"context_line":"        })"},{"line_number":95,"context_line":"        # Set root_helper_daemon only when env var is set"}],"source_content_type":"text/x-python","patch_set":5,"id":"5ff73747_e99060f0","line":92,"in_reply_to":"5ff73747_3fec7f28","updated":"2017-05-02 15:33:48.000000000","message":"Done","commit_id":"77d8e1c7832c53d2c9fef6d8232bf0c50ae8e035"}],"neutron/tests/fullstack/test_l3_agent.py":[{"author":{"_account_id":8655,"name":"Jakub Libosvar","email":"libosvar@redhat.com","username":"jlibosva"},"change_message_id":"3e61a05113d914f24c7c01a0223014c3c59a50f4","unresolved":false,"context_lines":[{"line_number":98,"context_line":"        common_utils.wait_until_true(lambda: ip.netns.exists(ns_name))"},{"line_number":99,"context_line":""},{"line_number":100,"context_line":"    def _unset_cfg_root_helper_daemon(self):"},{"line_number":101,"context_line":"        _orig_root_helper_daemon \u003d cfg.CONF.agent.root_helper_daemon"},{"line_number":102,"context_line":"        cfg.CONF.set_override(\u0027root_helper_daemon\u0027, \u0027\u0027, group\u003d\u0027agent\u0027)"},{"line_number":103,"context_line":"        self.addCleanup("},{"line_number":104,"context_line":"            cfg.CONF.set_override,"}],"source_content_type":"text/x-python","patch_set":4,"id":"5ff73747_f07b1878","line":101,"range":{"start_line":101,"start_character":50,"end_line":101,"end_character":68},"updated":"2017-04-27 12:53:30.000000000","message":"You need to register this option first in the test runner - see the failed result: http://logs.openstack.org/10/459110/4/check/gate-neutron-dsvm-fullstack-ubuntu-xenial/8d49a50/testr_results.html.gz","commit_id":"e400e70e81b008acd03e84a738e081e5655cc3c6"},{"author":{"_account_id":21781,"name":"Hunt Xu","email":"mhuntxu@gmail.com","username":"huntxu"},"change_message_id":"d6ea14e0dc287e711f768c4fa0bebd62f4455bd9","unresolved":false,"context_lines":[{"line_number":98,"context_line":"        common_utils.wait_until_true(lambda: ip.netns.exists(ns_name))"},{"line_number":99,"context_line":""},{"line_number":100,"context_line":"    def _unset_cfg_root_helper_daemon(self):"},{"line_number":101,"context_line":"        _orig_root_helper_daemon \u003d cfg.CONF.agent.root_helper_daemon"},{"line_number":102,"context_line":"        cfg.CONF.set_override(\u0027root_helper_daemon\u0027, \u0027\u0027, group\u003d\u0027agent\u0027)"},{"line_number":103,"context_line":"        self.addCleanup("},{"line_number":104,"context_line":"            cfg.CONF.set_override,"}],"source_content_type":"text/x-python","patch_set":4,"id":"5ff73747_790b5523","line":101,"range":{"start_line":101,"start_character":50,"end_line":101,"end_character":68},"in_reply_to":"5ff73747_f07b1878","updated":"2017-04-28 06:47:32.000000000","message":"That was just a bad try, should have tested before sending out.","commit_id":"e400e70e81b008acd03e84a738e081e5655cc3c6"},{"author":{"_account_id":8655,"name":"Jakub Libosvar","email":"libosvar@redhat.com","username":"jlibosva"},"change_message_id":"41a62206d5bf188e4998af433aeab1cff1444350","unresolved":false,"context_lines":[{"line_number":82,"context_line":"    def setUp(self):"},{"line_number":83,"context_line":"        # Using root_helper_daemon in both east-west and north-south traffic"},{"line_number":84,"context_line":"        # tests will lead to a \"RuntimeError: Second simultaneous read on"},{"line_number":85,"context_line":"        # fileno X detected\" in greenlet. So use root_helper instead here."},{"line_number":86,"context_line":"        _orig_root_helper_daemon \u003d os.environ.pop(\u0027OS_ROOTWRAP_DAEMON_CMD\u0027)"},{"line_number":87,"context_line":"        self.addCleanup("},{"line_number":88,"context_line":"            os.environ.setdefault,"}],"source_content_type":"text/x-python","patch_set":5,"id":"5ff73747_9fc39389","line":85,"updated":"2017-05-02 08:55:21.000000000","message":"Have you tried to troubleshoot the issue? Is it because each l3-agent spawns its own rootwrap-daemon?","commit_id":"77d8e1c7832c53d2c9fef6d8232bf0c50ae8e035"},{"author":{"_account_id":21781,"name":"Hunt Xu","email":"mhuntxu@gmail.com","username":"huntxu"},"change_message_id":"f0f778418d6b42591426f0787fa611c4878b0855","unresolved":false,"context_lines":[{"line_number":82,"context_line":"    def setUp(self):"},{"line_number":83,"context_line":"        # Using root_helper_daemon in both east-west and north-south traffic"},{"line_number":84,"context_line":"        # tests will lead to a \"RuntimeError: Second simultaneous read on"},{"line_number":85,"context_line":"        # fileno X detected\" in greenlet. So use root_helper instead here."},{"line_number":86,"context_line":"        _orig_root_helper_daemon \u003d os.environ.pop(\u0027OS_ROOTWRAP_DAEMON_CMD\u0027)"},{"line_number":87,"context_line":"        self.addCleanup("},{"line_number":88,"context_line":"            os.environ.setdefault,"}],"source_content_type":"text/x-python","patch_set":5,"id":"5ff73747_894f9c91","line":85,"in_reply_to":"5ff73747_9fc39389","updated":"2017-05-02 15:33:48.000000000","message":"I\u0027m not quite sure whether it is related to multiple rootwrap-daemons at the same time. However I did find a similar issue: https://bugs.launchpad.net/neutron/+bug/1482622","commit_id":"77d8e1c7832c53d2c9fef6d8232bf0c50ae8e035"},{"author":{"_account_id":9656,"name":"Ihar Hrachyshka","email":"ihrachys@redhat.com","username":"ihrachys","status":"Red Hat Networking Systems Engineer"},"change_message_id":"2055014170a85c1719d0d2e615885cd00b374ba0","unresolved":false,"context_lines":[{"line_number":81,"context_line":""},{"line_number":82,"context_line":"    def setUp(self):"},{"line_number":83,"context_line":"        # Using root_helper_daemon in both east-west and north-south traffic"},{"line_number":84,"context_line":"        # tests will lead to a \"RuntimeError: Second simultaneous read on"},{"line_number":85,"context_line":"        # fileno X detected\" in greenlet. So use root_helper instead here."},{"line_number":86,"context_line":"        _orig_root_helper_daemon \u003d os.environ.pop(\u0027OS_ROOTWRAP_DAEMON_CMD\u0027)"},{"line_number":87,"context_line":"        self.addCleanup("}],"source_content_type":"text/x-python","patch_set":6,"id":"1f013ff3_ba2eefa2","line":84,"updated":"2017-05-16 03:57:22.000000000","message":"I am also not particularly happy with just disabling it for this test. Do we know the reason why it\u0027s needed? Is a bug reported to tackle that?","commit_id":"2015d5a1952f38cd1630f9b81518a283ac5b87db"},{"author":{"_account_id":9656,"name":"Ihar Hrachyshka","email":"ihrachys@redhat.com","username":"ihrachys","status":"Red Hat Networking Systems Engineer"},"change_message_id":"2dad3cd6cd5bccded1094a2e6506646c0fd66b2f","unresolved":false,"context_lines":[{"line_number":83,"context_line":"        # Using root_helper_daemon in both east-west and north-south traffic"},{"line_number":84,"context_line":"        # tests will lead to a \"RuntimeError: Second simultaneous read on"},{"line_number":85,"context_line":"        # fileno X detected\" in greenlet. So use root_helper instead here."},{"line_number":86,"context_line":"        _orig_root_helper_daemon \u003d os.environ.pop(\u0027OS_ROOTWRAP_DAEMON_CMD\u0027)"},{"line_number":87,"context_line":"        self.addCleanup("},{"line_number":88,"context_line":"            os.environ.setdefault,"},{"line_number":89,"context_line":"            \u0027OS_ROOTWRAP_DAEMON_CMD\u0027, _orig_root_helper_daemon)"}],"source_content_type":"text/x-python","patch_set":6,"id":"1f013ff3_7a63c71b","line":86,"updated":"2017-05-16 03:55:45.000000000","message":"there is fixtures.EnvironmentVariable that I think we should use.","commit_id":"2015d5a1952f38cd1630f9b81518a283ac5b87db"}],"tools/deploy_rootwrap.sh":[{"author":{"_account_id":8655,"name":"Jakub Libosvar","email":"libosvar@redhat.com","username":"jlibosva"},"change_message_id":"3e61a05113d914f24c7c01a0223014c3c59a50f4","unresolved":false,"context_lines":[{"line_number":27,"context_line":"fi"},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"OS_SUDO_TESTING\u003d${OS_SUDO_TESTING:-0}"},{"line_number":30,"context_line":"OS_FULLSTACK_TESTING\u003d${OS_FULLSTACK_TESTING:-0}"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"neutron_path\u003d$1"},{"line_number":33,"context_line":"target_etc_path\u003d$2"}],"source_content_type":"text/x-sh","patch_set":4,"id":"5ff73747_f0543800","line":30,"range":{"start_line":30,"start_character":0,"end_line":30,"end_character":20},"updated":"2017-04-27 12:53:30.000000000","message":"The OS_SUDO_TESTING is not used in fullstack tests anywhere. How about just setting OS_SUDO_TESTING\u003d0 in fullstack tox environment?","commit_id":"e400e70e81b008acd03e84a738e081e5655cc3c6"},{"author":{"_account_id":21781,"name":"Hunt Xu","email":"mhuntxu@gmail.com","username":"huntxu"},"change_message_id":"d6ea14e0dc287e711f768c4fa0bebd62f4455bd9","unresolved":false,"context_lines":[{"line_number":27,"context_line":"fi"},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"OS_SUDO_TESTING\u003d${OS_SUDO_TESTING:-0}"},{"line_number":30,"context_line":"OS_FULLSTACK_TESTING\u003d${OS_FULLSTACK_TESTING:-0}"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"neutron_path\u003d$1"},{"line_number":33,"context_line":"target_etc_path\u003d$2"}],"source_content_type":"text/x-sh","patch_set":4,"id":"5ff73747_59141944","line":30,"range":{"start_line":30,"start_character":0,"end_line":30,"end_character":20},"in_reply_to":"5ff73747_f0543800","updated":"2017-04-28 06:47:32.000000000","message":"Done","commit_id":"e400e70e81b008acd03e84a738e081e5655cc3c6"}],"tox.ini":[{"author":{"_account_id":9656,"name":"Ihar Hrachyshka","email":"ihrachys@redhat.com","username":"ihrachys","status":"Red Hat Networking Systems Engineer"},"change_message_id":"2dad3cd6cd5bccded1094a2e6506646c0fd66b2f","unresolved":false,"context_lines":[{"line_number":71,"context_line":"setenv \u003d {[testenv]setenv}"},{"line_number":72,"context_line":"         {[testenv:common]setenv}"},{"line_number":73,"context_line":"         {[testenv:dsvm]setenv}"},{"line_number":74,"context_line":"         OS_SUDO_TESTING\u003d0"},{"line_number":75,"context_line":"         # workaround for DB teardown lock contention (bug/1541742)"},{"line_number":76,"context_line":"         OS_TEST_TIMEOUT\u003d600"},{"line_number":77,"context_line":"         OS_TEST_PATH\u003d./neutron/tests/fullstack"}],"source_content_type":"text/x-properties","patch_set":6,"id":"1f013ff3_1a7283e6","line":74,"updated":"2017-05-16 03:55:45.000000000","message":"Why is it needed exactly? I don\u0027t see a single fullstack test that would be affected. This variable is used in functional_base.BaseSudoTestCase only.","commit_id":"2015d5a1952f38cd1630f9b81518a283ac5b87db"},{"author":{"_account_id":9656,"name":"Ihar Hrachyshka","email":"ihrachys@redhat.com","username":"ihrachys","status":"Red Hat Networking Systems Engineer"},"change_message_id":"1e36a8db5cf7826e8d4cf40d87b14d550ed55d3d","unresolved":false,"context_lines":[{"line_number":71,"context_line":"setenv \u003d {[testenv]setenv}"},{"line_number":72,"context_line":"         {[testenv:common]setenv}"},{"line_number":73,"context_line":"         {[testenv:dsvm]setenv}"},{"line_number":74,"context_line":"         OS_SUDO_TESTING\u003d0"},{"line_number":75,"context_line":"         # workaround for DB teardown lock contention (bug/1541742)"},{"line_number":76,"context_line":"         OS_TEST_TIMEOUT\u003d600"},{"line_number":77,"context_line":"         OS_TEST_PATH\u003d./neutron/tests/fullstack"}],"source_content_type":"text/x-properties","patch_set":10,"id":"df140735_b54e896c","line":74,"updated":"2017-06-04 03:54:10.000000000","message":"why exactly do we want to set it? it doesn\u0027t seem to be used in fullstack anywhere, so the only reason would be to disable touching rootwrap.conf and deployment of functional rootwrap filters by deploy_rootwrap.sh. Why is it important? I think it should be fine to do it for both types of jobs, no?","commit_id":"2cff4f011ad64f0c5d60878473a937edb5222a80"}]}
