)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":7461,"name":"Paul Murray","email":"pmurray@hpe.com","username":"ptm"},"change_message_id":"140f8d35b7874c0d50582e7ebe3fb6c6d9b8230c","unresolved":false,"context_lines":[{"line_number":12,"context_line":"it gets unshelved."},{"line_number":13,"context_line":"This change add the call to the terminate_volume_connections on the"},{"line_number":14,"context_line":"shelve_offload_instance method in the compute manager."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"Change-Id: I8849ae0f54605e003d5b294ca3d66dcef89d7d27"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"7a740942_0ec7b296","line":15,"updated":"2015-12-14 12:16:38.000000000","message":"Bug# or blueprint here","commit_id":"6b15f9a3e4a604907e1442e6a8719ade7039783a"},{"author":{"_account_id":1865,"name":"Andrea Rosa","email":"andrea.rosa@gmail.com","username":"andrea-rosa-m"},"change_message_id":"98a5b7201f18484a0079eece8dda6c482e15de6a","unresolved":false,"context_lines":[{"line_number":12,"context_line":"it gets unshelved."},{"line_number":13,"context_line":"This change add the call to the terminate_volume_connections on the"},{"line_number":14,"context_line":"shelve_offload_instance method in the compute manager."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"Change-Id: I8849ae0f54605e003d5b294ca3d66dcef89d7d27"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"7a740942_9d5bd321","line":15,"in_reply_to":"7a740942_0ec7b296","updated":"2015-12-14 15:04:06.000000000","message":"This is a change a discovered looking at the code, so no BP associated and\nthere is no bug logged for this, do I need to create one?","commit_id":"6b15f9a3e4a604907e1442e6a8719ade7039783a"},{"author":{"_account_id":7173,"name":"Scott DAngelo","email":"scott.dangelo@gmail.com","username":"scottda"},"change_message_id":"d192c82c0ef71c0620df58d574793f6d497220e0","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Call terminate_connection when shelve_offloading"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"When nova performs a shelve offload for an instance needs to terminate"},{"line_number":10,"context_line":"all the volume connections for that instance as with the shelve offload"},{"line_number":11,"context_line":"is not guarantee that the instance will be placed on the same host once"},{"line_number":12,"context_line":"it gets unshelved."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"5a710552_32a14f95","line":9,"updated":"2015-12-15 15:55:53.000000000","message":"\"instance needs\" -\u003e \"instance, it needs\"","commit_id":"a10cdc78763d34ce2b200e8b8ba5022b8cc55bfa"},{"author":{"_account_id":1865,"name":"Andrea Rosa","email":"andrea.rosa@gmail.com","username":"andrea-rosa-m"},"change_message_id":"92c834cb186fc30b81b12bcdfa466da3f649e741","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Call terminate_connection when shelve_offloading"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"When nova performs a shelve offload for an instance needs to terminate"},{"line_number":10,"context_line":"all the volume connections for that instance as with the shelve offload"},{"line_number":11,"context_line":"is not guarantee that the instance will be placed on the same host once"},{"line_number":12,"context_line":"it gets unshelved."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"7af24918_f93137a3","line":9,"in_reply_to":"5a710552_32a14f95","updated":"2016-03-04 09:42:01.000000000","message":"Done","commit_id":"a10cdc78763d34ce2b200e8b8ba5022b8cc55bfa"},{"author":{"_account_id":7173,"name":"Scott DAngelo","email":"scott.dangelo@gmail.com","username":"scottda"},"change_message_id":"d192c82c0ef71c0620df58d574793f6d497220e0","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"When nova performs a shelve offload for an instance needs to terminate"},{"line_number":10,"context_line":"all the volume connections for that instance as with the shelve offload"},{"line_number":11,"context_line":"is not guarantee that the instance will be placed on the same host once"},{"line_number":12,"context_line":"it gets unshelved."},{"line_number":13,"context_line":"This change add the call to the terminate_volume_connections on the"},{"line_number":14,"context_line":"shelve_offload_instance method in the compute manager."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"5a710552_72035774","line":11,"updated":"2015-12-15 15:55:53.000000000","message":"\"offload is\" -\u003e \"offload it is\"\nguarnatee -\u003e guaranteed","commit_id":"a10cdc78763d34ce2b200e8b8ba5022b8cc55bfa"},{"author":{"_account_id":1865,"name":"Andrea Rosa","email":"andrea.rosa@gmail.com","username":"andrea-rosa-m"},"change_message_id":"92c834cb186fc30b81b12bcdfa466da3f649e741","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"When nova performs a shelve offload for an instance needs to terminate"},{"line_number":10,"context_line":"all the volume connections for that instance as with the shelve offload"},{"line_number":11,"context_line":"is not guarantee that the instance will be placed on the same host once"},{"line_number":12,"context_line":"it gets unshelved."},{"line_number":13,"context_line":"This change add the call to the terminate_volume_connections on the"},{"line_number":14,"context_line":"shelve_offload_instance method in the compute manager."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"7af24918_192fc33f","line":11,"in_reply_to":"5a710552_72035774","updated":"2016-03-04 09:42:01.000000000","message":"Done","commit_id":"a10cdc78763d34ce2b200e8b8ba5022b8cc55bfa"},{"author":{"_account_id":7173,"name":"Scott DAngelo","email":"scott.dangelo@gmail.com","username":"scottda"},"change_message_id":"d192c82c0ef71c0620df58d574793f6d497220e0","unresolved":false,"context_lines":[{"line_number":10,"context_line":"all the volume connections for that instance as with the shelve offload"},{"line_number":11,"context_line":"is not guarantee that the instance will be placed on the same host once"},{"line_number":12,"context_line":"it gets unshelved."},{"line_number":13,"context_line":"This change add the call to the terminate_volume_connections on the"},{"line_number":14,"context_line":"shelve_offload_instance method in the compute manager."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"Partially implements blueprint: volume-ops-when-shelved"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"5a710552_921283b3","line":13,"updated":"2015-12-15 15:55:53.000000000","message":"add -\u003e adds","commit_id":"a10cdc78763d34ce2b200e8b8ba5022b8cc55bfa"},{"author":{"_account_id":1865,"name":"Andrea Rosa","email":"andrea.rosa@gmail.com","username":"andrea-rosa-m"},"change_message_id":"92c834cb186fc30b81b12bcdfa466da3f649e741","unresolved":false,"context_lines":[{"line_number":10,"context_line":"all the volume connections for that instance as with the shelve offload"},{"line_number":11,"context_line":"is not guarantee that the instance will be placed on the same host once"},{"line_number":12,"context_line":"it gets unshelved."},{"line_number":13,"context_line":"This change add the call to the terminate_volume_connections on the"},{"line_number":14,"context_line":"shelve_offload_instance method in the compute manager."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"Partially implements blueprint: volume-ops-when-shelved"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"7af24918_d9027bb3","line":13,"in_reply_to":"5a710552_921283b3","updated":"2016-03-04 09:42:01.000000000","message":"Done","commit_id":"a10cdc78763d34ce2b200e8b8ba5022b8cc55bfa"}],"nova/compute/manager.py":[{"author":{"_account_id":7461,"name":"Paul Murray","email":"pmurray@hpe.com","username":"ptm"},"change_message_id":"140f8d35b7874c0d50582e7ebe3fb6c6d9b8230c","unresolved":false,"context_lines":[{"line_number":4217,"context_line":""},{"line_number":4218,"context_line":"        block_device_info \u003d self._get_instance_block_device_info(context,"},{"line_number":4219,"context_line":"                                                                 instance,"},{"line_number":4220,"context_line":"                                                                 bdms\u003dbdms)"},{"line_number":4221,"context_line":"        self.driver.destroy(context, instance, network_info,"},{"line_number":4222,"context_line":"                block_device_info)"},{"line_number":4223,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"7a740942_ee4ee636","line":4220,"updated":"2015-12-14 12:16:38.000000000","message":"Adding bdms here as you need it below - looks good I think - saves the extra lookup.","commit_id":"6b15f9a3e4a604907e1442e6a8719ade7039783a"},{"author":{"_account_id":20354,"name":"Shoham Peller","email":"shohamp@gmail.com","username":"shoham.peller"},"change_message_id":"55d581aeac106c56ead3f51211eca036a3c89d04","unresolved":false,"context_lines":[{"line_number":4294,"context_line":""},{"line_number":4295,"context_line":"        # the instance is going to be removed from the host so we want to"},{"line_number":4296,"context_line":"        # terminate all the connections with the volume server and the host"},{"line_number":4297,"context_line":"        self._terminate_volume_connections(context, instance, bdms)"},{"line_number":4298,"context_line":""},{"line_number":4299,"context_line":"        instance.power_state \u003d current_power_state"},{"line_number":4300,"context_line":"        instance.host \u003d None"}],"source_content_type":"text/x-python","patch_set":3,"id":"5a18252c_be4c9d77","line":4297,"updated":"2016-04-11 22:48:45.000000000","message":"Notice this will possibly cause a double call to terminate_connection, once when shelve_offloading the instance, and after it\u0027s shelved, if a user calls detach_volume, it will call terminate_connection again in _local_cleanup_bdm_volumes in nova/compute/api.py\nNormally a double call to terminate_connection is okay on cinder side, but it should be avoided nonetheless.\nWith this change, the terminate_connection in api.py can and should be removed altogether IMHO. I can\u0027t think of a flow that the api.py terminate_connection will be called without this previous call to terminate_connection already happened.","commit_id":"6835af49e9d6bdfafbac9a25a6c92d6fdb415ca5"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"4a5fe7bcc2f1a3434363d7361ffe8b1517290179","unresolved":false,"context_lines":[{"line_number":4294,"context_line":""},{"line_number":4295,"context_line":"        # the instance is going to be removed from the host so we want to"},{"line_number":4296,"context_line":"        # terminate all the connections with the volume server and the host"},{"line_number":4297,"context_line":"        self._terminate_volume_connections(context, instance, bdms)"},{"line_number":4298,"context_line":""},{"line_number":4299,"context_line":"        instance.power_state \u003d current_power_state"},{"line_number":4300,"context_line":"        instance.host \u003d None"}],"source_content_type":"text/x-python","patch_set":3,"id":"9ff52f3f_21140ea0","line":4297,"in_reply_to":"5a18252c_be4c9d77","updated":"2017-04-13 18:29:38.000000000","message":"We can\u0027t make assumptions in the API about what the computes are doing, because nova supports n-1 computes for rolling upgrades, so while you may handle this here in the compute for the current release, the API can\u0027t rely on that because the n-1 compute won\u0027t call terminate connection.","commit_id":"6835af49e9d6bdfafbac9a25a6c92d6fdb415ca5"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"a2dfac103f3bb9c54455cb139bde12571eaca6cc","unresolved":false,"context_lines":[{"line_number":4294,"context_line":""},{"line_number":4295,"context_line":"        # the instance is going to be removed from the host so we want to"},{"line_number":4296,"context_line":"        # terminate all the connections with the volume server and the host"},{"line_number":4297,"context_line":"        self._terminate_volume_connections(context, instance, bdms)"},{"line_number":4298,"context_line":""},{"line_number":4299,"context_line":"        instance.power_state \u003d current_power_state"},{"line_number":4300,"context_line":"        instance.host \u003d None"}],"source_content_type":"text/x-python","patch_set":3,"id":"5f2577a7_f7955034","line":4297,"in_reply_to":"9ff52f3f_21140ea0","updated":"2017-09-14 16:09:25.000000000","message":"At the Queens PTG, the Cinder team said that the volume drivers (or maybe even the volume manager) in Cinder should be gracefully handling attempting to terminate a connection on something that\u0027s already gone.","commit_id":"6835af49e9d6bdfafbac9a25a6c92d6fdb415ca5"}]}
