)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":7730,"name":"Sahid Orentino Ferdjaoui","email":"sahid.ferdjaoui@industrialdiscipline.com","username":"sahid"},"change_message_id":"0ad6d00be17a5245c7bdb01eef4631aac49c3fcb","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Timofey Durakov \u003ctdurakov@mirantis.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2015-04-13 11:06:49 +0300"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Fix for live migration rollback when using shared storage"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"If compute nodes use shared-storage no network cleanup happens"},{"line_number":10,"context_line":"on destionation node. So cleanup flag is set to True for every type"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"7aaa499b_4941f60a","line":7,"updated":"2015-04-13 12:08:23.000000000","message":"rollback/post","commit_id":"96df257764e2f8ea4e51f4a1ed9ced313950ac50"},{"author":{"_account_id":7730,"name":"Sahid Orentino Ferdjaoui","email":"sahid.ferdjaoui@industrialdiscipline.com","username":"sahid"},"change_message_id":"0ad6d00be17a5245c7bdb01eef4631aac49c3fcb","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Fix for live migration rollback when using shared storage"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"If compute nodes use shared-storage no network cleanup happens"},{"line_number":10,"context_line":"on destionation node. So cleanup flag is set to True for every type"},{"line_number":11,"context_line":"of live-migration. Also changed logic for destroy disks."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Closes-bug: #1284719"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"7aaa499b_29146af3","line":10,"updated":"2015-04-13 12:08:23.000000000","message":"So now cleanup will be call for shared-storage in post_live_migration, i do not think it is something we want here.","commit_id":"96df257764e2f8ea4e51f4a1ed9ced313950ac50"},{"author":{"_account_id":14819,"name":"Timofey Durakov","email":"timofei.nd@gmail.com","username":"tdurakov"},"change_message_id":"c25ca60b6be6f508513404074db68bc7218b4614","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Fix for live migration rollback when using shared storage"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"If compute nodes use shared-storage no network cleanup happens"},{"line_number":10,"context_line":"on destionation node. So cleanup flag is set to True for every type"},{"line_number":11,"context_line":"of live-migration. Also changed logic for destroy disks."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Closes-bug: #1284719"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"7aaa499b_cc063420","line":10,"in_reply_to":"7aaa499b_29146af3","updated":"2015-04-13 13:05:53.000000000","message":"sahid, thanks for comment. Could you explain why do you think so?","commit_id":"96df257764e2f8ea4e51f4a1ed9ced313950ac50"}],"nova/compute/manager.py":[{"author":{"_account_id":14174,"name":"Bart Wensley","email":"bartwensley@hotmail.com","username":"bartwensley"},"change_message_id":"2f55284daf92260448080ddc64ce133cd6322ea5","unresolved":false,"context_lines":[{"line_number":5228,"context_line":"        # NOTE(angdraug): block migration wouldn\u0027t have been allowed if either"},{"line_number":5229,"context_line":"        #                 block storage or instance path were shared"},{"line_number":5230,"context_line":"        is_shared_block_storage \u003d not block_migration"},{"line_number":5231,"context_line":"        is_shared_instance_path \u003d not block_migration"},{"line_number":5232,"context_line":"        if migrate_data:"},{"line_number":5233,"context_line":"            is_shared_block_storage \u003d migrate_data.get("},{"line_number":5234,"context_line":"                    \u0027is_shared_block_storage\u0027, is_shared_block_storage)"}],"source_content_type":"text/x-python","patch_set":1,"id":"9aa53dc9_5e0ff236","line":5231,"updated":"2015-04-09 16:03:49.000000000","message":"The is_shared_instance_path variable is no longer used - remove it.","commit_id":"6dc2dfba17084eb870e22dd98ab1112ca6edd0be"},{"author":{"_account_id":14819,"name":"Timofey Durakov","email":"timofei.nd@gmail.com","username":"tdurakov"},"change_message_id":"439c284afd428ecbeb4c1aa71916e235bce809f3","unresolved":false,"context_lines":[{"line_number":5228,"context_line":"        # NOTE(angdraug): block migration wouldn\u0027t have been allowed if either"},{"line_number":5229,"context_line":"        #                 block storage or instance path were shared"},{"line_number":5230,"context_line":"        is_shared_block_storage \u003d not block_migration"},{"line_number":5231,"context_line":"        is_shared_instance_path \u003d not block_migration"},{"line_number":5232,"context_line":"        if migrate_data:"},{"line_number":5233,"context_line":"            is_shared_block_storage \u003d migrate_data.get("},{"line_number":5234,"context_line":"                    \u0027is_shared_block_storage\u0027, is_shared_block_storage)"}],"source_content_type":"text/x-python","patch_set":1,"id":"9aa53dc9_2633f263","line":5231,"in_reply_to":"9aa53dc9_5e0ff236","updated":"2015-04-10 06:47:47.000000000","message":"Done","commit_id":"6dc2dfba17084eb870e22dd98ab1112ca6edd0be"},{"author":{"_account_id":14174,"name":"Bart Wensley","email":"bartwensley@hotmail.com","username":"bartwensley"},"change_message_id":"2f55284daf92260448080ddc64ce133cd6322ea5","unresolved":false,"context_lines":[{"line_number":5235,"context_line":"            is_shared_instance_path \u003d migrate_data.get("},{"line_number":5236,"context_line":"                    \u0027is_shared_instance_path\u0027, is_shared_instance_path)"},{"line_number":5237,"context_line":""},{"line_number":5238,"context_line":"        # No instance booting at source host, but instance dir"},{"line_number":5239,"context_line":"        # must be deleted for preparing next block migration"},{"line_number":5240,"context_line":"        # must be deleted for preparing next live migration w/o shared storage"},{"line_number":5241,"context_line":"        do_cleanup \u003d True"}],"source_content_type":"text/x-python","patch_set":1,"id":"9aa53dc9_fe536637","line":5238,"updated":"2015-04-09 16:03:49.000000000","message":"The comment is no longer valid. Replace comment with an explanation of why do_cleanup is always going to be True now.","commit_id":"6dc2dfba17084eb870e22dd98ab1112ca6edd0be"},{"author":{"_account_id":14819,"name":"Timofey Durakov","email":"timofei.nd@gmail.com","username":"tdurakov"},"change_message_id":"439c284afd428ecbeb4c1aa71916e235bce809f3","unresolved":false,"context_lines":[{"line_number":5235,"context_line":"            is_shared_instance_path \u003d migrate_data.get("},{"line_number":5236,"context_line":"                    \u0027is_shared_instance_path\u0027, is_shared_instance_path)"},{"line_number":5237,"context_line":""},{"line_number":5238,"context_line":"        # No instance booting at source host, but instance dir"},{"line_number":5239,"context_line":"        # must be deleted for preparing next block migration"},{"line_number":5240,"context_line":"        # must be deleted for preparing next live migration w/o shared storage"},{"line_number":5241,"context_line":"        do_cleanup \u003d True"}],"source_content_type":"text/x-python","patch_set":1,"id":"9aa53dc9_0638ee3b","line":5238,"in_reply_to":"9aa53dc9_fe536637","updated":"2015-04-10 06:47:47.000000000","message":"Done","commit_id":"6dc2dfba17084eb870e22dd98ab1112ca6edd0be"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"1a118bc0b3cf7a433aff96fed8cbd9c256b77cf9","unresolved":false,"context_lines":[{"line_number":5235,"context_line":"        # live-migration. Otherwise, there could be resources, such as network,"},{"line_number":5236,"context_line":"        # not cleaned during rollback method, or during after"},{"line_number":5237,"context_line":"        # live-migration cleanup."},{"line_number":5238,"context_line":"        do_cleanup \u003d True"},{"line_number":5239,"context_line":"        destroy_disks \u003d not is_shared_block_storage"},{"line_number":5240,"context_line":""},{"line_number":5241,"context_line":"        return (do_cleanup, destroy_disks)"}],"source_content_type":"text/x-python","patch_set":3,"id":"5afe65bd_13f2fc6f","line":5238,"updated":"2015-06-02 23:09:56.000000000","message":"I think changing this to do_cleanup in every case will destroy the instance (virt domain) in the shared storage case, which would destroy it \"everywhere\" (since it is not really going to move).\n\nI understand the network case though, so I think this patch should focus on enabling unplug_vifs to run even when it\u0027s shared storage.","commit_id":"96df257764e2f8ea4e51f4a1ed9ced313950ac50"}],"nova/virt/libvirt/driver.py":[{"author":{"_account_id":8213,"name":"Claudiu Belu","email":"cbelu@cloudbasesolutions.com","username":"claudiub"},"change_message_id":"6cb687b2cfb33dc2a0473fd9ce86930bd1eb2a3f","unresolved":false,"context_lines":[{"line_number":834,"context_line":"        if destroy_disks or ("},{"line_number":835,"context_line":"                migrate_data and migrate_data.get(\u0027is_shared_block_storage\u0027,"},{"line_number":836,"context_line":"                                            False) and not migrate_data.get("},{"line_number":837,"context_line":"                                            \u0027is_shared_instance_path\u0027, False)):"},{"line_number":838,"context_line":"            attempts \u003d int(instance.system_metadata.get(\u0027clean_attempts\u0027,"},{"line_number":839,"context_line":"                                                        \u00270\u0027))"},{"line_number":840,"context_line":"            success \u003d self.delete_instance_files(instance)"}],"source_content_type":"text/x-python","patch_set":2,"id":"9aa53dc9_b5d03d20","line":837,"updated":"2015-04-10 12:23:12.000000000","message":"I think this should be cleaned up a bit, so it looks better. I suggest:\n\n    if destroy disks or (migrate_data and migrate_data.get(\n           \"is_shared_block_storage\", False) and not migrate_data.get(\n           \"is_shared_instance_path\", False):\n\nalternatively, since get returns None as default - which means it is still evaluated as False:\n\n    if destroy disks or (migrate_data and migrate_data.get(\n           \"is_shared_block_storage\") and not migrate_data.get(\n           \"is_shared_instance_path\"):","commit_id":"c88c87829a879a0ebb3295d3e7a1aedf9a7177af"},{"author":{"_account_id":14819,"name":"Timofey Durakov","email":"timofei.nd@gmail.com","username":"tdurakov"},"change_message_id":"c76aef1e2cefaa44730f448ed74137c76fc1d2b5","unresolved":false,"context_lines":[{"line_number":834,"context_line":"        if destroy_disks or ("},{"line_number":835,"context_line":"                migrate_data and migrate_data.get(\u0027is_shared_block_storage\u0027,"},{"line_number":836,"context_line":"                                            False) and not migrate_data.get("},{"line_number":837,"context_line":"                                            \u0027is_shared_instance_path\u0027, False)):"},{"line_number":838,"context_line":"            attempts \u003d int(instance.system_metadata.get(\u0027clean_attempts\u0027,"},{"line_number":839,"context_line":"                                                        \u00270\u0027))"},{"line_number":840,"context_line":"            success \u003d self.delete_instance_files(instance)"}],"source_content_type":"text/x-python","patch_set":2,"id":"7aaa499b_4288b6e7","line":837,"in_reply_to":"9aa53dc9_b5d03d20","updated":"2015-04-13 08:13:45.000000000","message":"Done","commit_id":"c88c87829a879a0ebb3295d3e7a1aedf9a7177af"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"1a118bc0b3cf7a433aff96fed8cbd9c256b77cf9","unresolved":false,"context_lines":[{"line_number":833,"context_line":""},{"line_number":834,"context_line":"        if destroy_disks or (migrate_data and migrate_data.get("},{"line_number":835,"context_line":"                \u0027is_shared_block_storage\u0027, False) and not migrate_data.get("},{"line_number":836,"context_line":"                \u0027is_shared_instance_path\u0027, False)):"},{"line_number":837,"context_line":"            attempts \u003d int(instance.system_metadata.get(\u0027clean_attempts\u0027,"},{"line_number":838,"context_line":"                                                        \u00270\u0027))"},{"line_number":839,"context_line":"            success \u003d self.delete_instance_files(instance)"}],"source_content_type":"text/x-python","patch_set":3,"id":"5afe65bd_53c0742a","line":836,"updated":"2015-06-02 23:09:56.000000000","message":"I think we don\u0027t want to move logic from nova/compute/manager.py into the libvirt driver because there are other drivers this needs to work with.","commit_id":"96df257764e2f8ea4e51f4a1ed9ced313950ac50"}]}
