)]}'
{"cyborg/accelerator/drivers/generic_driver.py":[{"author":{"_account_id":27458,"name":"Li Liu","email":"liliueecg@gmail.com","username":"liliu"},"change_message_id":"c820244ddf9d3f80c607350b702123dde7b34b21","unresolved":false,"context_lines":[{"line_number":22,"context_line":"from oslo_log import log"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"from cyborg.accelerator import accelerator"},{"line_number":25,"context_line":"from cyborg.api.controllers.v1.accelerators import AcceleratorsController"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"LOG \u003d log.getLogger(__name__)"},{"line_number":28,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"7f96bb07_788188c3","line":25,"range":{"start_line":25,"start_character":51,"end_line":25,"end_character":73},"updated":"2018-01-20 23:24:50.000000000","message":"Question: Why the driver is calling all REST APIs instead of RPCs?","commit_id":"6925284105649aab3f29b4de862f69b7f5e469f0"},{"author":{"_account_id":11878,"name":"Rushil Chugh","email":"rushil.chugh@gmail.com","username":"rushil"},"change_message_id":"c51edd2b7aeaf0c80662a08708e8795b2d071311","unresolved":false,"context_lines":[{"line_number":22,"context_line":"from oslo_log import log"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"from cyborg.accelerator import accelerator"},{"line_number":25,"context_line":"from cyborg.api.controllers.v1.accelerators import AcceleratorsController"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"LOG \u003d log.getLogger(__name__)"},{"line_number":28,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"5f93b717_c592f7f6","line":25,"range":{"start_line":25,"start_character":51,"end_line":25,"end_character":73},"in_reply_to":"7f96bb07_788188c3","updated":"2018-01-27 22:14:26.000000000","message":"Done","commit_id":"6925284105649aab3f29b4de862f69b7f5e469f0"},{"author":{"_account_id":14131,"name":"shaohef","email":"shaohe.feng@intel.com","username":"shaohefeng"},"change_message_id":"d19303f5fd7343ee94af1dec75796ce5006e3c9a","unresolved":false,"context_lines":[{"line_number":36,"context_line":"def ensure_server(f):"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"    def wrap(self, context, *args, **kwargs):"},{"line_number":39,"context_line":"        server \u003d kwargs.get(\u0027accelerator_server\u0027)"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"        return f(self, context, *args, **kwargs)"},{"line_number":42,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"7f96bb07_f8034abd","line":39,"range":{"start_line":39,"start_character":8,"end_line":39,"end_character":49},"updated":"2018-01-22 06:33:24.000000000","message":"if accelerator_server does not exist, kwargs.get will return none.\n\nSo here does not ensure server.","commit_id":"6925284105649aab3f29b4de862f69b7f5e469f0"},{"author":{"_account_id":11878,"name":"Rushil Chugh","email":"rushil.chugh@gmail.com","username":"rushil"},"change_message_id":"c51edd2b7aeaf0c80662a08708e8795b2d071311","unresolved":false,"context_lines":[{"line_number":36,"context_line":"def ensure_server(f):"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"    def wrap(self, context, *args, **kwargs):"},{"line_number":39,"context_line":"        server \u003d kwargs.get(\u0027accelerator_server\u0027)"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"        return f(self, context, *args, **kwargs)"},{"line_number":42,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"5f93b717_e554d323","line":39,"range":{"start_line":39,"start_character":8,"end_line":39,"end_character":49},"in_reply_to":"7f96bb07_f8034abd","updated":"2018-01-27 22:14:26.000000000","message":"Done","commit_id":"6925284105649aab3f29b4de862f69b7f5e469f0"},{"author":{"_account_id":14131,"name":"shaohef","email":"shaohe.feng@intel.com","username":"shaohefeng"},"change_message_id":"d19303f5fd7343ee94af1dec75796ce5006e3c9a","unresolved":false,"context_lines":[{"line_number":49,"context_line":"    def __init__(self, *args, **kwargs):"},{"line_number":50,"context_line":"        \"\"\"Do initialization.\"\"\""},{"line_number":51,"context_line":"        super(GenericDriver, self).__init__()"},{"line_number":52,"context_line":"        self.configuration.append_config_values(accelerator_opts)"},{"line_number":53,"context_line":"        self._helpers \u003d {}"},{"line_number":54,"context_line":"        self.backend_name \u003d self.configuration.safe_get("},{"line_number":55,"context_line":"            \u0027accelerator_backend_name\u0027)"}],"source_content_type":"text/x-python","patch_set":3,"id":"7f96bb07_18c07650","line":52,"range":{"start_line":52,"start_character":48,"end_line":52,"end_character":64},"updated":"2018-01-22 06:33:24.000000000","message":"Is accelerator_opts the global value at the begin of this file?\n\nShould it be overwritten by /etc/cyborg.conf?","commit_id":"6925284105649aab3f29b4de862f69b7f5e469f0"},{"author":{"_account_id":11878,"name":"Rushil Chugh","email":"rushil.chugh@gmail.com","username":"rushil"},"change_message_id":"c51edd2b7aeaf0c80662a08708e8795b2d071311","unresolved":false,"context_lines":[{"line_number":49,"context_line":"    def __init__(self, *args, **kwargs):"},{"line_number":50,"context_line":"        \"\"\"Do initialization.\"\"\""},{"line_number":51,"context_line":"        super(GenericDriver, self).__init__()"},{"line_number":52,"context_line":"        self.configuration.append_config_values(accelerator_opts)"},{"line_number":53,"context_line":"        self._helpers \u003d {}"},{"line_number":54,"context_line":"        self.backend_name \u003d self.configuration.safe_get("},{"line_number":55,"context_line":"            \u0027accelerator_backend_name\u0027)"}],"source_content_type":"text/x-python","patch_set":3,"id":"5f93b717_65176353","line":52,"range":{"start_line":52,"start_character":48,"end_line":52,"end_character":64},"in_reply_to":"7f96bb07_18c07650","updated":"2018-01-27 22:14:26.000000000","message":"Done","commit_id":"6925284105649aab3f29b4de862f69b7f5e469f0"},{"author":{"_account_id":14131,"name":"shaohef","email":"shaohe.feng@intel.com","username":"shaohefeng"},"change_message_id":"d19303f5fd7343ee94af1dec75796ce5006e3c9a","unresolved":false,"context_lines":[{"line_number":73,"context_line":"        self.accelerator \u003d AcceleratorsController.get_one(uuid)"},{"line_number":74,"context_line":"        return self.accelerator"},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"    def list_accelerators(self, uuid):"},{"line_number":77,"context_line":"        \"\"\"Lists all accelerators.\"\"\""},{"line_number":78,"context_line":"        self.accelerator \u003d AcceleratorsController.get_all()"},{"line_number":79,"context_line":"        return self.accelerator"}],"source_content_type":"text/x-python","patch_set":3,"id":"7f96bb07_d803ee72","line":76,"range":{"start_line":76,"start_character":32,"end_line":76,"end_character":36},"updated":"2018-01-22 06:33:24.000000000","message":"why need uuid for get all?","commit_id":"6925284105649aab3f29b4de862f69b7f5e469f0"},{"author":{"_account_id":11878,"name":"Rushil Chugh","email":"rushil.chugh@gmail.com","username":"rushil"},"change_message_id":"c51edd2b7aeaf0c80662a08708e8795b2d071311","unresolved":false,"context_lines":[{"line_number":73,"context_line":"        self.accelerator \u003d AcceleratorsController.get_one(uuid)"},{"line_number":74,"context_line":"        return self.accelerator"},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"    def list_accelerators(self, uuid):"},{"line_number":77,"context_line":"        \"\"\"Lists all accelerators.\"\"\""},{"line_number":78,"context_line":"        self.accelerator \u003d AcceleratorsController.get_all()"},{"line_number":79,"context_line":"        return self.accelerator"}],"source_content_type":"text/x-python","patch_set":3,"id":"5f93b717_85be2f63","line":76,"range":{"start_line":76,"start_character":32,"end_line":76,"end_character":36},"in_reply_to":"7f96bb07_d803ee72","updated":"2018-01-27 22:14:26.000000000","message":"Done","commit_id":"6925284105649aab3f29b4de862f69b7f5e469f0"},{"author":{"_account_id":14131,"name":"shaohef","email":"shaohe.feng@intel.com","username":"shaohefeng"},"change_message_id":"d19303f5fd7343ee94af1dec75796ce5006e3c9a","unresolved":false,"context_lines":[{"line_number":75,"context_line":""},{"line_number":76,"context_line":"    def list_accelerators(self, uuid):"},{"line_number":77,"context_line":"        \"\"\"Lists all accelerators.\"\"\""},{"line_number":78,"context_line":"        self.accelerator \u003d AcceleratorsController.get_all()"},{"line_number":79,"context_line":"        return self.accelerator"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"    def update_accelerators(self, uuid, update):"}],"source_content_type":"text/x-python","patch_set":3,"id":"7f96bb07_d811aeae","line":78,"range":{"start_line":78,"start_character":13,"end_line":78,"end_character":24},"updated":"2018-01-22 06:33:24.000000000","message":"better accelerators?","commit_id":"6925284105649aab3f29b4de862f69b7f5e469f0"},{"author":{"_account_id":11878,"name":"Rushil Chugh","email":"rushil.chugh@gmail.com","username":"rushil"},"change_message_id":"c51edd2b7aeaf0c80662a08708e8795b2d071311","unresolved":false,"context_lines":[{"line_number":75,"context_line":""},{"line_number":76,"context_line":"    def list_accelerators(self, uuid):"},{"line_number":77,"context_line":"        \"\"\"Lists all accelerators.\"\"\""},{"line_number":78,"context_line":"        self.accelerator \u003d AcceleratorsController.get_all()"},{"line_number":79,"context_line":"        return self.accelerator"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"    def update_accelerators(self, uuid, update):"}],"source_content_type":"text/x-python","patch_set":3,"id":"5f93b717_45b82775","line":78,"range":{"start_line":78,"start_character":13,"end_line":78,"end_character":24},"in_reply_to":"7f96bb07_d811aeae","updated":"2018-01-27 22:14:26.000000000","message":"Done","commit_id":"6925284105649aab3f29b4de862f69b7f5e469f0"},{"author":{"_account_id":14131,"name":"shaohef","email":"shaohe.feng@intel.com","username":"shaohefeng"},"change_message_id":"d19303f5fd7343ee94af1dec75796ce5006e3c9a","unresolved":false,"context_lines":[{"line_number":78,"context_line":"        self.accelerator \u003d AcceleratorsController.get_all()"},{"line_number":79,"context_line":"        return self.accelerator"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"    def update_accelerators(self, uuid, update):"},{"line_number":82,"context_line":"        \"\"\"Updates accelerator with a patch update.\"\"\""},{"line_number":83,"context_line":"        AcceleratorsController.patch(uuid, patch\u003dupdate)"},{"line_number":84,"context_line":"        LOG.debug(\"Updated accelerator %s \", uuid)"}],"source_content_type":"text/x-python","patch_set":3,"id":"7f96bb07_786bba1e","line":81,"range":{"start_line":81,"start_character":8,"end_line":81,"end_character":27},"updated":"2018-01-22 06:33:24.000000000","message":"update_accelerator?","commit_id":"6925284105649aab3f29b4de862f69b7f5e469f0"},{"author":{"_account_id":11878,"name":"Rushil Chugh","email":"rushil.chugh@gmail.com","username":"rushil"},"change_message_id":"c51edd2b7aeaf0c80662a08708e8795b2d071311","unresolved":false,"context_lines":[{"line_number":78,"context_line":"        self.accelerator \u003d AcceleratorsController.get_all()"},{"line_number":79,"context_line":"        return self.accelerator"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"    def update_accelerators(self, uuid, update):"},{"line_number":82,"context_line":"        \"\"\"Updates accelerator with a patch update.\"\"\""},{"line_number":83,"context_line":"        AcceleratorsController.patch(uuid, patch\u003dupdate)"},{"line_number":84,"context_line":"        LOG.debug(\"Updated accelerator %s \", uuid)"}],"source_content_type":"text/x-python","patch_set":3,"id":"5f93b717_4009f529","line":81,"range":{"start_line":81,"start_character":8,"end_line":81,"end_character":27},"in_reply_to":"7f96bb07_786bba1e","updated":"2018-01-27 22:14:26.000000000","message":"Done","commit_id":"6925284105649aab3f29b4de862f69b7f5e469f0"},{"author":{"_account_id":14131,"name":"shaohef","email":"shaohe.feng@intel.com","username":"shaohefeng"},"change_message_id":"d19303f5fd7343ee94af1dec75796ce5006e3c9a","unresolved":false,"context_lines":[{"line_number":83,"context_line":"        AcceleratorsController.patch(uuid, patch\u003dupdate)"},{"line_number":84,"context_line":"        LOG.debug(\"Updated accelerator %s \", uuid)"},{"line_number":85,"context_line":""},{"line_number":86,"context_line":"    def delete_accelerators(self, uuid):"},{"line_number":87,"context_line":"        \"\"\"Deletes a specific accelerator.\"\"\""},{"line_number":88,"context_line":"        LOG.debug(\"Deleting accelerator %s \", uuid)"},{"line_number":89,"context_line":"        AcceleratorsController.delete(uuid)"}],"source_content_type":"text/x-python","patch_set":3,"id":"7f96bb07_387532fb","line":86,"range":{"start_line":86,"start_character":8,"end_line":86,"end_character":27},"updated":"2018-01-22 06:33:24.000000000","message":"ditto","commit_id":"6925284105649aab3f29b4de862f69b7f5e469f0"},{"author":{"_account_id":11878,"name":"Rushil Chugh","email":"rushil.chugh@gmail.com","username":"rushil"},"change_message_id":"c51edd2b7aeaf0c80662a08708e8795b2d071311","unresolved":false,"context_lines":[{"line_number":83,"context_line":"        AcceleratorsController.patch(uuid, patch\u003dupdate)"},{"line_number":84,"context_line":"        LOG.debug(\"Updated accelerator %s \", uuid)"},{"line_number":85,"context_line":""},{"line_number":86,"context_line":"    def delete_accelerators(self, uuid):"},{"line_number":87,"context_line":"        \"\"\"Deletes a specific accelerator.\"\"\""},{"line_number":88,"context_line":"        LOG.debug(\"Deleting accelerator %s \", uuid)"},{"line_number":89,"context_line":"        AcceleratorsController.delete(uuid)"}],"source_content_type":"text/x-python","patch_set":3,"id":"5f93b717_050e9f3a","line":86,"range":{"start_line":86,"start_character":8,"end_line":86,"end_character":27},"in_reply_to":"7f96bb07_387532fb","updated":"2018-01-27 22:14:26.000000000","message":"Done","commit_id":"6925284105649aab3f29b4de862f69b7f5e469f0"},{"author":{"_account_id":14131,"name":"shaohef","email":"shaohe.feng@intel.com","username":"shaohefeng"},"change_message_id":"d19303f5fd7343ee94af1dec75796ce5006e3c9a","unresolved":false,"context_lines":[{"line_number":85,"context_line":""},{"line_number":86,"context_line":"    def delete_accelerators(self, uuid):"},{"line_number":87,"context_line":"        \"\"\"Deletes a specific accelerator.\"\"\""},{"line_number":88,"context_line":"        LOG.debug(\"Deleting accelerator %s \", uuid)"},{"line_number":89,"context_line":"        AcceleratorsController.delete(uuid)"}],"source_content_type":"text/x-python","patch_set":3,"id":"7f96bb07_384e92c1","line":88,"range":{"start_line":88,"start_character":8,"end_line":88,"end_character":51},"updated":"2018-01-22 06:33:24.000000000","message":"nit: log after the delete() action?\nTo keep the same style with other actions.","commit_id":"6925284105649aab3f29b4de862f69b7f5e469f0"},{"author":{"_account_id":11878,"name":"Rushil Chugh","email":"rushil.chugh@gmail.com","username":"rushil"},"change_message_id":"c51edd2b7aeaf0c80662a08708e8795b2d071311","unresolved":false,"context_lines":[{"line_number":85,"context_line":""},{"line_number":86,"context_line":"    def delete_accelerators(self, uuid):"},{"line_number":87,"context_line":"        \"\"\"Deletes a specific accelerator.\"\"\""},{"line_number":88,"context_line":"        LOG.debug(\"Deleting accelerator %s \", uuid)"},{"line_number":89,"context_line":"        AcceleratorsController.delete(uuid)"}],"source_content_type":"text/x-python","patch_set":3,"id":"5f93b717_65bbe371","line":88,"range":{"start_line":88,"start_character":8,"end_line":88,"end_character":51},"in_reply_to":"7f96bb07_384e92c1","updated":"2018-01-27 22:14:26.000000000","message":"After deletion of the accelerator, accelerator object won\u0027t exist. You will see why the order the way it is in the next patchset.","commit_id":"6925284105649aab3f29b4de862f69b7f5e469f0"}],"cyborg/conductor/rpcapi.py":[{"author":{"_account_id":13629,"name":"Zhipeng","email":"huangzhipeng@huawei.com","username":"zhipengh"},"change_message_id":"32510bad3ee025d437b9ee9488ce322678b7e8ad","unresolved":false,"context_lines":[{"line_number":77,"context_line":"        cctxt.call(context, \u0027accelerator_delete\u0027, obj_acc\u003dobj_acc)"},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"    def accelerator_list_one(self, context, obj_acc):"},{"line_number":80,"context_line":"        \"\"\"Signal to conductor service to delete an accelerator."},{"line_number":81,"context_line":""},{"line_number":82,"context_line":"        :param context: request context."},{"line_number":83,"context_line":"        :param obj_acc: an accelerator object to delete."}],"source_content_type":"text/x-python","patch_set":7,"id":"5f93b717_4a225d02","line":80,"range":{"start_line":80,"start_character":42,"end_line":80,"end_character":48},"updated":"2018-01-29 14:07:59.000000000","message":"plz fix the copy n paste notes","commit_id":"d3795b647db3361d23dd09e41a594b79d8bde3ce"},{"author":{"_account_id":11878,"name":"Rushil Chugh","email":"rushil.chugh@gmail.com","username":"rushil"},"change_message_id":"bf07b06aeeb1a66df07337aef7a107e58e1fd9ce","unresolved":false,"context_lines":[{"line_number":77,"context_line":"        cctxt.call(context, \u0027accelerator_delete\u0027, obj_acc\u003dobj_acc)"},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"    def accelerator_list_one(self, context, obj_acc):"},{"line_number":80,"context_line":"        \"\"\"Signal to conductor service to delete an accelerator."},{"line_number":81,"context_line":""},{"line_number":82,"context_line":"        :param context: request context."},{"line_number":83,"context_line":"        :param obj_acc: an accelerator object to delete."}],"source_content_type":"text/x-python","patch_set":7,"id":"5f93b717_fb4d3d72","line":80,"range":{"start_line":80,"start_character":42,"end_line":80,"end_character":48},"in_reply_to":"5f93b717_4a225d02","updated":"2018-01-29 15:57:08.000000000","message":"Done","commit_id":"d3795b647db3361d23dd09e41a594b79d8bde3ce"},{"author":{"_account_id":27458,"name":"Li Liu","email":"liliueecg@gmail.com","username":"liliu"},"change_message_id":"90d0c9347309805221f9bb83d0e3993198f40120","unresolved":false,"context_lines":[{"line_number":84,"context_line":"        :returns: accelerator object."},{"line_number":85,"context_line":"        \"\"\""},{"line_number":86,"context_line":"        cctxt \u003d self.client.prepare(topic\u003dself.topic, server\u003dCONF.host)"},{"line_number":87,"context_line":"        cctxt.call(context, \u0027get_one\u0027, obj_acc\u003dobj_acc)"},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"    def accelerator_list_all(self, context, obj_acc):"},{"line_number":90,"context_line":"        \"\"\"Signal to conductor service to list all accelerators."}],"source_content_type":"text/x-python","patch_set":8,"id":"5f93b717_84513165","line":87,"range":{"start_line":87,"start_character":8,"end_line":87,"end_character":55},"updated":"2018-01-29 21:40:25.000000000","message":"api get_one seems take uuid as its input:\n\n    @policy.authorize_wsgi(\"cyborg:accelerator\", \"get\")\n    @expose.expose(Accelerator, types.uuid)\n    def get_one(self, uuid):\n        \"\"\"Retrieve information about the given accelerator.\n\n        :param uuid: UUID of an accelerator.\n        \"\"\"\n        obj_acc \u003d self._resource or self._get_resource(uuid)\n        return Accelerator.convert_with_links(obj_acc)","commit_id":"2f4390c74b6eb0810cc006ba689984485c63e2d9"},{"author":{"_account_id":11878,"name":"Rushil Chugh","email":"rushil.chugh@gmail.com","username":"rushil"},"change_message_id":"7aece439abda7ba867c9a32f21b6fc022778bf97","unresolved":false,"context_lines":[{"line_number":84,"context_line":"        :returns: accelerator object."},{"line_number":85,"context_line":"        \"\"\""},{"line_number":86,"context_line":"        cctxt \u003d self.client.prepare(topic\u003dself.topic, server\u003dCONF.host)"},{"line_number":87,"context_line":"        cctxt.call(context, \u0027get_one\u0027, obj_acc\u003dobj_acc)"},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"    def accelerator_list_all(self, context, obj_acc):"},{"line_number":90,"context_line":"        \"\"\"Signal to conductor service to list all accelerators."}],"source_content_type":"text/x-python","patch_set":8,"id":"5f93b717_14098a94","line":87,"range":{"start_line":87,"start_character":8,"end_line":87,"end_character":55},"in_reply_to":"5f93b717_84513165","updated":"2018-02-01 04:19:41.000000000","message":"Well so does delete in the method above. The name uuid and should be renamed to context, This is misleading which can be fixed in a future patch.","commit_id":"2f4390c74b6eb0810cc006ba689984485c63e2d9"},{"author":{"_account_id":27458,"name":"Li Liu","email":"liliueecg@gmail.com","username":"liliu"},"change_message_id":"90d0c9347309805221f9bb83d0e3993198f40120","unresolved":false,"context_lines":[{"line_number":95,"context_line":""},{"line_number":96,"context_line":"        \"\"\""},{"line_number":97,"context_line":"        cctxt \u003d self.client.prepare(topic\u003dself.topic, server\u003dCONF.host)"},{"line_number":98,"context_line":"        return cctxt.call(context, \u0027get_all\u0027, obj_acc\u003dobj_acc)"}],"source_content_type":"text/x-python","patch_set":8,"id":"5f93b717_24e5bda8","line":98,"range":{"start_line":98,"start_character":8,"end_line":98,"end_character":62},"updated":"2018-01-29 21:40:25.000000000","message":"Correct me if I am wrong. But I think using get_all this way make any sense. \nCheck the method implementation of get_all.\n\n    @expose.expose(AcceleratorCollection, int, types.uuid, wtypes.text,\n                   wtypes.text, types.boolean)\n    def get_all(self, limit\u003dNone, marker\u003dNone, sort_key\u003d\u0027id\u0027, sort_dir\u003d\u0027asc\u0027,\n                all_tenants\u003dNone):","commit_id":"2f4390c74b6eb0810cc006ba689984485c63e2d9"},{"author":{"_account_id":11878,"name":"Rushil Chugh","email":"rushil.chugh@gmail.com","username":"rushil"},"change_message_id":"7aece439abda7ba867c9a32f21b6fc022778bf97","unresolved":false,"context_lines":[{"line_number":95,"context_line":""},{"line_number":96,"context_line":"        \"\"\""},{"line_number":97,"context_line":"        cctxt \u003d self.client.prepare(topic\u003dself.topic, server\u003dCONF.host)"},{"line_number":98,"context_line":"        return cctxt.call(context, \u0027get_all\u0027, obj_acc\u003dobj_acc)"}],"source_content_type":"text/x-python","patch_set":8,"id":"5f93b717_b425360b","line":98,"range":{"start_line":98,"start_character":8,"end_line":98,"end_character":62},"in_reply_to":"5f93b717_24e5bda8","updated":"2018-02-01 04:19:41.000000000","message":"The implementation is the same for delete and update(which is called patch). The name uuid is misleading which can be fixed in a future patch.","commit_id":"2f4390c74b6eb0810cc006ba689984485c63e2d9"}],"cyborg/tests/unit/accelerator/drivers/modules/test_generic.py":[{"author":{"_account_id":13629,"name":"Zhipeng","email":"huangzhipeng@huawei.com","username":"zhipengh"},"change_message_id":"32510bad3ee025d437b9ee9488ce322678b7e8ad","unresolved":false,"context_lines":[{"line_number":58,"context_line":""},{"line_number":59,"context_line":"        mock_acc_update.assert_called()"},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"    @mock.patch.object(conductor_api, \u0027accelerator_create\u0027)"},{"line_number":62,"context_line":"    def test_delete_accelerator(self, mock_acc_delete):"},{"line_number":63,"context_line":"        mock_acc_delete.return_value \u003d self.acc"},{"line_number":64,"context_line":"        generic.delete_accelerator(context\u003dFAKE_CONTEXT)"}],"source_content_type":"text/x-python","patch_set":7,"id":"5f93b717_6a72b913","line":61,"range":{"start_line":61,"start_character":39,"end_line":61,"end_character":57},"updated":"2018-01-29 14:07:59.000000000","message":"should be delete","commit_id":"d3795b647db3361d23dd09e41a594b79d8bde3ce"},{"author":{"_account_id":11878,"name":"Rushil Chugh","email":"rushil.chugh@gmail.com","username":"rushil"},"change_message_id":"bf07b06aeeb1a66df07337aef7a107e58e1fd9ce","unresolved":false,"context_lines":[{"line_number":58,"context_line":""},{"line_number":59,"context_line":"        mock_acc_update.assert_called()"},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"    @mock.patch.object(conductor_api, \u0027accelerator_create\u0027)"},{"line_number":62,"context_line":"    def test_delete_accelerator(self, mock_acc_delete):"},{"line_number":63,"context_line":"        mock_acc_delete.return_value \u003d self.acc"},{"line_number":64,"context_line":"        generic.delete_accelerator(context\u003dFAKE_CONTEXT)"}],"source_content_type":"text/x-python","patch_set":7,"id":"5f93b717_1b51090f","line":61,"range":{"start_line":61,"start_character":39,"end_line":61,"end_character":57},"in_reply_to":"5f93b717_6a72b913","updated":"2018-01-29 15:57:08.000000000","message":"Done","commit_id":"d3795b647db3361d23dd09e41a594b79d8bde3ce"}]}
