)]}'
{"specs/newton/cinder-snapshots-as-trove-backups.rst":[{"author":{"_account_id":9664,"name":"amrith","email":"amrith.kumar@gmail.com","username":"amrith"},"change_message_id":"93c4428d77aba96acd0de46e4c8a55f05c33e7c1","unresolved":false,"context_lines":[{"line_number":29,"context_line":". In [1]_ it is best described what the changes are and the steps needed to"},{"line_number":30,"context_line":"accomplish it. The main goal is to allow Trove to use different storage"},{"line_number":31,"context_line":"capabilities such as Manila, Cinder or anything that can be implemented in"},{"line_number":32,"context_line":"the future. This spec addresses the implementation of Cinder snapshots as an"},{"line_number":33,"context_line":"alternative backup option for Trove."},{"line_number":34,"context_line":"The goal is to complete the implementation proposed in [1]_ for Cinder"},{"line_number":35,"context_line":"storage."},{"line_number":36,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"1a122d0e_b39039ee","line":33,"range":{"start_line":32,"start_character":12,"end_line":33,"end_character":36},"updated":"2016-04-15 21:36:29.000000000","message":"thank you. this is a very important distinction and I\u0027m happy that you addressed it up front here.","commit_id":"db816a4e57b7604799bff043f4b66cf2401747ac"},{"author":{"_account_id":9664,"name":"amrith","email":"amrith.kumar@gmail.com","username":"amrith"},"change_message_id":"93c4428d77aba96acd0de46e4c8a55f05c33e7c1","unresolved":false,"context_lines":[{"line_number":64,"context_line":"Cinder capabilities. The user will have the option to choose between the"},{"line_number":65,"context_line":"current backup strategy or to use the Cinder snapshot to backup its Trove"},{"line_number":66,"context_line":"database."},{"line_number":67,"context_line":"This will be the only change on the user experience of this implementation."},{"line_number":68,"context_line":"The API will need to be adjusted to accept a parameter specifying which type"},{"line_number":69,"context_line":"of backup the user wants to perform. This can be used in the other storage"},{"line_number":70,"context_line":"capabilities as well, so the API will change only once."},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"The restore action will feel the same from the user side. The user will"},{"line_number":73,"context_line":"choose the backup it wants to restore its data from and if this backup is a"}],"source_content_type":"text/x-rst","patch_set":2,"id":"1a122d0e_171e3863","line":70,"range":{"start_line":67,"start_character":0,"end_line":70,"end_character":55},"updated":"2016-04-15 21:36:29.000000000","message":"in the short term, this could even be avoided and you could just implement backup and restore as strategies. that would eliminate the API change at this stage and limit the scope of this and make it easier to deliver this independently of other changes.","commit_id":"db816a4e57b7604799bff043f4b66cf2401747ac"},{"author":{"_account_id":9664,"name":"amrith","email":"amrith.kumar@gmail.com","username":"amrith"},"change_message_id":"93c4428d77aba96acd0de46e4c8a55f05c33e7c1","unresolved":false,"context_lines":[{"line_number":88,"context_line":""},{"line_number":89,"context_line":"There won\u0027t be any changes to the database. I feel it is important to state"},{"line_number":90,"context_line":"that the snapshot_id from Cinder will be stored in the existing Backups table,"},{"line_number":91,"context_line":"at the \"location\" column. At this point this column is used to point to swift"},{"line_number":92,"context_line":"location, but in order to minimize the changes we will use the same place"},{"line_number":93,"context_line":"and store the ID of the Cinder snapshots so we can recover that for use."},{"line_number":94,"context_line":""},{"line_number":95,"context_line":"Public API"},{"line_number":96,"context_line":"----------"}],"source_content_type":"text/x-rst","patch_set":2,"id":"1a122d0e_da20654c","line":93,"range":{"start_line":91,"start_character":26,"end_line":93,"end_character":72},"updated":"2016-04-15 21:36:29.000000000","message":"it would be better to update the table and store a snapshot id as such. updating the table will be required and that\u0027s better than storing it a column not intended for it.","commit_id":"db816a4e57b7604799bff043f4b66cf2401747ac"},{"author":{"_account_id":9664,"name":"amrith","email":"amrith.kumar@gmail.com","username":"amrith"},"change_message_id":"93c4428d77aba96acd0de46e4c8a55f05c33e7c1","unresolved":false,"context_lines":[{"line_number":95,"context_line":"Public API"},{"line_number":96,"context_line":"----------"},{"line_number":97,"context_line":""},{"line_number":98,"context_line":"We need to add a parameter on the backup call to allow the user to"},{"line_number":99,"context_line":"specify which type of backup she wants. In order to keep the change backward"},{"line_number":100,"context_line":"compatible we will set the parameter by default to Trove\u0027s backup"},{"line_number":101,"context_line":"strategy."}],"source_content_type":"text/x-rst","patch_set":2,"id":"1a122d0e_ba1da911","line":98,"range":{"start_line":98,"start_character":8,"end_line":98,"end_character":10},"updated":"2016-04-15 21:36:29.000000000","message":"this is optional, right? you could do the same thing that existing back strategies do.","commit_id":"db816a4e57b7604799bff043f4b66cf2401747ac"},{"author":{"_account_id":9664,"name":"amrith","email":"amrith.kumar@gmail.com","username":"amrith"},"change_message_id":"93c4428d77aba96acd0de46e4c8a55f05c33e7c1","unresolved":false,"context_lines":[{"line_number":128,"context_line":"Guest Agent"},{"line_number":129,"context_line":"-----------"},{"line_number":130,"context_line":""},{"line_number":131,"context_line":"The backup here will not be performed in the guest agent as of today. The"},{"line_number":132,"context_line":"main change on the guest is for the restore. In the restore process we will"},{"line_number":133,"context_line":"need to identify that it is a Cinder snapshot, and act accordingly. Today"},{"line_number":134,"context_line":"the restore process creates a volume, formats it, and restores the backup"}],"source_content_type":"text/x-rst","patch_set":2,"id":"1a122d0e_bae4890d","line":131,"range":{"start_line":131,"start_character":0,"end_line":131,"end_character":69},"updated":"2016-04-15 21:36:29.000000000","message":"yes, this won\u0027t work! you can\u0027t just snapshot a volume under a running database and expect that you can launch a database from it. \n\nthere are specific things you have to do with each database, to get a quiet system and then take the snapshot.","commit_id":"db816a4e57b7604799bff043f4b66cf2401747ac"},{"author":{"_account_id":6159,"name":"Flavio Percoco Premoli","display_name":"flaper87","email":"flavio.percoco@flyrlabs.com","username":"flaper87"},"change_message_id":"3ca77797605fb95dc503e42b687e80dd661f5cd3","unresolved":false,"context_lines":[{"line_number":90,"context_line":"that the snapshot_id from Cinder will be stored in the existing Backups table,"},{"line_number":91,"context_line":"at the \"location\" column. At this point this column is used to point to swift"},{"line_number":92,"context_line":"location, but in order to minimize the changes we will use the same place"},{"line_number":93,"context_line":"and store the ID of the Cinder snapshots so we can recover that for use."},{"line_number":94,"context_line":""},{"line_number":95,"context_line":"Public API"},{"line_number":96,"context_line":"----------"}],"source_content_type":"text/x-rst","patch_set":4,"id":"dab17558_8b55bc51","line":93,"updated":"2016-05-08 19:44:01.000000000","message":"The backup location is an URL. What do you think about creating an URL like value for this?\n\n    cinder://$VALUME_ID\n\nThe glance_store library uses that format for every supported store. The benefit I see in this is that it\u0027ll keep the returned value consistent.\n\nhttps://git.openstack.org/cgit/openstack/glance_store/tree/glance_store/_drivers/cinder.py#n210","commit_id":"36901511a07e3f4bad8a19997ac3e8cb7b0f02ef"},{"author":{"_account_id":9782,"name":"Morgan Jones","email":"morgan@tesora.com","username":"vgnbkr"},"change_message_id":"f7375903130516422a83e20026359e939e557a0b","unresolved":false,"context_lines":[{"line_number":134,"context_line":"the restore process creates a volume, formats it, and restores the backup"},{"line_number":135,"context_line":"into this volume, we will need to get the volume from Cinder, attach to the"},{"line_number":136,"context_line":"machine and perform some needed actions in order for specific databases to"},{"line_number":137,"context_line":"start (e.g. MySQL needs some log clean up)."},{"line_number":138,"context_line":""},{"line_number":139,"context_line":""},{"line_number":140,"context_line":"Alternatives"}],"source_content_type":"text/x-rst","patch_set":4,"id":"1a122d0e_5381e5c2","line":137,"updated":"2016-05-02 18:31:14.000000000","message":"Can you please outline what database actions you foresee?","commit_id":"36901511a07e3f4bad8a19997ac3e8cb7b0f02ef"},{"author":{"_account_id":6159,"name":"Flavio Percoco Premoli","display_name":"flaper87","email":"flavio.percoco@flyrlabs.com","username":"flaper87"},"change_message_id":"3ca77797605fb95dc503e42b687e80dd661f5cd3","unresolved":false,"context_lines":[{"line_number":152,"context_line":""},{"line_number":153,"context_line":"We will need to add the options to the user to select which type of backup"},{"line_number":154,"context_line":"she wants. This can be a simple RadioButton in the backup window. Default"},{"line_number":155,"context_line":"value will be set to current implementation."},{"line_number":156,"context_line":""},{"line_number":157,"context_line":""},{"line_number":158,"context_line":"Implementation"}],"source_content_type":"text/x-rst","patch_set":4,"id":"dab17558_6b50585f","line":155,"updated":"2016-05-08 19:44:01.000000000","message":"Can we ask the horizon/dashboard team what\u0027s the preferred way to do this? Radio buttons? drop down menu?\n\nFor the affinity spec, a drop-down menu is being proposed","commit_id":"36901511a07e3f4bad8a19997ac3e8cb7b0f02ef"},{"author":{"_account_id":10295,"name":"mariam john","email":"mariamj@us.ibm.com","username":"mariamj"},"change_message_id":"4070803b3793a82072bebb0cc9742a2f8b643112","unresolved":false,"context_lines":[{"line_number":42,"context_line":"At this present time, Trove\u0027s backups can only be made using database"},{"line_number":43,"context_line":"backup tools such as mysqldump, mongodbdump and so on. The problem with this"},{"line_number":44,"context_line":"approach is that these methods may not be fast enough for some use cases."},{"line_number":45,"context_line":"Creating an snapshot of a volume is generally a faster operation even"},{"line_number":46,"context_line":"considering the need to quiesce the DB and file system to ensure consistency."},{"line_number":47,"context_line":"SGiven that Trove is moving towards having more storage alternatives in"},{"line_number":48,"context_line":"order to use storage-specific features, we want to start walking down that"}],"source_content_type":"text/x-rst","patch_set":7,"id":"bab6814e_9fd2f1d0","line":45,"updated":"2016-05-19 19:20:31.000000000","message":"minor nits - \u0027Creating a\u0027 instead of \u0027Creating an\u0027","commit_id":"9205bdce28108bca2891b2883b5c8a59a919acd4"},{"author":{"_account_id":8932,"name":"Telles Mota Vidal Nóbrega","email":"tellesnobrega@gmail.com","username":"tellesnobrega"},"change_message_id":"26cf0937dc58096fb5544be7eb390ad6a5c366cf","unresolved":false,"context_lines":[{"line_number":42,"context_line":"At this present time, Trove\u0027s backups can only be made using database"},{"line_number":43,"context_line":"backup tools such as mysqldump, mongodbdump and so on. The problem with this"},{"line_number":44,"context_line":"approach is that these methods may not be fast enough for some use cases."},{"line_number":45,"context_line":"Creating an snapshot of a volume is generally a faster operation even"},{"line_number":46,"context_line":"considering the need to quiesce the DB and file system to ensure consistency."},{"line_number":47,"context_line":"SGiven that Trove is moving towards having more storage alternatives in"},{"line_number":48,"context_line":"order to use storage-specific features, we want to start walking down that"}],"source_content_type":"text/x-rst","patch_set":7,"id":"bab6814e_963bf337","line":45,"in_reply_to":"bab6814e_9fd2f1d0","updated":"2016-05-19 21:11:05.000000000","message":"Done","commit_id":"9205bdce28108bca2891b2883b5c8a59a919acd4"},{"author":{"_account_id":10295,"name":"mariam john","email":"mariamj@us.ibm.com","username":"mariamj"},"change_message_id":"4070803b3793a82072bebb0cc9742a2f8b643112","unresolved":false,"context_lines":[{"line_number":44,"context_line":"approach is that these methods may not be fast enough for some use cases."},{"line_number":45,"context_line":"Creating an snapshot of a volume is generally a faster operation even"},{"line_number":46,"context_line":"considering the need to quiesce the DB and file system to ensure consistency."},{"line_number":47,"context_line":"SGiven that Trove is moving towards having more storage alternatives in"},{"line_number":48,"context_line":"order to use storage-specific features, we want to start walking down that"},{"line_number":49,"context_line":"path by delivering Cinder snapshots as a backup strategy"},{"line_number":50,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"bab6814e_9fe95183","line":47,"updated":"2016-05-19 19:20:31.000000000","message":"Given instead of SGiven","commit_id":"9205bdce28108bca2891b2883b5c8a59a919acd4"},{"author":{"_account_id":8932,"name":"Telles Mota Vidal Nóbrega","email":"tellesnobrega@gmail.com","username":"tellesnobrega"},"change_message_id":"26cf0937dc58096fb5544be7eb390ad6a5c366cf","unresolved":false,"context_lines":[{"line_number":44,"context_line":"approach is that these methods may not be fast enough for some use cases."},{"line_number":45,"context_line":"Creating an snapshot of a volume is generally a faster operation even"},{"line_number":46,"context_line":"considering the need to quiesce the DB and file system to ensure consistency."},{"line_number":47,"context_line":"SGiven that Trove is moving towards having more storage alternatives in"},{"line_number":48,"context_line":"order to use storage-specific features, we want to start walking down that"},{"line_number":49,"context_line":"path by delivering Cinder snapshots as a backup strategy"},{"line_number":50,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"bab6814e_361327ba","line":47,"in_reply_to":"bab6814e_9fe95183","updated":"2016-05-19 21:11:05.000000000","message":"Done","commit_id":"9205bdce28108bca2891b2883b5c8a59a919acd4"},{"author":{"_account_id":10295,"name":"mariam john","email":"mariamj@us.ibm.com","username":"mariamj"},"change_message_id":"4070803b3793a82072bebb0cc9742a2f8b643112","unresolved":false,"context_lines":[{"line_number":63,"context_line":""},{"line_number":64,"context_line":"In the case of the backup action, the user simply issues a trove"},{"line_number":65,"context_line":"backup-create call and the Cinder snapshot will be created and stored in swift."},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"In the case of the restore action, the user would need to choose the backup"},{"line_number":68,"context_line":"they want to restore and, if this backup is a Cinder snapshot, we will"},{"line_number":69,"context_line":"internally deal with the backup type and create the instance."}],"source_content_type":"text/x-rst","patch_set":7,"id":"bab6814e_6a102da9","line":66,"updated":"2016-05-19 19:20:31.000000000","message":"Were is the Cinder snapshot being stored while its being created? Don\u0027t we need to worry about whether there is enough space to do a snapshot?","commit_id":"9205bdce28108bca2891b2883b5c8a59a919acd4"},{"author":{"_account_id":8932,"name":"Telles Mota Vidal Nóbrega","email":"tellesnobrega@gmail.com","username":"tellesnobrega"},"change_message_id":"26cf0937dc58096fb5544be7eb390ad6a5c366cf","unresolved":false,"context_lines":[{"line_number":63,"context_line":""},{"line_number":64,"context_line":"In the case of the backup action, the user simply issues a trove"},{"line_number":65,"context_line":"backup-create call and the Cinder snapshot will be created and stored in swift."},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"In the case of the restore action, the user would need to choose the backup"},{"line_number":68,"context_line":"they want to restore and, if this backup is a Cinder snapshot, we will"},{"line_number":69,"context_line":"internally deal with the backup type and create the instance."}],"source_content_type":"text/x-rst","patch_set":7,"id":"bab6814e_f64fdfba","line":66,"in_reply_to":"bab6814e_6a102da9","updated":"2016-05-19 21:11:05.000000000","message":"The creation of the snapshot is completely handled by Cinder. If there isn\u0027t enough space (I assume you mean quotas) we should get an error message and pass it on to the user.","commit_id":"9205bdce28108bca2891b2883b5c8a59a919acd4"},{"author":{"_account_id":10295,"name":"mariam john","email":"mariamj@us.ibm.com","username":"mariamj"},"change_message_id":"4070803b3793a82072bebb0cc9742a2f8b643112","unresolved":false,"context_lines":[{"line_number":66,"context_line":""},{"line_number":67,"context_line":"In the case of the restore action, the user would need to choose the backup"},{"line_number":68,"context_line":"they want to restore and, if this backup is a Cinder snapshot, we will"},{"line_number":69,"context_line":"internally deal with the backup type and create the instance."},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"At this first stage we are only implementing the feature for single volume"},{"line_number":72,"context_line":"database. The next step will be to implement to clusters."}],"source_content_type":"text/x-rst","patch_set":7,"id":"bab6814e_ca031941","line":69,"updated":"2016-05-19 19:20:31.000000000","message":"How will we know whether a backup was a Cinder snapshot or from a database-specific backup strategy? \n\nLooks like the answer to the above question is in the Databases section. Not sure if it makes sense to mention that here or not.","commit_id":"9205bdce28108bca2891b2883b5c8a59a919acd4"},{"author":{"_account_id":8932,"name":"Telles Mota Vidal Nóbrega","email":"tellesnobrega@gmail.com","username":"tellesnobrega"},"change_message_id":"26cf0937dc58096fb5544be7eb390ad6a5c366cf","unresolved":false,"context_lines":[{"line_number":66,"context_line":""},{"line_number":67,"context_line":"In the case of the restore action, the user would need to choose the backup"},{"line_number":68,"context_line":"they want to restore and, if this backup is a Cinder snapshot, we will"},{"line_number":69,"context_line":"internally deal with the backup type and create the instance."},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"At this first stage we are only implementing the feature for single volume"},{"line_number":72,"context_line":"database. The next step will be to implement to clusters."}],"source_content_type":"text/x-rst","patch_set":7,"id":"bab6814e_36efa788","line":69,"in_reply_to":"bab6814e_ca031941","updated":"2016-05-19 21:11:05.000000000","message":"Yes, it is answered later on, but I can bring it up here.","commit_id":"9205bdce28108bca2891b2883b5c8a59a919acd4"},{"author":{"_account_id":10295,"name":"mariam john","email":"mariamj@us.ibm.com","username":"mariamj"},"change_message_id":"4070803b3793a82072bebb0cc9742a2f8b643112","unresolved":false,"context_lines":[{"line_number":81,"context_line":"-------------"},{"line_number":82,"context_line":""},{"line_number":83,"context_line":"None. We will use the current configuration option to set cinder snapshot as"},{"line_number":84,"context_line":"the strategy for backups."},{"line_number":85,"context_line":""},{"line_number":86,"context_line":"Database"},{"line_number":87,"context_line":"--------"}],"source_content_type":"text/x-rst","patch_set":7,"id":"bab6814e_e5160ef0","line":84,"updated":"2016-05-19 19:20:31.000000000","message":"What will be the new values for the configuration properties related to backup and restore? For example, these are the following parameters related to backup/restore:\n- backup_strategy\n- backup_namespace\n- restore_namespace\n- backup_incremental_strategy (I dont think this applies to snapshot based backups)\n\nThe namespaces for current backup/restore is: /trove/guestagent/backup/strategies/experimental/\u003cdatastore name\u003e/.\n\nWondering were you are planning to place the new files?","commit_id":"9205bdce28108bca2891b2883b5c8a59a919acd4"},{"author":{"_account_id":8932,"name":"Telles Mota Vidal Nóbrega","email":"tellesnobrega@gmail.com","username":"tellesnobrega"},"change_message_id":"26cf0937dc58096fb5544be7eb390ad6a5c366cf","unresolved":false,"context_lines":[{"line_number":81,"context_line":"-------------"},{"line_number":82,"context_line":""},{"line_number":83,"context_line":"None. We will use the current configuration option to set cinder snapshot as"},{"line_number":84,"context_line":"the strategy for backups."},{"line_number":85,"context_line":""},{"line_number":86,"context_line":"Database"},{"line_number":87,"context_line":"--------"}],"source_content_type":"text/x-rst","patch_set":7,"id":"bab6814e_d1b58531","line":84,"in_reply_to":"bab6814e_e5160ef0","updated":"2016-05-19 21:11:05.000000000","message":"Thanks for bringing this up. Haven\u0027t really thought about this. But it looks like we can add this in the experimental namespace for now. It will be a strategy, so it should behave the same. Other than that, there are some configuration that will be added that I forgot, so thanks for reminding me of them.","commit_id":"9205bdce28108bca2891b2883b5c8a59a919acd4"},{"author":{"_account_id":10295,"name":"mariam john","email":"mariamj@us.ibm.com","username":"mariamj"},"change_message_id":"4070803b3793a82072bebb0cc9742a2f8b643112","unresolved":false,"context_lines":[{"line_number":86,"context_line":"Database"},{"line_number":87,"context_line":"--------"},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"Since we are sending the snapshot to be stored in swift we need to a way to"},{"line_number":90,"context_line":"identify the type of the backup. For that we will add a column \u0027type\u0027 to the"},{"line_number":91,"context_line":"Backups tables. This column will be a varchar column that will accept the"},{"line_number":92,"context_line":"following values:"}],"source_content_type":"text/x-rst","patch_set":7,"id":"bab6814e_85de223d","line":89,"updated":"2016-05-19 19:20:31.000000000","message":"\u0027we need a way\u0027 instead of \u0027we need to a way\u0027","commit_id":"9205bdce28108bca2891b2883b5c8a59a919acd4"},{"author":{"_account_id":8932,"name":"Telles Mota Vidal Nóbrega","email":"tellesnobrega@gmail.com","username":"tellesnobrega"},"change_message_id":"26cf0937dc58096fb5544be7eb390ad6a5c366cf","unresolved":false,"context_lines":[{"line_number":86,"context_line":"Database"},{"line_number":87,"context_line":"--------"},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"Since we are sending the snapshot to be stored in swift we need to a way to"},{"line_number":90,"context_line":"identify the type of the backup. For that we will add a column \u0027type\u0027 to the"},{"line_number":91,"context_line":"Backups tables. This column will be a varchar column that will accept the"},{"line_number":92,"context_line":"following values:"}],"source_content_type":"text/x-rst","patch_set":7,"id":"bab6814e_56ba2b6f","line":89,"in_reply_to":"bab6814e_85de223d","updated":"2016-05-19 21:11:05.000000000","message":"Done","commit_id":"9205bdce28108bca2891b2883b5c8a59a919acd4"},{"author":{"_account_id":10295,"name":"mariam john","email":"mariamj@us.ibm.com","username":"mariamj"},"change_message_id":"4070803b3793a82072bebb0cc9742a2f8b643112","unresolved":false,"context_lines":[{"line_number":135,"context_line":"the file system need to be quiesced before the snapshot. We will call from the"},{"line_number":136,"context_line":"task manager to quiesce the the file system and the db and the guest agent will"},{"line_number":137,"context_line":"be responsible for doing so. Once the snapshot is finished another call will be"},{"line_number":138,"context_line":"made from the ask manager requesting the guest agent to unquiesce the file"},{"line_number":139,"context_line":"system and the db."},{"line_number":140,"context_line":"The freeze calls and snapshots are going to be done synchronously and"},{"line_number":141,"context_line":"therefore we are adding timeouts for theses calls avoding the risk of"}],"source_content_type":"text/x-rst","patch_set":7,"id":"bab6814e_e573ae13","line":138,"updated":"2016-05-19 19:20:31.000000000","message":"typo: missing \u0027t\u0027 from task manager","commit_id":"9205bdce28108bca2891b2883b5c8a59a919acd4"},{"author":{"_account_id":8932,"name":"Telles Mota Vidal Nóbrega","email":"tellesnobrega@gmail.com","username":"tellesnobrega"},"change_message_id":"26cf0937dc58096fb5544be7eb390ad6a5c366cf","unresolved":false,"context_lines":[{"line_number":135,"context_line":"the file system need to be quiesced before the snapshot. We will call from the"},{"line_number":136,"context_line":"task manager to quiesce the the file system and the db and the guest agent will"},{"line_number":137,"context_line":"be responsible for doing so. Once the snapshot is finished another call will be"},{"line_number":138,"context_line":"made from the ask manager requesting the guest agent to unquiesce the file"},{"line_number":139,"context_line":"system and the db."},{"line_number":140,"context_line":"The freeze calls and snapshots are going to be done synchronously and"},{"line_number":141,"context_line":"therefore we are adding timeouts for theses calls avoding the risk of"}],"source_content_type":"text/x-rst","patch_set":7,"id":"bab6814e_3664c720","line":138,"in_reply_to":"bab6814e_e573ae13","updated":"2016-05-19 21:11:05.000000000","message":"Done","commit_id":"9205bdce28108bca2891b2883b5c8a59a919acd4"},{"author":{"_account_id":10295,"name":"mariam john","email":"mariamj@us.ibm.com","username":"mariamj"},"change_message_id":"4070803b3793a82072bebb0cc9742a2f8b643112","unresolved":false,"context_lines":[{"line_number":138,"context_line":"made from the ask manager requesting the guest agent to unquiesce the file"},{"line_number":139,"context_line":"system and the db."},{"line_number":140,"context_line":"The freeze calls and snapshots are going to be done synchronously and"},{"line_number":141,"context_line":"therefore we are adding timeouts for theses calls avoding the risk of"},{"line_number":142,"context_line":"being locked for too long on a single call."},{"line_number":143,"context_line":""},{"line_number":144,"context_line":"The restore process will work differently than it works today. Since the"}],"source_content_type":"text/x-rst","patch_set":7,"id":"bab6814e_e54a8eab","line":141,"updated":"2016-05-19 19:20:31.000000000","message":"\u0027i\u0027 missing from avoiding","commit_id":"9205bdce28108bca2891b2883b5c8a59a919acd4"},{"author":{"_account_id":8932,"name":"Telles Mota Vidal Nóbrega","email":"tellesnobrega@gmail.com","username":"tellesnobrega"},"change_message_id":"26cf0937dc58096fb5544be7eb390ad6a5c366cf","unresolved":false,"context_lines":[{"line_number":138,"context_line":"made from the ask manager requesting the guest agent to unquiesce the file"},{"line_number":139,"context_line":"system and the db."},{"line_number":140,"context_line":"The freeze calls and snapshots are going to be done synchronously and"},{"line_number":141,"context_line":"therefore we are adding timeouts for theses calls avoding the risk of"},{"line_number":142,"context_line":"being locked for too long on a single call."},{"line_number":143,"context_line":""},{"line_number":144,"context_line":"The restore process will work differently than it works today. Since the"}],"source_content_type":"text/x-rst","patch_set":7,"id":"bab6814e_56718bdf","line":141,"in_reply_to":"bab6814e_e54a8eab","updated":"2016-05-19 21:11:05.000000000","message":"Done","commit_id":"9205bdce28108bca2891b2883b5c8a59a919acd4"},{"author":{"_account_id":10295,"name":"mariam john","email":"mariamj@us.ibm.com","username":"mariamj"},"change_message_id":"4070803b3793a82072bebb0cc9742a2f8b643112","unresolved":false,"context_lines":[{"line_number":140,"context_line":"The freeze calls and snapshots are going to be done synchronously and"},{"line_number":141,"context_line":"therefore we are adding timeouts for theses calls avoding the risk of"},{"line_number":142,"context_line":"being locked for too long on a single call."},{"line_number":143,"context_line":""},{"line_number":144,"context_line":"The restore process will work differently than it works today. Since the"},{"line_number":145,"context_line":"volume is already pre-existing, Trove will not create a new one, instead it"},{"line_number":146,"context_line":"will use the volume and perform required actions to recover the db, like"}],"source_content_type":"text/x-rst","patch_set":7,"id":"bab6814e_454b9a87","line":143,"updated":"2016-05-19 19:20:31.000000000","message":"What about the case were we quiesce the filesystem and database and something goes wrong during the snapshot process?","commit_id":"9205bdce28108bca2891b2883b5c8a59a919acd4"},{"author":{"_account_id":8932,"name":"Telles Mota Vidal Nóbrega","email":"tellesnobrega@gmail.com","username":"tellesnobrega"},"change_message_id":"26cf0937dc58096fb5544be7eb390ad6a5c366cf","unresolved":false,"context_lines":[{"line_number":140,"context_line":"The freeze calls and snapshots are going to be done synchronously and"},{"line_number":141,"context_line":"therefore we are adding timeouts for theses calls avoding the risk of"},{"line_number":142,"context_line":"being locked for too long on a single call."},{"line_number":143,"context_line":""},{"line_number":144,"context_line":"The restore process will work differently than it works today. Since the"},{"line_number":145,"context_line":"volume is already pre-existing, Trove will not create a new one, instead it"},{"line_number":146,"context_line":"will use the volume and perform required actions to recover the db, like"}],"source_content_type":"text/x-rst","patch_set":7,"id":"bab6814e_7645af6e","line":143,"in_reply_to":"bab6814e_454b9a87","updated":"2016-05-19 21:11:05.000000000","message":"We will have a fallback. If anything goes bad during the snapshot we will notify the user and unquiesce everything.","commit_id":"9205bdce28108bca2891b2883b5c8a59a919acd4"},{"author":{"_account_id":10295,"name":"mariam john","email":"mariamj@us.ibm.com","username":"mariamj"},"change_message_id":"4070803b3793a82072bebb0cc9742a2f8b643112","unresolved":false,"context_lines":[{"line_number":144,"context_line":"The restore process will work differently than it works today. Since the"},{"line_number":145,"context_line":"volume is already pre-existing, Trove will not create a new one, instead it"},{"line_number":146,"context_line":"will use the volume and perform required actions to recover the db, like"},{"line_number":147,"context_line":"putting the DB conf file in place."},{"line_number":148,"context_line":""},{"line_number":149,"context_line":""},{"line_number":150,"context_line":"Alternatives"}],"source_content_type":"text/x-rst","patch_set":7,"id":"bab6814e_10e9ce14","line":147,"updated":"2016-05-19 19:20:31.000000000","message":"I must admit I am not too familiar with how Cinder snaphots work - so I am confused about how you explain how restore will work. Are you saying that a restore will create a new instance with the same Cinder volume as the original instance?","commit_id":"9205bdce28108bca2891b2883b5c8a59a919acd4"},{"author":{"_account_id":8932,"name":"Telles Mota Vidal Nóbrega","email":"tellesnobrega@gmail.com","username":"tellesnobrega"},"change_message_id":"26cf0937dc58096fb5544be7eb390ad6a5c366cf","unresolved":false,"context_lines":[{"line_number":144,"context_line":"The restore process will work differently than it works today. Since the"},{"line_number":145,"context_line":"volume is already pre-existing, Trove will not create a new one, instead it"},{"line_number":146,"context_line":"will use the volume and perform required actions to recover the db, like"},{"line_number":147,"context_line":"putting the DB conf file in place."},{"line_number":148,"context_line":""},{"line_number":149,"context_line":""},{"line_number":150,"context_line":"Alternatives"}],"source_content_type":"text/x-rst","patch_set":7,"id":"bab6814e_163543f6","line":147,"in_reply_to":"bab6814e_10e9ce14","updated":"2016-05-19 21:11:05.000000000","message":"Not exactly. From the snapshot we can create a new volume and this volume will be used to create a new instance. I will try to make that more clear on the text, thanks","commit_id":"9205bdce28108bca2891b2883b5c8a59a919acd4"},{"author":{"_account_id":10295,"name":"mariam john","email":"mariamj@us.ibm.com","username":"mariamj"},"change_message_id":"4070803b3793a82072bebb0cc9742a2f8b643112","unresolved":false,"context_lines":[{"line_number":203,"context_line":""},{"line_number":204,"context_line":"This spec is related to spec in [1]_. It does not completely depend on"},{"line_number":205,"context_line":"it, but it is part of the full implementation."},{"line_number":206,"context_line":""},{"line_number":207,"context_line":""},{"line_number":208,"context_line":"Testing"},{"line_number":209,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":7,"id":"bab6814e_b0f44287","line":206,"updated":"2016-05-19 19:20:31.000000000","message":"Just curious Telles, what kind of dependencies are doing to be there with the above mentioned spec?","commit_id":"9205bdce28108bca2891b2883b5c8a59a919acd4"},{"author":{"_account_id":8932,"name":"Telles Mota Vidal Nóbrega","email":"tellesnobrega@gmail.com","username":"tellesnobrega"},"change_message_id":"26cf0937dc58096fb5544be7eb390ad6a5c366cf","unresolved":false,"context_lines":[{"line_number":203,"context_line":""},{"line_number":204,"context_line":"This spec is related to spec in [1]_. It does not completely depend on"},{"line_number":205,"context_line":"it, but it is part of the full implementation."},{"line_number":206,"context_line":""},{"line_number":207,"context_line":""},{"line_number":208,"context_line":"Testing"},{"line_number":209,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":7,"id":"bab6814e_710ad922","line":206,"in_reply_to":"bab6814e_b0f44287","updated":"2016-05-19 21:11:05.000000000","message":"It is not really a dependency. I just wanted to point out that this is a small portion of a big restructuring process on how storage works on trove now. They don\u0027t depend on each other, they can coexist, but some fixes may need to be done once Amrith\u0027s code is in.","commit_id":"9205bdce28108bca2891b2883b5c8a59a919acd4"},{"author":{"_account_id":10295,"name":"mariam john","email":"mariamj@us.ibm.com","username":"mariamj"},"change_message_id":"4070803b3793a82072bebb0cc9742a2f8b643112","unresolved":false,"context_lines":[{"line_number":210,"context_line":""},{"line_number":211,"context_line":"I don\u0027t see any int tests or scenario tests for backup strategies. In this"},{"line_number":212,"context_line":"case we don\u0027t see the need to do it here."},{"line_number":213,"context_line":""},{"line_number":214,"context_line":""},{"line_number":215,"context_line":"Documentation Impact"},{"line_number":216,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":7,"id":"bab6814e_70af7a94","line":213,"updated":"2016-05-19 19:20:31.000000000","message":"There has to be some tests added in order to test this new feature. It could be unit tests or integration tests or both but some form of tests needs to be there for this feature.","commit_id":"9205bdce28108bca2891b2883b5c8a59a919acd4"},{"author":{"_account_id":8932,"name":"Telles Mota Vidal Nóbrega","email":"tellesnobrega@gmail.com","username":"tellesnobrega"},"change_message_id":"26cf0937dc58096fb5544be7eb390ad6a5c366cf","unresolved":false,"context_lines":[{"line_number":210,"context_line":""},{"line_number":211,"context_line":"I don\u0027t see any int tests or scenario tests for backup strategies. In this"},{"line_number":212,"context_line":"case we don\u0027t see the need to do it here."},{"line_number":213,"context_line":""},{"line_number":214,"context_line":""},{"line_number":215,"context_line":"Documentation Impact"},{"line_number":216,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":7,"id":"bab6814e_3127b1b7","line":213,"in_reply_to":"bab6814e_70af7a94","updated":"2016-05-19 21:11:05.000000000","message":"Unit tests are going to be for sure. I don\u0027t know if we will do integrations. I thought it was implicit that unit tests need to be done.","commit_id":"9205bdce28108bca2891b2883b5c8a59a919acd4"},{"author":{"_account_id":10295,"name":"mariam john","email":"mariamj@us.ibm.com","username":"mariamj"},"change_message_id":"4070803b3793a82072bebb0cc9742a2f8b643112","unresolved":false,"context_lines":[{"line_number":226,"context_line":""},{"line_number":227,"context_line":".. [2] https://blueprints.launchpad.net/trove/+spec/snapshot-as-backup-strategy"},{"line_number":228,"context_line":""},{"line_number":229,"context_line":""},{"line_number":230,"context_line":"Appendix"},{"line_number":231,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":232,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"bab6814e_302fb2f7","line":229,"updated":"2016-05-19 19:20:31.000000000","message":"I dont think you need to mention the link in [2]. That already is the blueprint for this spec.","commit_id":"9205bdce28108bca2891b2883b5c8a59a919acd4"},{"author":{"_account_id":8932,"name":"Telles Mota Vidal Nóbrega","email":"tellesnobrega@gmail.com","username":"tellesnobrega"},"change_message_id":"26cf0937dc58096fb5544be7eb390ad6a5c366cf","unresolved":false,"context_lines":[{"line_number":226,"context_line":""},{"line_number":227,"context_line":".. [2] https://blueprints.launchpad.net/trove/+spec/snapshot-as-backup-strategy"},{"line_number":228,"context_line":""},{"line_number":229,"context_line":""},{"line_number":230,"context_line":"Appendix"},{"line_number":231,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":232,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"bab6814e_314e916f","line":229,"in_reply_to":"bab6814e_302fb2f7","updated":"2016-05-19 21:11:05.000000000","message":"Done","commit_id":"9205bdce28108bca2891b2883b5c8a59a919acd4"},{"author":{"_account_id":10295,"name":"mariam john","email":"mariamj@us.ibm.com","username":"mariamj"},"change_message_id":"4070803b3793a82072bebb0cc9742a2f8b643112","unresolved":false,"context_lines":[{"line_number":230,"context_line":"Appendix"},{"line_number":231,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":232,"context_line":""},{"line_number":233,"context_line":"Any additional technical information and data."}],"source_content_type":"text/x-rst","patch_set":7,"id":"bab6814e_9083fe03","line":233,"updated":"2016-05-19 19:20:31.000000000","message":"If there isn\u0027t anything to include here, you can just add \u0027None\u0027 instead.","commit_id":"9205bdce28108bca2891b2883b5c8a59a919acd4"},{"author":{"_account_id":8932,"name":"Telles Mota Vidal Nóbrega","email":"tellesnobrega@gmail.com","username":"tellesnobrega"},"change_message_id":"26cf0937dc58096fb5544be7eb390ad6a5c366cf","unresolved":false,"context_lines":[{"line_number":230,"context_line":"Appendix"},{"line_number":231,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":232,"context_line":""},{"line_number":233,"context_line":"Any additional technical information and data."}],"source_content_type":"text/x-rst","patch_set":7,"id":"bab6814e_1151cd0e","line":233,"in_reply_to":"bab6814e_9083fe03","updated":"2016-05-19 21:11:05.000000000","message":"Done","commit_id":"9205bdce28108bca2891b2883b5c8a59a919acd4"},{"author":{"_account_id":10295,"name":"mariam john","email":"mariamj@us.ibm.com","username":"mariamj"},"change_message_id":"28f2b6703270cea725cee20e076f13c0d1dcd052","unresolved":false,"context_lines":[{"line_number":63,"context_line":""},{"line_number":64,"context_line":"In the case of the backup action, the user simply issues a trove"},{"line_number":65,"context_line":"backup-create call and the Cinder snapshot will be created and stored in swift."},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"In the case of the restore action, the user would need to choose the backup"},{"line_number":68,"context_line":"they want to restore and, if this backup is a Cinder snapshot, we will"},{"line_number":69,"context_line":"internally deal with the backup type and create the instance. Trove will"}],"source_content_type":"text/x-rst","patch_set":9,"id":"bab6814e_b647ecba","line":66,"updated":"2016-05-20 15:11:24.000000000","message":"Telles, I understand that Cinder will create snapshots but I think we need to verify where this snapshot is going to be stored before we store them in Swift. I guess we need to check if there is space to store these snapshots and also verify if we need to delete them from the instance. Just some thoughts.","commit_id":"ec2350329b18d579cebb060a3bb4b8599f730e20"},{"author":{"_account_id":8932,"name":"Telles Mota Vidal Nóbrega","email":"tellesnobrega@gmail.com","username":"tellesnobrega"},"change_message_id":"5ceb4b978667800ed2e6a5ba8ad50de42da3063c","unresolved":false,"context_lines":[{"line_number":63,"context_line":""},{"line_number":64,"context_line":"In the case of the backup action, the user simply issues a trove"},{"line_number":65,"context_line":"backup-create call and the Cinder snapshot will be created and stored in swift."},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"In the case of the restore action, the user would need to choose the backup"},{"line_number":68,"context_line":"they want to restore and, if this backup is a Cinder snapshot, we will"},{"line_number":69,"context_line":"internally deal with the backup type and create the instance. Trove will"}],"source_content_type":"text/x-rst","patch_set":9,"id":"bab6814e_d1e2702e","line":66,"in_reply_to":"bab6814e_b647ecba","updated":"2016-05-20 18:49:48.000000000","message":"So, the snapshot is not being done from inside the trove instance, it is completely on the outside, the only problem with storage would be available quotas for snapshoting. We won\u0027t store it in the instance, so no need to check the space or delete the snapshot.","commit_id":"ec2350329b18d579cebb060a3bb4b8599f730e20"},{"author":{"_account_id":10295,"name":"mariam john","email":"mariamj@us.ibm.com","username":"mariamj"},"change_message_id":"28f2b6703270cea725cee20e076f13c0d1dcd052","unresolved":false,"context_lines":[{"line_number":87,"context_line":"something goes wrong we will add:"},{"line_number":88,"context_line":"- agent_db_quiesce_timeout: timeout of the db quiesce and unquiesce operations"},{"line_number":89,"context_line":"- agent_fs_quiesce_timeout: timeout of the filesystem quiesce and unquiesce"},{"line_number":90,"context_line":"operations"},{"line_number":91,"context_line":""},{"line_number":92,"context_line":"Database"},{"line_number":93,"context_line":"--------"}],"source_content_type":"text/x-rst","patch_set":9,"id":"bab6814e_ab75c9fa","line":90,"updated":"2016-05-20 15:11:24.000000000","message":"I dont think putting the new strategy for snapshot backup \u0026 restore should go under /trove/guestagent/strategies/backup/experimental. experimental folder is for the datastores and I dont think it should be the place were we put this. But will let others weigh in.","commit_id":"ec2350329b18d579cebb060a3bb4b8599f730e20"},{"author":{"_account_id":8932,"name":"Telles Mota Vidal Nóbrega","email":"tellesnobrega@gmail.com","username":"tellesnobrega"},"change_message_id":"aef2cb1844837d91b0f5c63586ed18ad963e7547","unresolved":false,"context_lines":[{"line_number":87,"context_line":"something goes wrong we will add:"},{"line_number":88,"context_line":"- agent_db_quiesce_timeout: timeout of the db quiesce and unquiesce operations"},{"line_number":89,"context_line":"- agent_fs_quiesce_timeout: timeout of the filesystem quiesce and unquiesce"},{"line_number":90,"context_line":"operations"},{"line_number":91,"context_line":""},{"line_number":92,"context_line":"Database"},{"line_number":93,"context_line":"--------"}],"source_content_type":"text/x-rst","patch_set":9,"id":"bab6814e_992efff8","line":90,"in_reply_to":"bab6814e_11d7d84b","updated":"2016-05-23 20:18:51.000000000","message":"@mariam you are 100% correct that this shouldn\u0027t live in guestagent.strategies.backups.experimental. The first reason is, this backup is different from the rest in the sense that it doesn\u0027t run on the guest, but on the control plane, so this agrees with your point and can\u0027t live on a guest directory. The other part is this backup probably won\u0027t exist as a single file as the others. We will detect the selected strategy and if so call the GA from the TM with the already explaining workflow of actions, this is not necessarily a single strategy file is what I mean, may be checks on the current code and some abstraction layer to makes things more organized.","commit_id":"ec2350329b18d579cebb060a3bb4b8599f730e20"},{"author":{"_account_id":8932,"name":"Telles Mota Vidal Nóbrega","email":"tellesnobrega@gmail.com","username":"tellesnobrega"},"change_message_id":"5ceb4b978667800ed2e6a5ba8ad50de42da3063c","unresolved":false,"context_lines":[{"line_number":87,"context_line":"something goes wrong we will add:"},{"line_number":88,"context_line":"- agent_db_quiesce_timeout: timeout of the db quiesce and unquiesce operations"},{"line_number":89,"context_line":"- agent_fs_quiesce_timeout: timeout of the filesystem quiesce and unquiesce"},{"line_number":90,"context_line":"operations"},{"line_number":91,"context_line":""},{"line_number":92,"context_line":"Database"},{"line_number":93,"context_line":"--------"}],"source_content_type":"text/x-rst","patch_set":9,"id":"bab6814e_11d7d84b","line":90,"in_reply_to":"bab6814e_ab75c9fa","updated":"2016-05-20 18:49:48.000000000","message":"Makes sense, I would like some input from others as well, maybe we can discuss on the next trove meeting.","commit_id":"ec2350329b18d579cebb060a3bb4b8599f730e20"},{"author":{"_account_id":10295,"name":"mariam john","email":"mariamj@us.ibm.com","username":"mariamj"},"change_message_id":"28f2b6703270cea725cee20e076f13c0d1dcd052","unresolved":false,"context_lines":[{"line_number":155,"context_line":"the volume is already pre-existing, Trove will not create a new one,"},{"line_number":156,"context_line":"instead it will use the volume and perform required actions to recover the db,"},{"line_number":157,"context_line":"like putting the DB conf file in place."},{"line_number":158,"context_line":""},{"line_number":159,"context_line":""},{"line_number":160,"context_line":"Alternatives"},{"line_number":161,"context_line":"------------"}],"source_content_type":"text/x-rst","patch_set":9,"id":"bab6814e_eb96b1ee","line":158,"updated":"2016-05-20 15:11:24.000000000","message":"Does this backup mechanism also take care of user backup?","commit_id":"ec2350329b18d579cebb060a3bb4b8599f730e20"},{"author":{"_account_id":8932,"name":"Telles Mota Vidal Nóbrega","email":"tellesnobrega@gmail.com","username":"tellesnobrega"},"change_message_id":"f12ed331dcea1ee1cbaac69ad80d3ab7fa8a879e","unresolved":false,"context_lines":[{"line_number":155,"context_line":"the volume is already pre-existing, Trove will not create a new one,"},{"line_number":156,"context_line":"instead it will use the volume and perform required actions to recover the db,"},{"line_number":157,"context_line":"like putting the DB conf file in place."},{"line_number":158,"context_line":""},{"line_number":159,"context_line":""},{"line_number":160,"context_line":"Alternatives"},{"line_number":161,"context_line":"------------"}],"source_content_type":"text/x-rst","patch_set":9,"id":"bab6814e_4cf1b794","line":158,"in_reply_to":"bab6814e_5bf32f73","updated":"2016-05-26 22:56:49.000000000","message":"Everything that is stored on the database volume will be available on the new instance. That will account for users, databases, data.","commit_id":"ec2350329b18d579cebb060a3bb4b8599f730e20"},{"author":{"_account_id":10295,"name":"mariam john","email":"mariamj@us.ibm.com","username":"mariamj"},"change_message_id":"477dd071d4091826519b8d3183e21037c60c1eba","unresolved":false,"context_lines":[{"line_number":155,"context_line":"the volume is already pre-existing, Trove will not create a new one,"},{"line_number":156,"context_line":"instead it will use the volume and perform required actions to recover the db,"},{"line_number":157,"context_line":"like putting the DB conf file in place."},{"line_number":158,"context_line":""},{"line_number":159,"context_line":""},{"line_number":160,"context_line":"Alternatives"},{"line_number":161,"context_line":"------------"}],"source_content_type":"text/x-rst","patch_set":9,"id":"bab6814e_5bf32f73","line":158,"in_reply_to":"bab6814e_914aa824","updated":"2016-05-26 21:21:57.000000000","message":"So Telles, on a given instance we can create users and database. Using Cinder snapshot, we can easily backup data in database. What about the users? Is there a way/process for recreating users on the new instance?","commit_id":"ec2350329b18d579cebb060a3bb4b8599f730e20"},{"author":{"_account_id":8932,"name":"Telles Mota Vidal Nóbrega","email":"tellesnobrega@gmail.com","username":"tellesnobrega"},"change_message_id":"5ceb4b978667800ed2e6a5ba8ad50de42da3063c","unresolved":false,"context_lines":[{"line_number":155,"context_line":"the volume is already pre-existing, Trove will not create a new one,"},{"line_number":156,"context_line":"instead it will use the volume and perform required actions to recover the db,"},{"line_number":157,"context_line":"like putting the DB conf file in place."},{"line_number":158,"context_line":""},{"line_number":159,"context_line":""},{"line_number":160,"context_line":"Alternatives"},{"line_number":161,"context_line":"------------"}],"source_content_type":"text/x-rst","patch_set":9,"id":"bab6814e_914aa824","line":158,"in_reply_to":"bab6814e_eb96b1ee","updated":"2016-05-20 18:49:48.000000000","message":"What do you mean? If you are asking if it backs up the data from the trove instance database, yes.","commit_id":"ec2350329b18d579cebb060a3bb4b8599f730e20"}]}
