)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":32927,"name":"mitya-eremeev-2","display_name":"Mitya Eremeev","email":"mitossvyaz@mail.ru","username":"mitya-eremeev-2"},"change_message_id":"4031bfcd566933c0df8360589eeee6d9b116a950","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":11,"id":"4f511461_e2da4c45","updated":"2022-07-19 10:59:00.000000000","message":"CI failed with error:\n4 TUNNEL_IP_VERSION is not set to 6 so TUNNEL_ENDPOINT_IP cannot be an IPv6 address.\nhttps://zuul.opendev.org/t/openstack/build/23a635aa5b8048f1a42e0a06ba0f8948","commit_id":"9fef8807cfeb793e838727c227e3aca4fee9aa4d"},{"author":{"_account_id":30623,"name":"suzhengwei","email":"suzhengwei@inspur.com","username":"SuZhengwei"},"change_message_id":"9ff742896583bc411d773267db0ca649d557e52a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":11,"id":"becf33d2_241d7b62","updated":"2022-07-20 00:21:53.000000000","message":"recheck","commit_id":"9fef8807cfeb793e838727c227e3aca4fee9aa4d"},{"author":{"_account_id":30623,"name":"suzhengwei","email":"suzhengwei@inspur.com","username":"SuZhengwei"},"change_message_id":"eeb64e40a57a2ee2136a5098d147cb1bd79317b0","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":11,"id":"48fb5601_822f3ca3","in_reply_to":"4f511461_e2da4c45","updated":"2022-07-19 11:37:41.000000000","message":"I will merge it after the job fix: https://review.opendev.org/c/openstack/masakari/+/850302","commit_id":"9fef8807cfeb793e838727c227e3aca4fee9aa4d"}],"masakari/cmd/api.py":[{"author":{"_account_id":30623,"name":"suzhengwei","email":"suzhengwei@inspur.com","username":"SuZhengwei"},"change_message_id":"a2c3d027fc75ed2762e1bf18433995c3fa900a9d","unresolved":true,"context_lines":[{"line_number":55,"context_line":"    launcher \u003d service.process_launcher()"},{"line_number":56,"context_line":"    try:"},{"line_number":57,"context_line":"        server \u003d service.WSGIService(\"masakari_api\", use_ssl\u003dCONF.use_ssl,"},{"line_number":58,"context_line":"                                     coordination\u003dTrue)"},{"line_number":59,"context_line":"        launcher.launch_service(server, workers\u003dserver.workers or 1)"},{"line_number":60,"context_line":"    except exception.PasteAppNotFound as ex:"},{"line_number":61,"context_line":"        log.error(\"Failed to start ``masakari_api`` service. Error: %s\","}],"source_content_type":"text/x-python","patch_set":3,"id":"d9ab78e5_e3687a7e","line":58,"range":{"start_line":58,"start_character":37,"end_line":58,"end_character":54},"updated":"2022-05-17 03:22:27.000000000","message":"It is better to determine whether to use coordination here when the service starts according to the the configuration CONF.coordination.backend_url. Set the value \u0027False\u0027 If not configured.","commit_id":"0a6161bb370f388b494a1ecb70ec0d6ec01558eb"},{"author":{"_account_id":32927,"name":"mitya-eremeev-2","display_name":"Mitya Eremeev","email":"mitossvyaz@mail.ru","username":"mitya-eremeev-2"},"change_message_id":"9ea2ec0d3720e7883ce163fcb880c0bc437e17fc","unresolved":false,"context_lines":[{"line_number":55,"context_line":"    launcher \u003d service.process_launcher()"},{"line_number":56,"context_line":"    try:"},{"line_number":57,"context_line":"        server \u003d service.WSGIService(\"masakari_api\", use_ssl\u003dCONF.use_ssl,"},{"line_number":58,"context_line":"                                     coordination\u003dTrue)"},{"line_number":59,"context_line":"        launcher.launch_service(server, workers\u003dserver.workers or 1)"},{"line_number":60,"context_line":"    except exception.PasteAppNotFound as ex:"},{"line_number":61,"context_line":"        log.error(\"Failed to start ``masakari_api`` service. Error: %s\","}],"source_content_type":"text/x-python","patch_set":3,"id":"938aca12_48f7a62e","line":58,"range":{"start_line":58,"start_character":37,"end_line":58,"end_character":54},"in_reply_to":"d9ab78e5_e3687a7e","updated":"2022-05-19 07:33:34.000000000","message":"Done","commit_id":"0a6161bb370f388b494a1ecb70ec0d6ec01558eb"},{"author":{"_account_id":30623,"name":"suzhengwei","email":"suzhengwei@inspur.com","username":"SuZhengwei"},"change_message_id":"a2c3d027fc75ed2762e1bf18433995c3fa900a9d","unresolved":true,"context_lines":[{"line_number":83,"context_line":""},{"line_number":84,"context_line":"    config.set_middleware_defaults()"},{"line_number":85,"context_line":""},{"line_number":86,"context_line":"    coordination.COORDINATOR.start()"},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"    rpc.init(CONF)"},{"line_number":89,"context_line":"    conf \u003d conf_files[0]"}],"source_content_type":"text/x-python","patch_set":3,"id":"2056a854_b960e729","line":86,"range":{"start_line":86,"start_character":4,"end_line":86,"end_character":36},"updated":"2022-05-17 03:22:27.000000000","message":"ditto","commit_id":"0a6161bb370f388b494a1ecb70ec0d6ec01558eb"},{"author":{"_account_id":32927,"name":"mitya-eremeev-2","display_name":"Mitya Eremeev","email":"mitossvyaz@mail.ru","username":"mitya-eremeev-2"},"change_message_id":"9ea2ec0d3720e7883ce163fcb880c0bc437e17fc","unresolved":false,"context_lines":[{"line_number":83,"context_line":""},{"line_number":84,"context_line":"    config.set_middleware_defaults()"},{"line_number":85,"context_line":""},{"line_number":86,"context_line":"    coordination.COORDINATOR.start()"},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"    rpc.init(CONF)"},{"line_number":89,"context_line":"    conf \u003d conf_files[0]"}],"source_content_type":"text/x-python","patch_set":3,"id":"84e3144b_70f1109b","line":86,"range":{"start_line":86,"start_character":4,"end_line":86,"end_character":36},"in_reply_to":"2056a854_b960e729","updated":"2022-05-19 07:33:34.000000000","message":"Done","commit_id":"0a6161bb370f388b494a1ecb70ec0d6ec01558eb"}],"masakari/coordination.py":[{"author":{"_account_id":30623,"name":"suzhengwei","email":"suzhengwei@inspur.com","username":"SuZhengwei"},"change_message_id":"a2c3d027fc75ed2762e1bf18433995c3fa900a9d","unresolved":true,"context_lines":[{"line_number":43,"context_line":"        self.agent_id \u003d agent_id or str(uuid.uuid4())"},{"line_number":44,"context_line":"        self.started \u003d False"},{"line_number":45,"context_line":"        self.prefix \u003d prefix"},{"line_number":46,"context_line":"        self.configured \u003d False"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"    def start(self):"},{"line_number":49,"context_line":"        \"\"\"Starts coordination"}],"source_content_type":"text/x-python","patch_set":3,"id":"e75606f9_ef0e3254","line":46,"range":{"start_line":46,"start_character":0,"end_line":46,"end_character":31},"updated":"2022-05-17 03:22:27.000000000","message":"Where to use coordination is determined when the service starts. No need to check the configuration repeatly when running.","commit_id":"0a6161bb370f388b494a1ecb70ec0d6ec01558eb"},{"author":{"_account_id":32927,"name":"mitya-eremeev-2","display_name":"Mitya Eremeev","email":"mitossvyaz@mail.ru","username":"mitya-eremeev-2"},"change_message_id":"9ea2ec0d3720e7883ce163fcb880c0bc437e17fc","unresolved":false,"context_lines":[{"line_number":43,"context_line":"        self.agent_id \u003d agent_id or str(uuid.uuid4())"},{"line_number":44,"context_line":"        self.started \u003d False"},{"line_number":45,"context_line":"        self.prefix \u003d prefix"},{"line_number":46,"context_line":"        self.configured \u003d False"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"    def start(self):"},{"line_number":49,"context_line":"        \"\"\"Starts coordination"}],"source_content_type":"text/x-python","patch_set":3,"id":"213c818d_12c82974","line":46,"range":{"start_line":46,"start_character":0,"end_line":46,"end_character":31},"in_reply_to":"e75606f9_ef0e3254","updated":"2022-05-19 07:33:34.000000000","message":"Done","commit_id":"0a6161bb370f388b494a1ecb70ec0d6ec01558eb"},{"author":{"_account_id":30623,"name":"suzhengwei","email":"suzhengwei@inspur.com","username":"SuZhengwei"},"change_message_id":"a2c3d027fc75ed2762e1bf18433995c3fa900a9d","unresolved":true,"context_lines":[{"line_number":54,"context_line":""},{"line_number":55,"context_line":"        # Tooz expects member_id as a byte string."},{"line_number":56,"context_line":"        member_id \u003d (self.prefix + self.agent_id).encode(\u0027ascii\u0027)"},{"line_number":57,"context_line":"        if cfg.CONF.coordination.backend_url is None:"},{"line_number":58,"context_line":"            LOG.info(\"Coordinator for member id %s will not be started \""},{"line_number":59,"context_line":"                     \"because it\u0027s not configured.\", member_id)"},{"line_number":60,"context_line":"        else:"},{"line_number":61,"context_line":"            self.configured \u003d True"},{"line_number":62,"context_line":"            self.coordinator \u003d coordination.get_coordinator("}],"source_content_type":"text/x-python","patch_set":3,"id":"3870b5de_07300c5a","line":59,"range":{"start_line":57,"start_character":0,"end_line":59,"end_character":63},"updated":"2022-05-17 03:22:27.000000000","message":"ditto","commit_id":"0a6161bb370f388b494a1ecb70ec0d6ec01558eb"},{"author":{"_account_id":32927,"name":"mitya-eremeev-2","display_name":"Mitya Eremeev","email":"mitossvyaz@mail.ru","username":"mitya-eremeev-2"},"change_message_id":"9ea2ec0d3720e7883ce163fcb880c0bc437e17fc","unresolved":false,"context_lines":[{"line_number":54,"context_line":""},{"line_number":55,"context_line":"        # Tooz expects member_id as a byte string."},{"line_number":56,"context_line":"        member_id \u003d (self.prefix + self.agent_id).encode(\u0027ascii\u0027)"},{"line_number":57,"context_line":"        if cfg.CONF.coordination.backend_url is None:"},{"line_number":58,"context_line":"            LOG.info(\"Coordinator for member id %s will not be started \""},{"line_number":59,"context_line":"                     \"because it\u0027s not configured.\", member_id)"},{"line_number":60,"context_line":"        else:"},{"line_number":61,"context_line":"            self.configured \u003d True"},{"line_number":62,"context_line":"            self.coordinator \u003d coordination.get_coordinator("}],"source_content_type":"text/x-python","patch_set":3,"id":"599105c3_165f3a67","line":59,"range":{"start_line":57,"start_character":0,"end_line":59,"end_character":63},"in_reply_to":"3870b5de_07300c5a","updated":"2022-05-19 07:33:34.000000000","message":"Done","commit_id":"0a6161bb370f388b494a1ecb70ec0d6ec01558eb"},{"author":{"_account_id":30623,"name":"suzhengwei","email":"suzhengwei@inspur.com","username":"SuZhengwei"},"change_message_id":"a2c3d027fc75ed2762e1bf18433995c3fa900a9d","unresolved":true,"context_lines":[{"line_number":79,"context_line":"        \"\"\""},{"line_number":80,"context_line":"        # Tooz expects lock name as a byte string."},{"line_number":81,"context_line":"        lock_name \u003d (self.prefix + name).encode(\u0027ascii\u0027)"},{"line_number":82,"context_line":"        if not self.configured:"},{"line_number":83,"context_line":"            LOG.debug(\"Cannot get lock %s, because coordination is not \""},{"line_number":84,"context_line":"                      \"configured.\", lock_name)"},{"line_number":85,"context_line":"            return"},{"line_number":86,"context_line":"        if self.coordinator is not None:"},{"line_number":87,"context_line":"            return self.coordinator.get_lock(lock_name)"},{"line_number":88,"context_line":"        else:"}],"source_content_type":"text/x-python","patch_set":3,"id":"c7139c4b_4302bee0","line":85,"range":{"start_line":82,"start_character":0,"end_line":85,"end_character":18},"updated":"2022-05-17 03:22:27.000000000","message":"ditto","commit_id":"0a6161bb370f388b494a1ecb70ec0d6ec01558eb"},{"author":{"_account_id":32927,"name":"mitya-eremeev-2","display_name":"Mitya Eremeev","email":"mitossvyaz@mail.ru","username":"mitya-eremeev-2"},"change_message_id":"9ea2ec0d3720e7883ce163fcb880c0bc437e17fc","unresolved":false,"context_lines":[{"line_number":79,"context_line":"        \"\"\""},{"line_number":80,"context_line":"        # Tooz expects lock name as a byte string."},{"line_number":81,"context_line":"        lock_name \u003d (self.prefix + name).encode(\u0027ascii\u0027)"},{"line_number":82,"context_line":"        if not self.configured:"},{"line_number":83,"context_line":"            LOG.debug(\"Cannot get lock %s, because coordination is not \""},{"line_number":84,"context_line":"                      \"configured.\", lock_name)"},{"line_number":85,"context_line":"            return"},{"line_number":86,"context_line":"        if self.coordinator is not None:"},{"line_number":87,"context_line":"            return self.coordinator.get_lock(lock_name)"},{"line_number":88,"context_line":"        else:"}],"source_content_type":"text/x-python","patch_set":3,"id":"a86ec20e_2f82f9fb","line":85,"range":{"start_line":82,"start_character":0,"end_line":85,"end_character":18},"in_reply_to":"c7139c4b_4302bee0","updated":"2022-05-19 07:33:34.000000000","message":"Done","commit_id":"0a6161bb370f388b494a1ecb70ec0d6ec01558eb"}],"requirements.txt":[{"author":{"_account_id":30623,"name":"suzhengwei","email":"suzhengwei@inspur.com","username":"SuZhengwei"},"change_message_id":"a2c3d027fc75ed2762e1bf18433995c3fa900a9d","unresolved":true,"context_lines":[{"line_number":18,"context_line":"oslo.policy\u003e\u003d3.6.0 # Apache-2.0"},{"line_number":19,"context_line":"oslo.service!\u003d1.28.1,\u003e\u003d1.24.0 # Apache-2.0"},{"line_number":20,"context_line":"oslo.upgradecheck\u003e\u003d1.3.0 # Apache-2.0"},{"line_number":21,"context_line":"oslo.utils\u003e\u003d4.7.0 # Apache-2.0"},{"line_number":22,"context_line":"oslo.versionedobjects\u003e\u003d1.31.2 # Apache-2.0"},{"line_number":23,"context_line":"pbr!\u003d2.1.0,\u003e\u003d2.0.0 # Apache-2.0"},{"line_number":24,"context_line":"python-novaclient\u003e\u003d9.1.0 # Apache-2.0"}],"source_content_type":"text/plain","patch_set":3,"id":"c79a856d_55e8e674","line":21,"range":{"start_line":21,"start_character":0,"end_line":21,"end_character":30},"updated":"2022-05-17 03:22:27.000000000","message":"Why upgrade this module?","commit_id":"0a6161bb370f388b494a1ecb70ec0d6ec01558eb"},{"author":{"_account_id":32927,"name":"mitya-eremeev-2","display_name":"Mitya Eremeev","email":"mitossvyaz@mail.ru","username":"mitya-eremeev-2"},"change_message_id":"9ea2ec0d3720e7883ce163fcb880c0bc437e17fc","unresolved":true,"context_lines":[{"line_number":18,"context_line":"oslo.policy\u003e\u003d3.6.0 # Apache-2.0"},{"line_number":19,"context_line":"oslo.service!\u003d1.28.1,\u003e\u003d1.24.0 # Apache-2.0"},{"line_number":20,"context_line":"oslo.upgradecheck\u003e\u003d1.3.0 # Apache-2.0"},{"line_number":21,"context_line":"oslo.utils\u003e\u003d4.7.0 # Apache-2.0"},{"line_number":22,"context_line":"oslo.versionedobjects\u003e\u003d1.31.2 # Apache-2.0"},{"line_number":23,"context_line":"pbr!\u003d2.1.0,\u003e\u003d2.0.0 # Apache-2.0"},{"line_number":24,"context_line":"python-novaclient\u003e\u003d9.1.0 # Apache-2.0"}],"source_content_type":"text/plain","patch_set":3,"id":"9b23ffac_cbaa737f","line":21,"range":{"start_line":21,"start_character":0,"end_line":21,"end_character":30},"in_reply_to":"c79a856d_55e8e674","updated":"2022-05-19 07:33:34.000000000","message":"I don\u0027t remember.\n3 month left since patch was uploaded.","commit_id":"0a6161bb370f388b494a1ecb70ec0d6ec01558eb"},{"author":{"_account_id":30623,"name":"suzhengwei","email":"suzhengwei@inspur.com","username":"SuZhengwei"},"change_message_id":"a2c3d027fc75ed2762e1bf18433995c3fa900a9d","unresolved":true,"context_lines":[{"line_number":26,"context_line":"SQLAlchemy\u003e\u003d1.2.19 # MIT"},{"line_number":27,"context_line":"SQLAlchemy-Utils\u003e\u003d0.33.10 # Apache-2.0"},{"line_number":28,"context_line":"taskflow\u003e\u003d2.16.0 # Apache-2.0"},{"line_number":29,"context_line":"tooz\u003e\u003d2.10.1 # Apache-2.0"},{"line_number":30,"context_line":"etcd3gw\u003e\u003d1.0.1 # Apache-2.0"}],"source_content_type":"text/plain","patch_set":3,"id":"12810f2a_4689a99e","line":30,"range":{"start_line":29,"start_character":0,"end_line":30,"end_character":27},"updated":"2022-05-17 03:22:27.000000000","message":"etcd3gw is not necessary. Just upate install doc, because it is required only when the backend driver is configured to use etcd3.","commit_id":"0a6161bb370f388b494a1ecb70ec0d6ec01558eb"},{"author":{"_account_id":32927,"name":"mitya-eremeev-2","display_name":"Mitya Eremeev","email":"mitossvyaz@mail.ru","username":"mitya-eremeev-2"},"change_message_id":"9ea2ec0d3720e7883ce163fcb880c0bc437e17fc","unresolved":false,"context_lines":[{"line_number":26,"context_line":"SQLAlchemy\u003e\u003d1.2.19 # MIT"},{"line_number":27,"context_line":"SQLAlchemy-Utils\u003e\u003d0.33.10 # Apache-2.0"},{"line_number":28,"context_line":"taskflow\u003e\u003d2.16.0 # Apache-2.0"},{"line_number":29,"context_line":"tooz\u003e\u003d2.10.1 # Apache-2.0"},{"line_number":30,"context_line":"etcd3gw\u003e\u003d1.0.1 # Apache-2.0"}],"source_content_type":"text/plain","patch_set":3,"id":"9f2e13d9_e9ffa86f","line":30,"range":{"start_line":29,"start_character":0,"end_line":30,"end_character":27},"in_reply_to":"12810f2a_4689a99e","updated":"2022-05-19 07:33:34.000000000","message":"Done","commit_id":"0a6161bb370f388b494a1ecb70ec0d6ec01558eb"}]}
