)]}'
{"trove/cluster/models.py":[{"author":{"_account_id":28695,"name":"Bartosz Zurkowski","email":"b.zurkowski@samsung.com","username":"b.zurkowski"},"change_message_id":"aa3bed0132c04508126ad112426aa9173381c031","unresolved":false,"context_lines":[{"line_number":265,"context_line":"    @classmethod"},{"line_number":266,"context_line":"    def create(cls, context, name, datastore, datastore_version,"},{"line_number":267,"context_line":"               instances, extended_properties, locality,"},{"line_number":268,"context_line":"               configuration, backup\u003dNone):"},{"line_number":269,"context_line":"        locality \u003d srv_grp.ServerGroup.build_scheduler_hint("},{"line_number":270,"context_line":"            context, locality, name)"},{"line_number":271,"context_line":"        api_strategy \u003d strategy.load_api_strategy(datastore_version.manager)"}],"source_content_type":"text/x-python","patch_set":3,"id":"3fce034c_9cf72ad4","line":268,"range":{"start_line":268,"start_character":30,"end_line":268,"end_character":36},"updated":"2019-06-10 10:54:28.000000000","message":"cluster_backup","commit_id":"17fca9ade860f12a1a0855b04bb224b6df4c8c76"},{"author":{"_account_id":28695,"name":"Bartosz Zurkowski","email":"b.zurkowski@samsung.com","username":"b.zurkowski"},"change_message_id":"aa3bed0132c04508126ad112426aa9173381c031","unresolved":false,"context_lines":[{"line_number":273,"context_line":"                                                 datastore_version, instances,"},{"line_number":274,"context_line":"                                                 extended_properties,"},{"line_number":275,"context_line":"                                                 locality, configuration,"},{"line_number":276,"context_line":"                                                 backup)"},{"line_number":277,"context_line":""},{"line_number":278,"context_line":"    def validate_cluster_available(self, valid_states\u003d[ClusterTasks.NONE]):"},{"line_number":279,"context_line":"        if self.db_info.task_status not in valid_states:"}],"source_content_type":"text/x-python","patch_set":3,"id":"3fce034c_3c0076ab","line":276,"range":{"start_line":276,"start_character":49,"end_line":276,"end_character":55},"updated":"2019-06-10 10:54:28.000000000","message":"cluster_backup","commit_id":"17fca9ade860f12a1a0855b04bb224b6df4c8c76"}],"trove/cluster/service.py":[{"author":{"_account_id":28695,"name":"Bartosz Zurkowski","email":"b.zurkowski@samsung.com","username":"b.zurkowski"},"change_message_id":"aa3bed0132c04508126ad112426aa9173381c031","unresolved":false,"context_lines":[{"line_number":207,"context_line":"                              \u0027region_name\u0027: node.get(\u0027region_name\u0027),"},{"line_number":208,"context_line":"                              \"modules\": modules})"},{"line_number":209,"context_line":""},{"line_number":210,"context_line":"        backup \u003d None"},{"line_number":211,"context_line":"        if \u0027restore_point\u0027 in body[\u0027cluster\u0027]:"},{"line_number":212,"context_line":"            backup_ref \u003d body[\u0027cluster\u0027][\u0027restore_point\u0027][\u0027backup_ref\u0027]"},{"line_number":213,"context_line":"            backup \u003d utils.get_id_from_href(backup_ref)"}],"source_content_type":"text/x-python","patch_set":3,"id":"3fce034c_fc2f4e3c","line":210,"range":{"start_line":210,"start_character":8,"end_line":210,"end_character":14},"updated":"2019-06-10 10:54:28.000000000","message":"cluster_backup","commit_id":"17fca9ade860f12a1a0855b04bb224b6df4c8c76"},{"author":{"_account_id":28695,"name":"Bartosz Zurkowski","email":"b.zurkowski@samsung.com","username":"b.zurkowski"},"change_message_id":"aa3bed0132c04508126ad112426aa9173381c031","unresolved":false,"context_lines":[{"line_number":210,"context_line":"        backup \u003d None"},{"line_number":211,"context_line":"        if \u0027restore_point\u0027 in body[\u0027cluster\u0027]:"},{"line_number":212,"context_line":"            backup_ref \u003d body[\u0027cluster\u0027][\u0027restore_point\u0027][\u0027backup_ref\u0027]"},{"line_number":213,"context_line":"            backup \u003d utils.get_id_from_href(backup_ref)"},{"line_number":214,"context_line":""},{"line_number":215,"context_line":"        locality \u003d body[\u0027cluster\u0027].get(\u0027locality\u0027)"},{"line_number":216,"context_line":"        if locality:"}],"source_content_type":"text/x-python","patch_set":3,"id":"3fce034c_1c357a8f","line":213,"range":{"start_line":213,"start_character":12,"end_line":213,"end_character":18},"updated":"2019-06-10 10:54:28.000000000","message":"cluster_backup","commit_id":"17fca9ade860f12a1a0855b04bb224b6df4c8c76"},{"author":{"_account_id":28695,"name":"Bartosz Zurkowski","email":"b.zurkowski@samsung.com","username":"b.zurkowski"},"change_message_id":"aa3bed0132c04508126ad112426aa9173381c031","unresolved":false,"context_lines":[{"line_number":231,"context_line":"            cluster \u003d models.Cluster.create(context, name, datastore,"},{"line_number":232,"context_line":"                                            datastore_version, instances,"},{"line_number":233,"context_line":"                                            extended_properties, locality,"},{"line_number":234,"context_line":"                                            configuration, backup)"},{"line_number":235,"context_line":"        cluster.locality \u003d locality"},{"line_number":236,"context_line":"        view \u003d views.load_view(cluster, req\u003dreq, load_servers\u003dFalse)"},{"line_number":237,"context_line":"        return wsgi.Result(view.data(), 200)"}],"source_content_type":"text/x-python","patch_set":3,"id":"3fce034c_dc2a922a","line":234,"range":{"start_line":234,"start_character":59,"end_line":234,"end_character":65},"updated":"2019-06-10 10:54:28.000000000","message":"cluster_backup","commit_id":"17fca9ade860f12a1a0855b04bb224b6df4c8c76"}],"trove/cluster_backup/models.py":[{"author":{"_account_id":28695,"name":"Bartosz Zurkowski","email":"b.zurkowski@samsung.com","username":"b.zurkowski"},"change_message_id":"3236cb958c9ff233ae69c5c27258722f0d4714e6","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Copyright 2017 Samsung Electronics"},{"line_number":2,"context_line":"# All Rights Reserved."},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"}],"source_content_type":"text/x-python","patch_set":1,"id":"3fce034c_a47ea168","line":1,"range":{"start_line":1,"start_character":12,"end_line":1,"end_character":16},"updated":"2019-04-17 14:01:06.000000000","message":"2019","commit_id":"47516fdf05b5b97f23ddec8bc4d8a7721c1d0141"},{"author":{"_account_id":28695,"name":"Bartosz Zurkowski","email":"b.zurkowski@samsung.com","username":"b.zurkowski"},"change_message_id":"3236cb958c9ff233ae69c5c27258722f0d4714e6","unresolved":false,"context_lines":[{"line_number":48,"context_line":"    @classmethod"},{"line_number":49,"context_line":"    def load(cls, context, backup_id):"},{"line_number":50,"context_line":"        try:"},{"line_number":51,"context_line":"            db_info \u003d DBClusterBackup.find_by(id\u003dbackup_id, deleted\u003dFalse)"},{"line_number":52,"context_line":"        except exception.ModelNotFoundError:"},{"line_number":53,"context_line":"            raise exception.ClusterBackupNotFound(backup_id\u003dbackup_id)"},{"line_number":54,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"3fce034c_6498b9bf","line":51,"range":{"start_line":51,"start_character":46,"end_line":51,"end_character":73},"updated":"2019-04-17 14:01:06.000000000","message":"Filter by tenant:\n\n tenant_id\u003dcontext.tenant","commit_id":"47516fdf05b5b97f23ddec8bc4d8a7721c1d0141"},{"author":{"_account_id":28695,"name":"Bartosz Zurkowski","email":"b.zurkowski@samsung.com","username":"b.zurkowski"},"change_message_id":"3236cb958c9ff233ae69c5c27258722f0d4714e6","unresolved":false,"context_lines":[{"line_number":79,"context_line":"        task_api.API(context).delete_cluster_backup(backup_id)"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"    def __init__(self, db_info):"},{"line_number":82,"context_line":"        self.db_info \u003d db_info"},{"line_number":83,"context_line":""},{"line_number":84,"context_line":"    @property"},{"line_number":85,"context_line":"    def instance_backups(self):"}],"source_content_type":"text/x-python","patch_set":1,"id":"3fce034c_04ed3524","line":82,"range":{"start_line":82,"start_character":13,"end_line":82,"end_character":20},"updated":"2019-04-17 14:01:06.000000000","message":"Should be private","commit_id":"47516fdf05b5b97f23ddec8bc4d8a7721c1d0141"},{"author":{"_account_id":28695,"name":"Bartosz Zurkowski","email":"b.zurkowski@samsung.com","username":"b.zurkowski"},"change_message_id":"3236cb958c9ff233ae69c5c27258722f0d4714e6","unresolved":false,"context_lines":[{"line_number":82,"context_line":"        self.db_info \u003d db_info"},{"line_number":83,"context_line":""},{"line_number":84,"context_line":"    @property"},{"line_number":85,"context_line":"    def instance_backups(self):"},{"line_number":86,"context_line":"        return backup_models.DBBackup.find_all("},{"line_number":87,"context_line":"            cluster_backup_id\u003dself.id, deleted\u003dFalse).all()"},{"line_number":88,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"3fce034c_c4f64dfa","line":85,"range":{"start_line":85,"start_character":8,"end_line":85,"end_character":24},"updated":"2019-04-17 14:01:06.000000000","message":"Consider rename: \"node_backups\"","commit_id":"47516fdf05b5b97f23ddec8bc4d8a7721c1d0141"},{"author":{"_account_id":28695,"name":"Bartosz Zurkowski","email":"b.zurkowski@samsung.com","username":"b.zurkowski"},"change_message_id":"aa3bed0132c04508126ad112426aa9173381c031","unresolved":false,"context_lines":[{"line_number":46,"context_line":"        return ClusterBackup(db_info)"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"    @classmethod"},{"line_number":49,"context_line":"    def load(cls, context, backup_id):"},{"line_number":50,"context_line":"        try:"},{"line_number":51,"context_line":"            db_info \u003d DBClusterBackup.find_by(tenant_id\u003dcontext.tenant,"},{"line_number":52,"context_line":"                id\u003dbackup_id, deleted\u003dFalse)"}],"source_content_type":"text/x-python","patch_set":3,"id":"3fce034c_5c16a2f3","line":49,"range":{"start_line":49,"start_character":27,"end_line":49,"end_character":36},"updated":"2019-06-10 10:54:28.000000000","message":"cluster_backup_id","commit_id":"17fca9ade860f12a1a0855b04bb224b6df4c8c76"},{"author":{"_account_id":28695,"name":"Bartosz Zurkowski","email":"b.zurkowski@samsung.com","username":"b.zurkowski"},"change_message_id":"aa3bed0132c04508126ad112426aa9173381c031","unresolved":false,"context_lines":[{"line_number":49,"context_line":"    def load(cls, context, backup_id):"},{"line_number":50,"context_line":"        try:"},{"line_number":51,"context_line":"            db_info \u003d DBClusterBackup.find_by(tenant_id\u003dcontext.tenant,"},{"line_number":52,"context_line":"                id\u003dbackup_id, deleted\u003dFalse)"},{"line_number":53,"context_line":"        except exception.ModelNotFoundError:"},{"line_number":54,"context_line":"            raise exception.ClusterBackupNotFound(backup_id\u003dbackup_id)"},{"line_number":55,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"3fce034c_fcd42e22","line":52,"range":{"start_line":52,"start_character":19,"end_line":52,"end_character":28},"updated":"2019-06-10 10:54:28.000000000","message":"cluster_backup_id","commit_id":"17fca9ade860f12a1a0855b04bb224b6df4c8c76"},{"author":{"_account_id":28695,"name":"Bartosz Zurkowski","email":"b.zurkowski@samsung.com","username":"b.zurkowski"},"change_message_id":"aa3bed0132c04508126ad112426aa9173381c031","unresolved":false,"context_lines":[{"line_number":69,"context_line":"        return data_view.collection, next_marker"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"    @classmethod"},{"line_number":72,"context_line":"    def delete(cls, context, backup_id):"},{"line_number":73,"context_line":"        backup \u003d ClusterBackup.load(context, backup_id)"},{"line_number":74,"context_line":"        if backup.is_running:"},{"line_number":75,"context_line":"            raise exception.ClusterBackupInvalidState(status\u003dbackup.state)"}],"source_content_type":"text/x-python","patch_set":3,"id":"3fce034c_1cda5a4b","line":72,"range":{"start_line":72,"start_character":29,"end_line":72,"end_character":38},"updated":"2019-06-10 10:54:28.000000000","message":"cluster_backup_id","commit_id":"17fca9ade860f12a1a0855b04bb224b6df4c8c76"},{"author":{"_account_id":28695,"name":"Bartosz Zurkowski","email":"b.zurkowski@samsung.com","username":"b.zurkowski"},"change_message_id":"aa3bed0132c04508126ad112426aa9173381c031","unresolved":false,"context_lines":[{"line_number":70,"context_line":""},{"line_number":71,"context_line":"    @classmethod"},{"line_number":72,"context_line":"    def delete(cls, context, backup_id):"},{"line_number":73,"context_line":"        backup \u003d ClusterBackup.load(context, backup_id)"},{"line_number":74,"context_line":"        if backup.is_running:"},{"line_number":75,"context_line":"            raise exception.ClusterBackupInvalidState(status\u003dbackup.state)"},{"line_number":76,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"3fce034c_dcdff237","line":73,"range":{"start_line":73,"start_character":8,"end_line":73,"end_character":14},"updated":"2019-06-10 10:54:28.000000000","message":"cluster_backup","commit_id":"17fca9ade860f12a1a0855b04bb224b6df4c8c76"},{"author":{"_account_id":28695,"name":"Bartosz Zurkowski","email":"b.zurkowski@samsung.com","username":"b.zurkowski"},"change_message_id":"aa3bed0132c04508126ad112426aa9173381c031","unresolved":false,"context_lines":[{"line_number":70,"context_line":""},{"line_number":71,"context_line":"    @classmethod"},{"line_number":72,"context_line":"    def delete(cls, context, backup_id):"},{"line_number":73,"context_line":"        backup \u003d ClusterBackup.load(context, backup_id)"},{"line_number":74,"context_line":"        if backup.is_running:"},{"line_number":75,"context_line":"            raise exception.ClusterBackupInvalidState(status\u003dbackup.state)"},{"line_number":76,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"3fce034c_bcda2648","line":73,"range":{"start_line":73,"start_character":45,"end_line":73,"end_character":54},"updated":"2019-06-10 10:54:28.000000000","message":"cluster_backup_id","commit_id":"17fca9ade860f12a1a0855b04bb224b6df4c8c76"},{"author":{"_account_id":28695,"name":"Bartosz Zurkowski","email":"b.zurkowski@samsung.com","username":"b.zurkowski"},"change_message_id":"aa3bed0132c04508126ad112426aa9173381c031","unresolved":false,"context_lines":[{"line_number":71,"context_line":"    @classmethod"},{"line_number":72,"context_line":"    def delete(cls, context, backup_id):"},{"line_number":73,"context_line":"        backup \u003d ClusterBackup.load(context, backup_id)"},{"line_number":74,"context_line":"        if backup.is_running:"},{"line_number":75,"context_line":"            raise exception.ClusterBackupInvalidState(status\u003dbackup.state)"},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"        for instance_backup in backup.instance_backups:"}],"source_content_type":"text/x-python","patch_set":3,"id":"3fce034c_7ce83ee1","line":74,"range":{"start_line":74,"start_character":11,"end_line":74,"end_character":17},"updated":"2019-06-10 10:54:28.000000000","message":"cluster_backup","commit_id":"17fca9ade860f12a1a0855b04bb224b6df4c8c76"}],"trove/cluster_backup/service.py":[{"author":{"_account_id":28695,"name":"Bartosz Zurkowski","email":"b.zurkowski@samsung.com","username":"b.zurkowski"},"change_message_id":"3236cb958c9ff233ae69c5c27258722f0d4714e6","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Copyright 2017 Samsung Electronics"},{"line_number":2,"context_line":"# All Rights Reserved."},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"}],"source_content_type":"text/x-python","patch_set":1,"id":"3fce034c_043bf59b","line":1,"range":{"start_line":1,"start_character":12,"end_line":1,"end_character":16},"updated":"2019-04-17 14:01:06.000000000","message":"2019","commit_id":"47516fdf05b5b97f23ddec8bc4d8a7721c1d0141"},{"author":{"_account_id":28695,"name":"Bartosz Zurkowski","email":"b.zurkowski@samsung.com","username":"b.zurkowski"},"change_message_id":"3236cb958c9ff233ae69c5c27258722f0d4714e6","unresolved":false,"context_lines":[{"line_number":30,"context_line":""},{"line_number":31,"context_line":"class ClusterBackupController(wsgi.Controller):"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"    \"\"\"Controller for cluster backups functionality.\"\"\""},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"    schemas \u003d apischema.cluster_backup"},{"line_number":36,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"3fce034c_44bb3d0d","line":33,"range":{"start_line":33,"start_character":22,"end_line":33,"end_character":37},"updated":"2019-04-17 14:01:06.000000000","message":"Titelize: \"Cluster Backups\"","commit_id":"47516fdf05b5b97f23ddec8bc4d8a7721c1d0141"}],"trove/cluster_backup/views.py":[{"author":{"_account_id":28695,"name":"Bartosz Zurkowski","email":"b.zurkowski@samsung.com","username":"b.zurkowski"},"change_message_id":"3236cb958c9ff233ae69c5c27258722f0d4714e6","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Copyright 2017 Samsung Electronics"},{"line_number":2,"context_line":"# All Rights Reserved."},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"}],"source_content_type":"text/x-python","patch_set":1,"id":"3fce034c_a441c10d","line":1,"range":{"start_line":1,"start_character":12,"end_line":1,"end_character":16},"updated":"2019-04-17 14:01:06.000000000","message":"2019","commit_id":"47516fdf05b5b97f23ddec8bc4d8a7721c1d0141"}],"trove/common/apischema.py":[{"author":{"_account_id":28695,"name":"Bartosz Zurkowski","email":"b.zurkowski@samsung.com","username":"b.zurkowski"},"change_message_id":"3236cb958c9ff233ae69c5c27258722f0d4714e6","unresolved":false,"context_lines":[{"line_number":264,"context_line":"                        }"},{"line_number":265,"context_line":"                    },"},{"line_number":266,"context_line":"                    \"locality\": non_empty_string,"},{"line_number":267,"context_line":"                    \"restore_point\": {"},{"line_number":268,"context_line":"                        \"type\": \"object\","},{"line_number":269,"context_line":"                        \"required\": [\"backup_ref\"],"},{"line_number":270,"context_line":"                        \"additionalProperties\": True,"}],"source_content_type":"text/x-python","patch_set":1,"id":"3fce034c_2455d1c6","line":267,"updated":"2019-04-17 14:01:06.000000000","message":"Change order","commit_id":"47516fdf05b5b97f23ddec8bc4d8a7721c1d0141"},{"author":{"_account_id":28695,"name":"Bartosz Zurkowski","email":"b.zurkowski@samsung.com","username":"b.zurkowski"},"change_message_id":"3236cb958c9ff233ae69c5c27258722f0d4714e6","unresolved":false,"context_lines":[{"line_number":580,"context_line":"    }"},{"line_number":581,"context_line":"}"},{"line_number":582,"context_line":""},{"line_number":583,"context_line":"cluster_backup \u003d {"},{"line_number":584,"context_line":"    \"create\": {"},{"line_number":585,"context_line":"        \"name\": \"cluster_backup:create\","},{"line_number":586,"context_line":"        \"type\": \"object\","}],"source_content_type":"text/x-python","patch_set":1,"id":"3fce034c_44501dd5","line":583,"updated":"2019-04-17 14:01:06.000000000","message":"Move near \"backup\" object","commit_id":"47516fdf05b5b97f23ddec8bc4d8a7721c1d0141"}],"trove/common/policies/cluster_backups.py":[{"author":{"_account_id":28695,"name":"Bartosz Zurkowski","email":"b.zurkowski@samsung.com","username":"b.zurkowski"},"change_message_id":"3236cb958c9ff233ae69c5c27258722f0d4714e6","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Copyright 2017 Samsung Electronics"},{"line_number":2,"context_line":"# All Rights Reserved."},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"}],"source_content_type":"text/x-python","patch_set":1,"id":"3fce034c_64743969","line":1,"range":{"start_line":1,"start_character":12,"end_line":1,"end_character":16},"updated":"2019-04-17 14:01:06.000000000","message":"2019","commit_id":"47516fdf05b5b97f23ddec8bc4d8a7721c1d0141"}],"trove/common/strategies/cluster/experimental/galera_common/api.py":[{"author":{"_account_id":28695,"name":"Bartosz Zurkowski","email":"b.zurkowski@samsung.com","username":"b.zurkowski"},"change_message_id":"3236cb958c9ff233ae69c5c27258722f0d4714e6","unresolved":false,"context_lines":[{"line_number":78,"context_line":"    @staticmethod"},{"line_number":79,"context_line":"    def _create_instances(context, db_info, datastore, datastore_version,"},{"line_number":80,"context_line":"                          instances, extended_properties, locality,"},{"line_number":81,"context_line":"                          configuration_id, backup_id\u003dNone):"},{"line_number":82,"context_line":"        member_config \u003d {\"id\": db_info.id,"},{"line_number":83,"context_line":"                         \"instance_type\": \"member\"}"},{"line_number":84,"context_line":"        name_index \u003d int(time.time())"}],"source_content_type":"text/x-python","patch_set":1,"id":"3fce034c_846fe590","line":81,"range":{"start_line":81,"start_character":44,"end_line":81,"end_character":53},"updated":"2019-04-17 14:01:06.000000000","message":"Consider rename: \"cluster_backup_id\"","commit_id":"47516fdf05b5b97f23ddec8bc4d8a7721c1d0141"}]}
