)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":10215,"name":"Peter Stachowski","email":"peter@tesora.com","username":"peterstac"},"change_message_id":"1ef3921142c1342394716efcf06a15cbadf682ec","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Adjusted audit logging for trove.instance module"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"trove.instance module is logging some verbose debug data at the info"},{"line_number":10,"context_line":"level, and some info message at the debug level. Some log entries are"},{"line_number":11,"context_line":"also lacking context because of missing identifiers such as InstanceID"},{"line_number":12,"context_line":"and TenantID."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"baada198_6210eea8","line":9,"updated":"2014-07-10 16:19:32.000000000","message":"Maybe add \u0027The \u0027 to the beginning","commit_id":"b655cb07444536cc5a37410dd08bb9127b72536a"},{"author":{"_account_id":10266,"name":"Simon Chang","email":"schang@tesora.com","username":"changsimon"},"change_message_id":"813765d4732c4a70d5653553572b7b5d388f14a6","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Adjusted audit logging for trove.instance module"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"trove.instance module is logging some verbose debug data at the info"},{"line_number":10,"context_line":"level, and some info message at the debug level. Some log entries are"},{"line_number":11,"context_line":"also lacking context because of missing identifiers such as InstanceID"},{"line_number":12,"context_line":"and TenantID."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"baada198_869eef52","line":9,"in_reply_to":"baada198_6210eea8","updated":"2014-07-10 18:56:39.000000000","message":"Done","commit_id":"b655cb07444536cc5a37410dd08bb9127b72536a"},{"author":{"_account_id":10215,"name":"Peter Stachowski","email":"peter@tesora.com","username":"peterstac"},"change_message_id":"1ef3921142c1342394716efcf06a15cbadf682ec","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Adjusted audit logging for trove.instance module"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"trove.instance module is logging some verbose debug data at the info"},{"line_number":10,"context_line":"level, and some info message at the debug level. Some log entries are"},{"line_number":11,"context_line":"also lacking context because of missing identifiers such as InstanceID"},{"line_number":12,"context_line":"and TenantID."},{"line_number":13,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"baada198_e21b1ec8","line":10,"updated":"2014-07-10 16:19:32.000000000","message":"should be *messages*","commit_id":"b655cb07444536cc5a37410dd08bb9127b72536a"},{"author":{"_account_id":10266,"name":"Simon Chang","email":"schang@tesora.com","username":"changsimon"},"change_message_id":"813765d4732c4a70d5653553572b7b5d388f14a6","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Adjusted audit logging for trove.instance module"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"trove.instance module is logging some verbose debug data at the info"},{"line_number":10,"context_line":"level, and some info message at the debug level. Some log entries are"},{"line_number":11,"context_line":"also lacking context because of missing identifiers such as InstanceID"},{"line_number":12,"context_line":"and TenantID."},{"line_number":13,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"baada198_a6adb38a","line":10,"in_reply_to":"baada198_e21b1ec8","updated":"2014-07-10 18:56:39.000000000","message":"Done","commit_id":"b655cb07444536cc5a37410dd08bb9127b72536a"}],"trove/instance/models.py":[{"author":{"_account_id":10215,"name":"Peter Stachowski","email":"peter@tesora.com","username":"peterstac"},"change_message_id":"3df60d390b558236a4d1c55da3260a9e0121328d","unresolved":false,"context_lines":[{"line_number":426,"context_line":"                                                id)"},{"line_number":427,"context_line":""},{"line_number":428,"context_line":"    service_status \u003d InstanceServiceStatus.find_by(instance_id\u003did)"},{"line_number":429,"context_line":"    LOG.debug(_(\"Instance %(instance_id)s service status is \""},{"line_number":430,"context_line":"                \"%(service_status)s\")"},{"line_number":431,"context_line":"              % {\u0027instance_id\u0027: id, \u0027service_status\u0027: service_status.status})"},{"line_number":432,"context_line":"    return cls(context, db_info, server, service_status)"}],"source_content_type":"text/x-python","patch_set":1,"id":"baada198_902afa7c","line":429,"updated":"2014-07-08 17:48:32.000000000","message":"We don\u0027t need to internationalize debug messages","commit_id":"56cffa1be9586c018908f3c890ee4be37d78d675"},{"author":{"_account_id":10215,"name":"Peter Stachowski","email":"peter@tesora.com","username":"peterstac"},"change_message_id":"3df60d390b558236a4d1c55da3260a9e0121328d","unresolved":false,"context_lines":[{"line_number":436,"context_line":"    db_info \u003d get_db_info(context, id)"},{"line_number":437,"context_line":"    load_simple_instance_server_status(context, db_info)"},{"line_number":438,"context_line":"    datastore_status \u003d InstanceServiceStatus.find_by(instance_id\u003did)"},{"line_number":439,"context_line":"    LOG.debug(_(\"Instance %(instance_id)s status is %(ds_status)s\") %"},{"line_number":440,"context_line":"              {\u0027instance_id\u0027: id, \u0027ds_status\u0027: datastore_status.status})"},{"line_number":441,"context_line":"    instance \u003d cls(context, db_info, datastore_status)"},{"line_number":442,"context_line":"    load_guest_info(instance, context, id)"}],"source_content_type":"text/x-python","patch_set":1,"id":"baada198_f03896d6","line":439,"updated":"2014-07-08 17:48:32.000000000","message":"ditto (multiple other places as well)","commit_id":"56cffa1be9586c018908f3c890ee4be37d78d675"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"0ac4fa8d5c12185b5673eff0fbbdc71abef2b445","unresolved":false,"context_lines":[{"line_number":400,"context_line":"    try:"},{"line_number":401,"context_line":"        return load_instance(BuiltInstance, context, id, needs_server\u003dTrue)"},{"line_number":402,"context_line":"    except exception.UnprocessableEntity:"},{"line_number":403,"context_line":"        LOG.warn(_(\"Could not load instance %s.\") % id)"},{"line_number":404,"context_line":"        return load_instance(FreshInstance, context, id, needs_server\u003dFalse)"},{"line_number":405,"context_line":""},{"line_number":406,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"baada198_00111fac","line":403,"updated":"2014-07-09 13:38:05.000000000","message":"looks like we should log exception message, since missing backend record for corresponding instance is a huge error.","commit_id":"0fa5e73f5086307259ad8c56b539f2e98bb3d58e"},{"author":{"_account_id":10266,"name":"Simon Chang","email":"schang@tesora.com","username":"changsimon"},"change_message_id":"4642385a8d97b16e302709db6e6e70e641d84b3b","unresolved":false,"context_lines":[{"line_number":400,"context_line":"    try:"},{"line_number":401,"context_line":"        return load_instance(BuiltInstance, context, id, needs_server\u003dTrue)"},{"line_number":402,"context_line":"    except exception.UnprocessableEntity:"},{"line_number":403,"context_line":"        LOG.warn(_(\"Could not load instance %s.\") % id)"},{"line_number":404,"context_line":"        return load_instance(FreshInstance, context, id, needs_server\u003dFalse)"},{"line_number":405,"context_line":""},{"line_number":406,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"baada198_8350cf5f","line":403,"in_reply_to":"baada198_00111fac","updated":"2014-07-09 18:26:06.000000000","message":"I actually don\u0027t think this warning is needed. exception.UnprocessableEntity is raised from load_instance, and the same error is already being logged there.","commit_id":"0fa5e73f5086307259ad8c56b539f2e98bb3d58e"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"0ac4fa8d5c12185b5673eff0fbbdc71abef2b445","unresolved":false,"context_lines":[{"line_number":972,"context_line":"                    LOG.error(_(\"Server status could not be read for \""},{"line_number":973,"context_line":"                                \"instance id(%s)\") % db.id)"},{"line_number":974,"context_line":"                    continue"},{"line_number":975,"context_line":"                LOG.debug(\"Server api_status(%s)\" %"},{"line_number":976,"context_line":"                          datastore_status.status.api_status)"},{"line_number":977,"context_line":"            except exception.ModelNotFoundError:"},{"line_number":978,"context_line":"                LOG.error(_(\"Server status could not be read for \""}],"source_content_type":"text/x-python","patch_set":2,"id":"baada198_e0b50b7f","line":975,"updated":"2014-07-09 13:38:05.000000000","message":"why it was changed from info to debug?","commit_id":"0fa5e73f5086307259ad8c56b539f2e98bb3d58e"},{"author":{"_account_id":10266,"name":"Simon Chang","email":"schang@tesora.com","username":"changsimon"},"change_message_id":"86ff80942f052d04bb76f3f97fa153f83501d9b1","unresolved":false,"context_lines":[{"line_number":972,"context_line":"                    LOG.error(_(\"Server status could not be read for \""},{"line_number":973,"context_line":"                                \"instance id(%s)\") % db.id)"},{"line_number":974,"context_line":"                    continue"},{"line_number":975,"context_line":"                LOG.debug(\"Server api_status(%s)\" %"},{"line_number":976,"context_line":"                          datastore_status.status.api_status)"},{"line_number":977,"context_line":"            except exception.ModelNotFoundError:"},{"line_number":978,"context_line":"                LOG.error(_(\"Server status could not be read for \""}],"source_content_type":"text/x-python","patch_set":2,"id":"baada198_4009502b","line":975,"in_reply_to":"baada198_e0b50b7f","updated":"2014-07-09 16:19:17.000000000","message":"This only print out the variable value, appears to be a debug trace message, on top of it, the message resides in an internal \"_\" method, therefore the change from info to debug.","commit_id":"0fa5e73f5086307259ad8c56b539f2e98bb3d58e"},{"author":{"_account_id":10215,"name":"Peter Stachowski","email":"peter@tesora.com","username":"peterstac"},"change_message_id":"1ef3921142c1342394716efcf06a15cbadf682ec","unresolved":false,"context_lines":[{"line_number":434,"context_line":"    db_info \u003d get_db_info(context, id)"},{"line_number":435,"context_line":"    load_simple_instance_server_status(context, db_info)"},{"line_number":436,"context_line":"    datastore_status \u003d InstanceServiceStatus.find_by(instance_id\u003did)"},{"line_number":437,"context_line":"    LOG.debug(\"Instance %(instance_id)s status is %(ds_status)s\" %"},{"line_number":438,"context_line":"              {\u0027instance_id\u0027: id, \u0027ds_status\u0027: datastore_status.status})"},{"line_number":439,"context_line":"    instance \u003d cls(context, db_info, datastore_status)"},{"line_number":440,"context_line":"    load_guest_info(instance, context, id)"}],"source_content_type":"text/x-python","patch_set":3,"id":"baada198_223516f7","line":437,"updated":"2014-07-10 16:19:32.000000000","message":"This status is the same as the one above, but the message is different (as is the variable name).  Maybe they should both be consistent (the variable and the message)?","commit_id":"b655cb07444536cc5a37410dd08bb9127b72536a"},{"author":{"_account_id":10266,"name":"Simon Chang","email":"schang@tesora.com","username":"changsimon"},"change_message_id":"813765d4732c4a70d5653553572b7b5d388f14a6","unresolved":false,"context_lines":[{"line_number":434,"context_line":"    db_info \u003d get_db_info(context, id)"},{"line_number":435,"context_line":"    load_simple_instance_server_status(context, db_info)"},{"line_number":436,"context_line":"    datastore_status \u003d InstanceServiceStatus.find_by(instance_id\u003did)"},{"line_number":437,"context_line":"    LOG.debug(\"Instance %(instance_id)s status is %(ds_status)s\" %"},{"line_number":438,"context_line":"              {\u0027instance_id\u0027: id, \u0027ds_status\u0027: datastore_status.status})"},{"line_number":439,"context_line":"    instance \u003d cls(context, db_info, datastore_status)"},{"line_number":440,"context_line":"    load_guest_info(instance, context, id)"}],"source_content_type":"text/x-python","patch_set":3,"id":"baada198_8677cf3a","line":437,"in_reply_to":"baada198_223516f7","updated":"2014-07-10 18:56:39.000000000","message":"Done","commit_id":"b655cb07444536cc5a37410dd08bb9127b72536a"},{"author":{"_account_id":10215,"name":"Peter Stachowski","email":"peter@tesora.com","username":"peterstac"},"change_message_id":"1ef3921142c1342394716efcf06a15cbadf682ec","unresolved":false,"context_lines":[{"line_number":705,"context_line":""},{"line_number":706,"context_line":"    def get_default_configuration_template(self):"},{"line_number":707,"context_line":"        flavor \u003d self.get_flavor()"},{"line_number":708,"context_line":"        LOG.debug(\"Default config flavor is %s\" % flavor)"},{"line_number":709,"context_line":"        config \u003d template.SingleInstanceConfigTemplate("},{"line_number":710,"context_line":"            self.ds_version, flavor, id)"},{"line_number":711,"context_line":"        return config.render_dict()"}],"source_content_type":"text/x-python","patch_set":3,"id":"baada198_e51b28c8","line":708,"updated":"2014-07-10 16:19:32.000000000","message":"Shouldn\u0027t this be \"Instance flavor is\" or \"Getting default config template for ds_version blah and flavor blah\" ?","commit_id":"b655cb07444536cc5a37410dd08bb9127b72536a"},{"author":{"_account_id":10266,"name":"Simon Chang","email":"schang@tesora.com","username":"changsimon"},"change_message_id":"813765d4732c4a70d5653553572b7b5d388f14a6","unresolved":false,"context_lines":[{"line_number":705,"context_line":""},{"line_number":706,"context_line":"    def get_default_configuration_template(self):"},{"line_number":707,"context_line":"        flavor \u003d self.get_flavor()"},{"line_number":708,"context_line":"        LOG.debug(\"Default config flavor is %s\" % flavor)"},{"line_number":709,"context_line":"        config \u003d template.SingleInstanceConfigTemplate("},{"line_number":710,"context_line":"            self.ds_version, flavor, id)"},{"line_number":711,"context_line":"        return config.render_dict()"}],"source_content_type":"text/x-python","patch_set":3,"id":"baada198_062adf7d","line":708,"in_reply_to":"baada198_e51b28c8","updated":"2014-07-10 18:56:39.000000000","message":"Done","commit_id":"b655cb07444536cc5a37410dd08bb9127b72536a"},{"author":{"_account_id":9664,"name":"amrith","email":"amrith.kumar@gmail.com","username":"amrith"},"change_message_id":"f7cfd1b4e4b94710391b05fa47d6718f151f7480","unresolved":false,"context_lines":[{"line_number":595,"context_line":"            root_on_create \u003d CONF.get(datastore_manager).root_on_create"},{"line_number":596,"context_line":"            return root_on_create"},{"line_number":597,"context_line":"        except NoSuchOptError:"},{"line_number":598,"context_line":"            LOG.debug(\"root_on_create not configured for %s,\""},{"line_number":599,"context_line":"                      \" hence defaulting the value to False\""},{"line_number":600,"context_line":"                      % datastore_manager)"},{"line_number":601,"context_line":"            return False"}],"source_content_type":"text/x-python","patch_set":5,"id":"baada198_6f8d127c","side":"PARENT","line":598,"updated":"2014-07-11 11:24:55.000000000","message":"I\u0027d keep the comma ;) Ask Doug for a copy of \"Eats, Shoots and Leaves\".","commit_id":"7247b1056c0d9d1af65091113f52c6f9488317ba"},{"author":{"_account_id":5293,"name":"Nikhil","email":"SlickNik@gmail.com","username":"slicknik"},"change_message_id":"7b9a3a5c806d7ccc5948200a36a3924f7425929b","unresolved":false,"context_lines":[{"line_number":504,"context_line":"            LOG.debug(\"  ... deleting compute id \u003d %s\" %"},{"line_number":505,"context_line":"                      self.db_info.compute_instance_id)"},{"line_number":506,"context_line":"            LOG.debug(\" ... setting status to DELETING for compute id %s\" %"},{"line_number":507,"context_line":"                      self.db_info.compute_instance_id)"},{"line_number":508,"context_line":"            self.update_db(task_status\u003dInstanceTasks.DELETING,"},{"line_number":509,"context_line":"                           configuration_id\u003dNone)"},{"line_number":510,"context_line":"            task_api.API(self.context).delete_instance(self.id)"}],"source_content_type":"text/x-python","patch_set":5,"id":"baada198_b71ea26e","line":507,"updated":"2014-07-11 10:16:08.000000000","message":"Seems like both lines are logging the same info, so one can be removed.","commit_id":"b510a90edf739febb747a3749357341a22ccb860"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"29e0c7223e1ec02d12307cfa7d35b02f4b004a9d","unresolved":false,"context_lines":[{"line_number":504,"context_line":"            LOG.debug(\"  ... deleting compute id \u003d %s\" %"},{"line_number":505,"context_line":"                      self.db_info.compute_instance_id)"},{"line_number":506,"context_line":"            LOG.debug(\" ... setting status to DELETING for compute id %s\" %"},{"line_number":507,"context_line":"                      self.db_info.compute_instance_id)"},{"line_number":508,"context_line":"            self.update_db(task_status\u003dInstanceTasks.DELETING,"},{"line_number":509,"context_line":"                           configuration_id\u003dNone)"},{"line_number":510,"context_line":"            task_api.API(self.context).delete_instance(self.id)"}],"source_content_type":"text/x-python","patch_set":5,"id":"baada198_5fbe11af","line":507,"in_reply_to":"baada198_b71ea26e","updated":"2014-07-13 21:15:24.000000000","message":"+1","commit_id":"b510a90edf739febb747a3749357341a22ccb860"},{"author":{"_account_id":9664,"name":"amrith","email":"amrith.kumar@gmail.com","username":"amrith"},"change_message_id":"f7cfd1b4e4b94710391b05fa47d6718f151f7480","unresolved":false,"context_lines":[{"line_number":776,"context_line":""},{"line_number":777,"context_line":"    def restart(self):"},{"line_number":778,"context_line":"        self.validate_can_perform_action()"},{"line_number":779,"context_line":"        LOG.info(_(\"Restarting MySQL on instance %s...\") % self.id)"},{"line_number":780,"context_line":"        # Set our local status since Nova might not change it quick enough."},{"line_number":781,"context_line":"        #TODO(tim.simpson): Possible bad stuff can happen if this service"},{"line_number":782,"context_line":"        #                   shuts down before it can set status to NONE."}],"source_content_type":"text/x-python","patch_set":5,"id":"baada198_0fcd76b7","line":779,"updated":"2014-07-11 11:24:55.000000000","message":"Do we know that it must be MySQL?","commit_id":"b510a90edf739febb747a3749357341a22ccb860"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"29e0c7223e1ec02d12307cfa7d35b02f4b004a9d","unresolved":false,"context_lines":[{"line_number":776,"context_line":""},{"line_number":777,"context_line":"    def restart(self):"},{"line_number":778,"context_line":"        self.validate_can_perform_action()"},{"line_number":779,"context_line":"        LOG.info(_(\"Restarting MySQL on instance %s...\") % self.id)"},{"line_number":780,"context_line":"        # Set our local status since Nova might not change it quick enough."},{"line_number":781,"context_line":"        #TODO(tim.simpson): Possible bad stuff can happen if this service"},{"line_number":782,"context_line":"        #                   shuts down before it can set status to NONE."}],"source_content_type":"text/x-python","patch_set":5,"id":"baada198_7fde7512","line":779,"in_reply_to":"baada198_0fcd76b7","updated":"2014-07-13 21:15:24.000000000","message":"should be \"restarting datastore on instance ...\"","commit_id":"b510a90edf739febb747a3749357341a22ccb860"},{"author":{"_account_id":9664,"name":"amrith","email":"amrith.kumar@gmail.com","username":"amrith"},"change_message_id":"f7cfd1b4e4b94710391b05fa47d6718f151f7480","unresolved":false,"context_lines":[{"line_number":877,"context_line":"        overrides \u003d Configuration.get_configuration_overrides("},{"line_number":878,"context_line":"            self.context, configuration.id)"},{"line_number":879,"context_line":""},{"line_number":880,"context_line":"        LOG.debug(\"config overrides is %s\" % overrides)"},{"line_number":881,"context_line":""},{"line_number":882,"context_line":"        self.update_overrides(overrides)"},{"line_number":883,"context_line":"        self.update_db(configuration_id\u003dconfiguration.id)"}],"source_content_type":"text/x-python","patch_set":5,"id":"baada198_ef3e828a","line":880,"updated":"2014-07-11 11:24:55.000000000","message":"Capitalize \u0027Config\u0027?","commit_id":"b510a90edf739febb747a3749357341a22ccb860"},{"author":{"_account_id":8214,"name":"Auston McReynolds","email":"amcreynolds@ebaysf.com","username":"amcreynolds"},"change_message_id":"e601b93fa78e608a3bf5edb90c37e9da383fb020","unresolved":false,"context_lines":[{"line_number":566,"context_line":"        return self._volume_client"},{"line_number":567,"context_line":""},{"line_number":568,"context_line":"    def reset_task_status(self):"},{"line_number":569,"context_line":"        LOG.debug(\"Setting task status to NONE on instance %s...\" % self.id)"},{"line_number":570,"context_line":"        self.update_db(task_status\u003dInstanceTasks.NONE)"},{"line_number":571,"context_line":""},{"line_number":572,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"baada198_5665afad","line":569,"updated":"2014-07-29 17:47:15.000000000","message":"disagree on changing this to debug as the resetting of a task is a fairly important event.","commit_id":"d6e8c87905250aaac1ce735e5eb2e8438da1da79"},{"author":{"_account_id":5390,"name":"Steve Leon","username":"steve-leon","inactive":true},"change_message_id":"86b671c12807a2d8de61595cc2c330b44b9bef80","unresolved":false,"context_lines":[{"line_number":521,"context_line":"    def delete_async(self):"},{"line_number":522,"context_line":"        deleted_at \u003d datetime.utcnow()"},{"line_number":523,"context_line":"        self._delete_resources(deleted_at)"},{"line_number":524,"context_line":"        LOG.debug(\"Setting instance %s to deleted...\" % self.id)"},{"line_number":525,"context_line":"        # Delete guest queue."},{"line_number":526,"context_line":"        try:"},{"line_number":527,"context_line":"            guest \u003d self.get_guest()"}],"source_content_type":"text/x-python","patch_set":7,"id":"baada198_85a2fe94","line":524,"updated":"2014-08-11 18:19:29.000000000","message":"Should this be read \"to be deleted\" or do you meant to say to status \"DELETED\". If it is the former, then it is incorrect grammar. If it is the latter, it should be \"Setting instance %s to status DELETED...\" to be less confusing.","commit_id":"eb15f3bc001a420531a1d1423ddfa617423e7f58"},{"author":{"_account_id":5390,"name":"Steve Leon","username":"steve-leon","inactive":true},"change_message_id":"86b671c12807a2d8de61595cc2c330b44b9bef80","unresolved":false,"context_lines":[{"line_number":704,"context_line":"    def get_default_configuration_template(self):"},{"line_number":705,"context_line":"        flavor \u003d self.get_flavor()"},{"line_number":706,"context_line":"        LOG.debug(\"Getting default config template for datastore version\""},{"line_number":707,"context_line":"                  \"%(ds_version)s and flavor %(flavor)s\" %"},{"line_number":708,"context_line":"                  {\u0027ds_version\u0027: self.ds_version, \u0027flavor\u0027: flavor})"},{"line_number":709,"context_line":"        config \u003d template.SingleInstanceConfigTemplate("},{"line_number":710,"context_line":"            self.ds_version, flavor, id)"}],"source_content_type":"text/x-python","patch_set":7,"id":"baada198_a502a26f","line":707,"updated":"2014-08-11 18:19:29.000000000","message":"you need an space here","commit_id":"eb15f3bc001a420531a1d1423ddfa617423e7f58"},{"author":{"_account_id":9664,"name":"amrith","email":"amrith.kumar@gmail.com","username":"amrith"},"change_message_id":"973aacd54d50849521f984ef628dd0181c5020c3","unresolved":false,"context_lines":[{"line_number":704,"context_line":"    def get_default_configuration_template(self):"},{"line_number":705,"context_line":"        flavor \u003d self.get_flavor()"},{"line_number":706,"context_line":"        LOG.debug(\"Getting default config template for datastore version\""},{"line_number":707,"context_line":"                  \"%(ds_version)s and flavor %(flavor)s\" %"},{"line_number":708,"context_line":"                  {\u0027ds_version\u0027: self.ds_version, \u0027flavor\u0027: flavor})"},{"line_number":709,"context_line":"        config \u003d template.SingleInstanceConfigTemplate("},{"line_number":710,"context_line":"            self.ds_version, flavor, id)"}],"source_content_type":"text/x-python","patch_set":7,"id":"baada198_3ddbfe7d","line":707,"in_reply_to":"baada198_a502a26f","updated":"2014-08-12 00:27:29.000000000","message":"Good catch!","commit_id":"eb15f3bc001a420531a1d1423ddfa617423e7f58"},{"author":{"_account_id":10215,"name":"Peter Stachowski","email":"peter@tesora.com","username":"peterstac"},"change_message_id":"e704a862b4ebb77b7d8bda63120b999f4c121b6d","unresolved":false,"context_lines":[{"line_number":411,"context_line":"    try:"},{"line_number":412,"context_line":"        return load_instance(BuiltInstance, context, id, needs_server\u003dTrue)"},{"line_number":413,"context_line":"    except exception.UnprocessableEntity:"},{"line_number":414,"context_line":"        LOG.warn(\"Could not load instance %s.\" % id)"},{"line_number":415,"context_line":"        return load_instance(FreshInstance, context, id, needs_server\u003dFalse)"},{"line_number":416,"context_line":""},{"line_number":417,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"7ac7a964_c904c180","line":414,"updated":"2014-08-14 15:06:14.000000000","message":"I know this was probably from a merge, but since you\u0027re fixing the logging messages you should probably fix this too.  Everything INFO and above should be internationalized.\n\n  LOG.warn(_(\"Could not load instance %s.\") % id)","commit_id":"be3fd140948da90239ebe8a8376fe70c847cc8a3"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"3b2eb56d99074e3bc27e0b876c0dff4d5c570c62","unresolved":false,"context_lines":[{"line_number":446,"context_line":"    db_info \u003d get_db_info(context, id)"},{"line_number":447,"context_line":"    load_simple_instance_server_status(context, db_info)"},{"line_number":448,"context_line":"    service_status \u003d InstanceServiceStatus.find_by(instance_id\u003did)"},{"line_number":449,"context_line":"    LOG.debug(\"Instance %(instance_id)s service status is %(service_status)s.\""},{"line_number":450,"context_line":"              % {\u0027instance_id\u0027: id, \u0027service_status\u0027: service_status.status})"},{"line_number":451,"context_line":"    instance \u003d cls(context, db_info, service_status)"},{"line_number":452,"context_line":"    load_guest_info(instance, context, id)"}],"source_content_type":"text/x-python","patch_set":10,"id":"1abeadc6_59826301","line":449,"updated":"2014-08-17 08:32:20.000000000","message":"this can be simplified, no need to use key-based rendering, just use comma, since this logging call is a DEBUG","commit_id":"a99b787cc24301fea472dd2d997e66369a40db75"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"3b2eb56d99074e3bc27e0b876c0dff4d5c570c62","unresolved":false,"context_lines":[{"line_number":670,"context_line":"                                        datastore_version.id,"},{"line_number":671,"context_line":"                                        task_status\u003dInstanceTasks.BUILDING,"},{"line_number":672,"context_line":"                                        configuration_id\u003dconfiguration_id,"},{"line_number":673,"context_line":"                                        slave_of_id\u003dslave_of_id)"},{"line_number":674,"context_line":"            LOG.debug(\"Tenant %(tenant)s created new Trove instance %(db)s.\""},{"line_number":675,"context_line":"                      % {\u0027tenant\u0027: context.tenant, \u0027db\u0027: db_info.id})"},{"line_number":676,"context_line":""}],"source_content_type":"text/x-python","patch_set":10,"id":"1abeadc6_79871f10","line":673,"updated":"2014-08-17 08:32:20.000000000","message":"same here, can be simplified","commit_id":"a99b787cc24301fea472dd2d997e66369a40db75"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"3b2eb56d99074e3bc27e0b876c0dff4d5c570c62","unresolved":false,"context_lines":[{"line_number":718,"context_line":""},{"line_number":719,"context_line":"    def get_default_configuration_template(self):"},{"line_number":720,"context_line":"        flavor \u003d self.get_flavor()"},{"line_number":721,"context_line":"        LOG.debug(\"Getting default config template for datastore version \""},{"line_number":722,"context_line":"                  \"%(ds_version)s and flavor %(flavor)s.\" %"},{"line_number":723,"context_line":"                  {\u0027ds_version\u0027: self.ds_version, \u0027flavor\u0027: flavor})"},{"line_number":724,"context_line":"        config \u003d template.SingleInstanceConfigTemplate("}],"source_content_type":"text/x-python","patch_set":10,"id":"1abeadc6_b978d72c","line":721,"updated":"2014-08-17 08:32:20.000000000","message":"same","commit_id":"a99b787cc24301fea472dd2d997e66369a40db75"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"3b2eb56d99074e3bc27e0b876c0dff4d5c570c62","unresolved":false,"context_lines":[{"line_number":959,"context_line":"        for db in db_infos:"},{"line_number":960,"context_line":"            LOG.debug(\"Checking for db [id\u003d%(db_id)s, \""},{"line_number":961,"context_line":"                      \"compute_instance_id\u003d%(instance_id)s].\" %"},{"line_number":962,"context_line":"                      {\u0027db_id\u0027: db.id, \u0027instance_id\u0027: db.compute_instance_id})"},{"line_number":963,"context_line":"        ret \u003d Instances._load_servers_status(load_simple_instance, context,"},{"line_number":964,"context_line":"                                             data_view.collection,"},{"line_number":965,"context_line":"                                             find_server)"}],"source_content_type":"text/x-python","patch_set":10,"id":"1abeadc6_d9759333","line":962,"updated":"2014-08-17 08:32:20.000000000","message":"same here","commit_id":"a99b787cc24301fea472dd2d997e66369a40db75"}],"trove/instance/service.py":[{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"0ac4fa8d5c12185b5673eff0fbbdc71abef2b445","unresolved":false,"context_lines":[{"line_number":71,"context_line":"        :param tenant_id: the tenant id for whom owns the instance"},{"line_number":72,"context_line":"        :param id: ???"},{"line_number":73,"context_line":"        \"\"\""},{"line_number":74,"context_line":"        LOG.debug(\"instance action req : \u0027%s\u0027\\n\\n\" % req)"},{"line_number":75,"context_line":"        if not body:"},{"line_number":76,"context_line":"            raise exception.BadRequest(_(\"Invalid request body.\"))"},{"line_number":77,"context_line":"        context \u003d req.environ[wsgi.CONTEXT_KEY]"}],"source_content_type":"text/x-python","patch_set":2,"id":"baada198_00175f52","line":74,"updated":"2014-07-09 13:38:05.000000000","message":"logging.mask_password(_(\"req : \u0027%s\u0027\\n\\n\") % req)","commit_id":"0fa5e73f5086307259ad8c56b539f2e98bb3d58e"},{"author":{"_account_id":10266,"name":"Simon Chang","email":"schang@tesora.com","username":"changsimon"},"change_message_id":"86ff80942f052d04bb76f3f97fa153f83501d9b1","unresolved":false,"context_lines":[{"line_number":71,"context_line":"        :param tenant_id: the tenant id for whom owns the instance"},{"line_number":72,"context_line":"        :param id: ???"},{"line_number":73,"context_line":"        \"\"\""},{"line_number":74,"context_line":"        LOG.debug(\"instance action req : \u0027%s\u0027\\n\\n\" % req)"},{"line_number":75,"context_line":"        if not body:"},{"line_number":76,"context_line":"            raise exception.BadRequest(_(\"Invalid request body.\"))"},{"line_number":77,"context_line":"        context \u003d req.environ[wsgi.CONTEXT_KEY]"}],"source_content_type":"text/x-python","patch_set":2,"id":"baada198_1beee922","line":74,"in_reply_to":"baada198_00175f52","updated":"2014-07-09 16:19:17.000000000","message":"This req blob does not contain any password. Is it a new standard to wrap trace data blobs with mask_password just to be on the safe side?","commit_id":"0fa5e73f5086307259ad8c56b539f2e98bb3d58e"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"0ac4fa8d5c12185b5673eff0fbbdc71abef2b445","unresolved":false,"context_lines":[{"line_number":133,"context_line":"    def index(self, req, tenant_id):"},{"line_number":134,"context_line":"        \"\"\"Return all instances.\"\"\""},{"line_number":135,"context_line":"        LOG.info(_(\"Listing database instances for tenant \u0027%s\u0027\") % tenant_id)"},{"line_number":136,"context_line":"        LOG.debug(\"req : \u0027%s\u0027\\n\\n\" % req)"},{"line_number":137,"context_line":"        context \u003d req.environ[wsgi.CONTEXT_KEY]"},{"line_number":138,"context_line":"        servers, marker \u003d models.Instances.load(context)"},{"line_number":139,"context_line":"        view \u003d views.InstancesView(servers, req\u003dreq)"}],"source_content_type":"text/x-python","patch_set":2,"id":"baada198_46b410f2","line":136,"updated":"2014-07-09 13:38:05.000000000","message":"logging.mask_password(_(\"req : \u0027%s\u0027\\n\\n\") % req)","commit_id":"0fa5e73f5086307259ad8c56b539f2e98bb3d58e"},{"author":{"_account_id":10266,"name":"Simon Chang","email":"schang@tesora.com","username":"changsimon"},"change_message_id":"86ff80942f052d04bb76f3f97fa153f83501d9b1","unresolved":false,"context_lines":[{"line_number":133,"context_line":"    def index(self, req, tenant_id):"},{"line_number":134,"context_line":"        \"\"\"Return all instances.\"\"\""},{"line_number":135,"context_line":"        LOG.info(_(\"Listing database instances for tenant \u0027%s\u0027\") % tenant_id)"},{"line_number":136,"context_line":"        LOG.debug(\"req : \u0027%s\u0027\\n\\n\" % req)"},{"line_number":137,"context_line":"        context \u003d req.environ[wsgi.CONTEXT_KEY]"},{"line_number":138,"context_line":"        servers, marker \u003d models.Instances.load(context)"},{"line_number":139,"context_line":"        view \u003d views.InstancesView(servers, req\u003dreq)"}],"source_content_type":"text/x-python","patch_set":2,"id":"baada198_fabbf372","line":136,"in_reply_to":"baada198_46b410f2","updated":"2014-07-09 16:19:17.000000000","message":"This req blob does not contain any password. Is it a new standard to wrap trace data blobs with mask_password just to be on the safe side?","commit_id":"0fa5e73f5086307259ad8c56b539f2e98bb3d58e"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"0ac4fa8d5c12185b5673eff0fbbdc71abef2b445","unresolved":false,"context_lines":[{"line_number":145,"context_line":"        \"\"\"Return all backups for the specified instance.\"\"\""},{"line_number":146,"context_line":"        LOG.info(_(\"Listing backups for instance \u0027%s\u0027\") %"},{"line_number":147,"context_line":"                 id)"},{"line_number":148,"context_line":"        LOG.debug(\"req : \u0027%s\u0027\\n\\n\" % req)"},{"line_number":149,"context_line":"        context \u003d req.environ[wsgi.CONTEXT_KEY]"},{"line_number":150,"context_line":"        backups, marker \u003d backup_model.list_for_instance(context, id)"},{"line_number":151,"context_line":"        view \u003d backup_views.BackupViews(backups)"}],"source_content_type":"text/x-python","patch_set":2,"id":"baada198_86cd4889","line":148,"updated":"2014-07-09 13:38:05.000000000","message":"logging.mask_password(_(\"req : \u0027%s\u0027\\n\\n\") % req)","commit_id":"0fa5e73f5086307259ad8c56b539f2e98bb3d58e"},{"author":{"_account_id":10266,"name":"Simon Chang","email":"schang@tesora.com","username":"changsimon"},"change_message_id":"86ff80942f052d04bb76f3f97fa153f83501d9b1","unresolved":false,"context_lines":[{"line_number":145,"context_line":"        \"\"\"Return all backups for the specified instance.\"\"\""},{"line_number":146,"context_line":"        LOG.info(_(\"Listing backups for instance \u0027%s\u0027\") %"},{"line_number":147,"context_line":"                 id)"},{"line_number":148,"context_line":"        LOG.debug(\"req : \u0027%s\u0027\\n\\n\" % req)"},{"line_number":149,"context_line":"        context \u003d req.environ[wsgi.CONTEXT_KEY]"},{"line_number":150,"context_line":"        backups, marker \u003d backup_model.list_for_instance(context, id)"},{"line_number":151,"context_line":"        view \u003d backup_views.BackupViews(backups)"}],"source_content_type":"text/x-python","patch_set":2,"id":"baada198_1a1d0774","line":148,"in_reply_to":"baada198_86cd4889","updated":"2014-07-09 16:19:17.000000000","message":"This req blob does not contain any password. Is it a new standard to wrap trace data blobs with mask_password just to be on the safe side?","commit_id":"0fa5e73f5086307259ad8c56b539f2e98bb3d58e"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"0ac4fa8d5c12185b5673eff0fbbdc71abef2b445","unresolved":false,"context_lines":[{"line_number":158,"context_line":"        LOG.info(_(\"Showing database instance \u0027%(instance_id)s\u0027 for tenant \""},{"line_number":159,"context_line":"                   \"\u0027%(tenant_id)s\u0027\") %"},{"line_number":160,"context_line":"                 {\u0027instance_id\u0027: id, \u0027tenant_id\u0027: tenant_id})"},{"line_number":161,"context_line":"        LOG.debug(\"req : \u0027%s\u0027\\n\\n\" % req)"},{"line_number":162,"context_line":""},{"line_number":163,"context_line":"        context \u003d req.environ[wsgi.CONTEXT_KEY]"},{"line_number":164,"context_line":"        server \u003d models.load_instance_with_guest(models.DetailInstance,"}],"source_content_type":"text/x-python","patch_set":2,"id":"baada198_26a63cc2","line":161,"updated":"2014-07-09 13:38:05.000000000","message":"logging.mask_password(_(\"req : \u0027%s\u0027\\n\\n\") % req)","commit_id":"0fa5e73f5086307259ad8c56b539f2e98bb3d58e"},{"author":{"_account_id":10266,"name":"Simon Chang","email":"schang@tesora.com","username":"changsimon"},"change_message_id":"86ff80942f052d04bb76f3f97fa153f83501d9b1","unresolved":false,"context_lines":[{"line_number":158,"context_line":"        LOG.info(_(\"Showing database instance \u0027%(instance_id)s\u0027 for tenant \""},{"line_number":159,"context_line":"                   \"\u0027%(tenant_id)s\u0027\") %"},{"line_number":160,"context_line":"                 {\u0027instance_id\u0027: id, \u0027tenant_id\u0027: tenant_id})"},{"line_number":161,"context_line":"        LOG.debug(\"req : \u0027%s\u0027\\n\\n\" % req)"},{"line_number":162,"context_line":""},{"line_number":163,"context_line":"        context \u003d req.environ[wsgi.CONTEXT_KEY]"},{"line_number":164,"context_line":"        server \u003d models.load_instance_with_guest(models.DetailInstance,"}],"source_content_type":"text/x-python","patch_set":2,"id":"baada198_5a177f51","line":161,"in_reply_to":"baada198_26a63cc2","updated":"2014-07-09 16:19:17.000000000","message":"This req blob does not contain any password. Is it a new standard to wrap trace data blobs with mask_password just to be on the safe side?","commit_id":"0fa5e73f5086307259ad8c56b539f2e98bb3d58e"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"0ac4fa8d5c12185b5673eff0fbbdc71abef2b445","unresolved":false,"context_lines":[{"line_number":171,"context_line":"        LOG.info(_(\"Deleting database instance \u0027%(instance_id)s\u0027 for tenant \""},{"line_number":172,"context_line":"                   \"\u0027%(tenant_id)s\u0027\") %"},{"line_number":173,"context_line":"                 {\u0027instance_id\u0027: id, \u0027tenant_id\u0027: tenant_id})"},{"line_number":174,"context_line":"        LOG.debug(\"req : \u0027%s\u0027\\n\\n\" % req)"},{"line_number":175,"context_line":"        # TODO(hub-cap): turn this into middleware"},{"line_number":176,"context_line":"        context \u003d req.environ[wsgi.CONTEXT_KEY]"},{"line_number":177,"context_line":"        instance \u003d models.load_any_instance(context, id)"}],"source_content_type":"text/x-python","patch_set":2,"id":"baada198_46ab3089","line":174,"updated":"2014-07-09 13:38:05.000000000","message":"logging.mask_password(_(\"req : \u0027%s\u0027\\n\\n\") % req)","commit_id":"0fa5e73f5086307259ad8c56b539f2e98bb3d58e"},{"author":{"_account_id":10266,"name":"Simon Chang","email":"schang@tesora.com","username":"changsimon"},"change_message_id":"86ff80942f052d04bb76f3f97fa153f83501d9b1","unresolved":false,"context_lines":[{"line_number":171,"context_line":"        LOG.info(_(\"Deleting database instance \u0027%(instance_id)s\u0027 for tenant \""},{"line_number":172,"context_line":"                   \"\u0027%(tenant_id)s\u0027\") %"},{"line_number":173,"context_line":"                 {\u0027instance_id\u0027: id, \u0027tenant_id\u0027: tenant_id})"},{"line_number":174,"context_line":"        LOG.debug(\"req : \u0027%s\u0027\\n\\n\" % req)"},{"line_number":175,"context_line":"        # TODO(hub-cap): turn this into middleware"},{"line_number":176,"context_line":"        context \u003d req.environ[wsgi.CONTEXT_KEY]"},{"line_number":177,"context_line":"        instance \u003d models.load_any_instance(context, id)"}],"source_content_type":"text/x-python","patch_set":2,"id":"baada198_da02af0a","line":174,"in_reply_to":"baada198_46ab3089","updated":"2014-07-09 16:19:17.000000000","message":"This req blob does not contain any password. Is it a new standard to wrap trace data blobs with mask_password just to be on the safe side?","commit_id":"0fa5e73f5086307259ad8c56b539f2e98bb3d58e"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"0ac4fa8d5c12185b5673eff0fbbdc71abef2b445","unresolved":false,"context_lines":[{"line_number":252,"context_line":"        LOG.info(_(\"Updating database instance \u0027%(instance_id)s\u0027 for tenant \""},{"line_number":253,"context_line":"                   \"\u0027%(tenant_id)s\u0027\") %"},{"line_number":254,"context_line":"                 {\u0027instance_id\u0027: id, \u0027tenant_id\u0027: tenant_id})"},{"line_number":255,"context_line":"        LOG.debug(\"req: %s\" % req)"},{"line_number":256,"context_line":"        LOG.debug(\"body: %s\" % body)"},{"line_number":257,"context_line":"        context \u003d req.environ[wsgi.CONTEXT_KEY]"},{"line_number":258,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"baada198_a6916c54","line":255,"updated":"2014-07-09 13:38:05.000000000","message":"logging.mask_password(_(\"req : \u0027%s\u0027\\n\\n\") % req)","commit_id":"0fa5e73f5086307259ad8c56b539f2e98bb3d58e"},{"author":{"_account_id":10266,"name":"Simon Chang","email":"schang@tesora.com","username":"changsimon"},"change_message_id":"4642385a8d97b16e302709db6e6e70e641d84b3b","unresolved":false,"context_lines":[{"line_number":252,"context_line":"        LOG.info(_(\"Updating database instance \u0027%(instance_id)s\u0027 for tenant \""},{"line_number":253,"context_line":"                   \"\u0027%(tenant_id)s\u0027\") %"},{"line_number":254,"context_line":"                 {\u0027instance_id\u0027: id, \u0027tenant_id\u0027: tenant_id})"},{"line_number":255,"context_line":"        LOG.debug(\"req: %s\" % req)"},{"line_number":256,"context_line":"        LOG.debug(\"body: %s\" % body)"},{"line_number":257,"context_line":"        context \u003d req.environ[wsgi.CONTEXT_KEY]"},{"line_number":258,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"baada198_a6fb2146","line":255,"in_reply_to":"baada198_a6916c54","updated":"2014-07-09 18:26:06.000000000","message":"This req blob does not contain any password. Is it a new standard to wrap trace data blobs with mask_password just to be on the safe side?","commit_id":"0fa5e73f5086307259ad8c56b539f2e98bb3d58e"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"3b2eb56d99074e3bc27e0b876c0dff4d5c570c62","unresolved":false,"context_lines":[{"line_number":278,"context_line":"        instance \u003d models.Instance.load(context, id)"},{"line_number":279,"context_line":"        LOG.debug(\"Server: %s\" % instance)"},{"line_number":280,"context_line":"        config \u003d instance.get_default_configuration_template()"},{"line_number":281,"context_line":"        LOG.debug(\"Default config for instance %(instance_id)s is %(config)s\" %"},{"line_number":282,"context_line":"                  {\u0027instance_id\u0027: id, \u0027config\u0027: config})"},{"line_number":283,"context_line":"        return wsgi.Result(views.DefaultConfigurationView("},{"line_number":284,"context_line":"                           config).data(), 200)"}],"source_content_type":"text/x-python","patch_set":10,"id":"1abeadc6_198f0b25","line":281,"updated":"2014-08-17 08:32:20.000000000","message":"same here","commit_id":"a99b787cc24301fea472dd2d997e66369a40db75"}]}
