)]}'
{"trove/guestagent/datastore/experimental/postgresql/manager.py":[{"author":{"_account_id":10440,"name":"Alex Tomic","email":"atomic777@gmail.com","username":"atomic77"},"change_message_id":"6b3480a72d309d035d97ec0e3fa1d7cb490a30d7","unresolved":false,"context_lines":[{"line_number":42,"context_line":"):"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"    def __init__(self):"},{"line_number":45,"context_line":"        super(Manager, self).__init__()"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"    @property"},{"line_number":48,"context_line":"    def status(self):"}],"source_content_type":"text/x-python","patch_set":6,"id":"fa80f949_e799bd6f","line":45,"updated":"2015-11-04 19:56:01.000000000","message":"Looks like this is a bug from the previous patch that went in (missing the argument for manager name) -- maybe it\u0027s worth fixing in this patch rather than going through the effort of creating a bug etc.","commit_id":"9588c686dea903e982453c005c7dabdec9ceb9fb"},{"author":{"_account_id":10215,"name":"Peter Stachowski","email":"peter@tesora.com","username":"peterstac"},"change_message_id":"cfe57ee75a7d2245eaa23f34f991890b8127487f","unresolved":false,"context_lines":[{"line_number":42,"context_line":"):"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"    def __init__(self):"},{"line_number":45,"context_line":"        super(Manager, self).__init__()"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"    @property"},{"line_number":48,"context_line":"    def status(self):"}],"source_content_type":"text/x-python","patch_set":6,"id":"fa80f949_78224b03","line":45,"in_reply_to":"fa80f949_e799bd6f","updated":"2015-11-04 22:55:08.000000000","message":"Done","commit_id":"9588c686dea903e982453c005c7dabdec9ceb9fb"}],"trove/guestagent/datastore/manager.py":[{"author":{"_account_id":14576,"name":"Petr Malik","email":"pmalik@tesora.com","username":"pmalik"},"change_message_id":"98e91039fe69e0bfd2a0a1007f15ba346340f1d4","unresolved":false,"context_lines":[{"line_number":248,"context_line":"        implemented to enable rollback of flavor-resize on guestagent side."},{"line_number":249,"context_line":"        \"\"\""},{"line_number":250,"context_line":"        LOG.debug(\"Resetting configuration.\")"},{"line_number":251,"context_line":"        pass"},{"line_number":252,"context_line":""},{"line_number":253,"context_line":"    #################"},{"line_number":254,"context_line":"    # Cluster related"}],"source_content_type":"text/x-python","patch_set":1,"id":"5a2ca52d_4255c3f7","line":251,"updated":"2015-10-15 18:49:44.000000000","message":"This is generally going to be same for all datastores (at least for those that use the config manager). We could even provide a default implementation:\n\nif self.configuration_manager:\n    config_contents \u003d configuration[\u0027config_contents\u0027]\n    self.configuration_manager.save_configuration(config_contents)","commit_id":"e3b8fc6261fad26039a77b1edba882514f75097e"},{"author":{"_account_id":10215,"name":"Peter Stachowski","email":"peter@tesora.com","username":"peterstac"},"change_message_id":"fe8b4c3ce90c226d11c2e60884c4373c416d9517","unresolved":false,"context_lines":[{"line_number":248,"context_line":"        implemented to enable rollback of flavor-resize on guestagent side."},{"line_number":249,"context_line":"        \"\"\""},{"line_number":250,"context_line":"        LOG.debug(\"Resetting configuration.\")"},{"line_number":251,"context_line":"        pass"},{"line_number":252,"context_line":""},{"line_number":253,"context_line":"    #################"},{"line_number":254,"context_line":"    # Cluster related"}],"source_content_type":"text/x-python","patch_set":1,"id":"5a2ca52d_7365331c","line":251,"in_reply_to":"5a2ca52d_4255c3f7","updated":"2015-10-15 21:12:20.000000000","message":"Done (although only two datastores are able to make use of it...)","commit_id":"e3b8fc6261fad26039a77b1edba882514f75097e"},{"author":{"_account_id":7806,"name":"Sushil Kumar","email":"skm.net@gmail.com","username":"sushilkm"},"change_message_id":"941d814c32e07994febd8f01ce2e4b4816897572","unresolved":false,"context_lines":[{"line_number":75,"context_line":"        except Exception as ex:"},{"line_number":76,"context_line":"            LOG.debug(\"Cannot get replication instance for \u0027%s\u0027: %s\" % ("},{"line_number":77,"context_line":"                      self.manager, ex.message))"},{"line_number":78,"context_line":"            pass"},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"        return None"},{"line_number":81,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"fa80f949_4285e204","line":78,"updated":"2015-11-05 22:42:07.000000000","message":"we do not need an explicit pass","commit_id":"82236e69ff36eb1a5c77743e5e6368bcb191510f"},{"author":{"_account_id":10215,"name":"Peter Stachowski","email":"peter@tesora.com","username":"peterstac"},"change_message_id":"096b2aed4da65d1c737c5dfb654a6c7ffd5d3a98","unresolved":false,"context_lines":[{"line_number":75,"context_line":"        except Exception as ex:"},{"line_number":76,"context_line":"            LOG.debug(\"Cannot get replication instance for \u0027%s\u0027: %s\" % ("},{"line_number":77,"context_line":"                      self.manager, ex.message))"},{"line_number":78,"context_line":"            pass"},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"        return None"},{"line_number":81,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"fa80f949_4544e5b5","line":78,"in_reply_to":"fa80f949_4285e204","updated":"2015-11-06 17:44:30.000000000","message":"Done","commit_id":"82236e69ff36eb1a5c77743e5e6368bcb191510f"},{"author":{"_account_id":7806,"name":"Sushil Kumar","email":"skm.net@gmail.com","username":"sushilkm"},"change_message_id":"941d814c32e07994febd8f01ce2e4b4816897572","unresolved":false,"context_lines":[{"line_number":87,"context_line":"        except Exception as ex:"},{"line_number":88,"context_line":"            LOG.debug(\"Cannot get replication strategy for \u0027%s\u0027: %s\" % ("},{"line_number":89,"context_line":"                      self.manager, ex.message))"},{"line_number":90,"context_line":"            pass"},{"line_number":91,"context_line":""},{"line_number":92,"context_line":"        return None"},{"line_number":93,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"fa80f949_e27e5618","line":90,"updated":"2015-11-05 22:42:07.000000000","message":"same","commit_id":"82236e69ff36eb1a5c77743e5e6368bcb191510f"},{"author":{"_account_id":10215,"name":"Peter Stachowski","email":"peter@tesora.com","username":"peterstac"},"change_message_id":"096b2aed4da65d1c737c5dfb654a6c7ffd5d3a98","unresolved":false,"context_lines":[{"line_number":87,"context_line":"        except Exception as ex:"},{"line_number":88,"context_line":"            LOG.debug(\"Cannot get replication strategy for \u0027%s\u0027: %s\" % ("},{"line_number":89,"context_line":"                      self.manager, ex.message))"},{"line_number":90,"context_line":"            pass"},{"line_number":91,"context_line":""},{"line_number":92,"context_line":"        return None"},{"line_number":93,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"fa80f949_e51399b6","line":90,"in_reply_to":"fa80f949_e27e5618","updated":"2015-11-06 17:44:30.000000000","message":"Done","commit_id":"82236e69ff36eb1a5c77743e5e6368bcb191510f"},{"author":{"_account_id":14576,"name":"Petr Malik","email":"pmalik@tesora.com","username":"pmalik"},"change_message_id":"b3f78de51392aa5edca8e157110afbaa0be6dbc5","unresolved":false,"context_lines":[{"line_number":156,"context_line":"        if not cluster_config:"},{"line_number":157,"context_line":"            try:"},{"line_number":158,"context_line":"                if databases:"},{"line_number":159,"context_line":"                    LOG.info(_(\u0027Creating databases: %s.\u0027) %"},{"line_number":160,"context_line":"                             (\", \".join(database.get(\u0027_name\u0027) or \u0027Unknown\u0027"},{"line_number":161,"context_line":"                                        for database in databases)))"},{"line_number":162,"context_line":"                    self.create_database(context, databases)"}],"source_content_type":"text/x-python","patch_set":11,"id":"da85f559_5575a595","line":159,"updated":"2015-11-10 16:30:38.000000000","message":"Many datastores will already be printing this in their manager implementations. We may want to leave it on them. It would also avoid the need to access the internal member \u0027_name\u0027 of the serialized payload.\n\nThe datastores would normally serialize the object using an appropriate model (which they know) - like, say, MySQLUser and access the \u0027name\u0027 property of that object. It helps to decouple the guestagent implementation from the API (serialization details).\n\nOne way would be to add two members to the base manager to store the schema and user model provided by the derived class. The base could then just call SchemaModel.deserialize(x) on it to get the right object back.","commit_id":"34ecac512a331f4fe51461b191bf923ed77ec06e"},{"author":{"_account_id":14576,"name":"Petr Malik","email":"pmalik@tesora.com","username":"pmalik"},"change_message_id":"6a2e600c570a890593d0608963879b7386635714","unresolved":false,"context_lines":[{"line_number":156,"context_line":"        if not cluster_config:"},{"line_number":157,"context_line":"            try:"},{"line_number":158,"context_line":"                if databases:"},{"line_number":159,"context_line":"                    LOG.info(_(\u0027Creating databases: %s.\u0027) %"},{"line_number":160,"context_line":"                             (\", \".join(database.get(\u0027_name\u0027) or \u0027Unknown\u0027"},{"line_number":161,"context_line":"                                        for database in databases)))"},{"line_number":162,"context_line":"                    self.create_database(context, databases)"}],"source_content_type":"text/x-python","patch_set":11,"id":"da85f559_553845a0","line":159,"in_reply_to":"da85f559_5575a595","updated":"2015-11-10 16:32:15.000000000","message":"* The datastores would normally DE-serialize","commit_id":"34ecac512a331f4fe51461b191bf923ed77ec06e"},{"author":{"_account_id":10215,"name":"Peter Stachowski","email":"peter@tesora.com","username":"peterstac"},"change_message_id":"2549355c8b4193f3134c8ccd1e66b07738804ce8","unresolved":false,"context_lines":[{"line_number":156,"context_line":"        if not cluster_config:"},{"line_number":157,"context_line":"            try:"},{"line_number":158,"context_line":"                if databases:"},{"line_number":159,"context_line":"                    LOG.info(_(\u0027Creating databases: %s.\u0027) %"},{"line_number":160,"context_line":"                             (\", \".join(database.get(\u0027_name\u0027) or \u0027Unknown\u0027"},{"line_number":161,"context_line":"                                        for database in databases)))"},{"line_number":162,"context_line":"                    self.create_database(context, databases)"}],"source_content_type":"text/x-python","patch_set":11,"id":"da85f559_e7e986e7","line":159,"in_reply_to":"da85f559_5575a595","updated":"2015-11-10 18:40:48.000000000","message":"Actually, I printed this out because MySQL specifically didn\u0027t print anything out.  But you\u0027re right, it should be decoupled.  I\u0027ll change it back to just print out \"Creating databases\" and leave it at that.  Thx!","commit_id":"34ecac512a331f4fe51461b191bf923ed77ec06e"}]}
