)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":9172,"name":"Radoslav Gerganov","email":"rgerganov@vmware.com","username":"rgerganov"},"change_message_id":"b919d459795abead6c73590eba56bd730cde2f09","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Gary Kotton \u003cgkotton@vmware.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2015-09-07 07:28:21 -0700"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"VMware: ensure that instance is deleted"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"In the event that the volume detachment fails we need to make sure"},{"line_number":10,"context_line":"that the instance deletion is done."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"da20952f_d9096a85","line":7,"updated":"2015-09-07 14:37:09.000000000","message":"ensure the instance is delete when the volume is missing","commit_id":"6b2ba35913729036d819eff1b5906e6ef3b5debd"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"b4686836ad130130e0dd0eeb512ae5d41cfe14ba","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Gary Kotton \u003cgkotton@vmware.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2015-09-07 07:28:21 -0700"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"VMware: ensure that instance is deleted"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"In the event that the volume detachment fails we need to make sure"},{"line_number":10,"context_line":"that the instance deletion is done."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"da20952f_19be0265","line":7,"in_reply_to":"da20952f_d9096a85","updated":"2015-09-07 14:41:01.000000000","message":"Done","commit_id":"6b2ba35913729036d819eff1b5906e6ef3b5debd"},{"author":{"_account_id":9172,"name":"Radoslav Gerganov","email":"rgerganov@vmware.com","username":"rgerganov"},"change_message_id":"b919d459795abead6c73590eba56bd730cde2f09","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"VMware: ensure that instance is deleted"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"In the event that the volume detachment fails we need to make sure"},{"line_number":10,"context_line":"that the instance deletion is done."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"If this is not done then we will have the following:"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"da20952f_f90c6e94","line":9,"updated":"2015-09-07 14:37:09.000000000","message":"In the event that the volume is missing ...","commit_id":"6b2ba35913729036d819eff1b5906e6ef3b5debd"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"b4686836ad130130e0dd0eeb512ae5d41cfe14ba","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"VMware: ensure that instance is deleted"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"In the event that the volume detachment fails we need to make sure"},{"line_number":10,"context_line":"that the instance deletion is done."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"If this is not done then we will have the following:"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"da20952f_1965a21c","line":9,"in_reply_to":"da20952f_f90c6e94","updated":"2015-09-07 14:41:01.000000000","message":"Done","commit_id":"6b2ba35913729036d819eff1b5906e6ef3b5debd"}],"nova/virt/vmwareapi/driver.py":[{"author":{"_account_id":9172,"name":"Radoslav Gerganov","email":"rgerganov@vmware.com","username":"rgerganov"},"change_message_id":"b5a842080395e209c983411eb505ef3a5ee73437","unresolved":false,"context_lines":[{"line_number":448,"context_line":"                try:"},{"line_number":449,"context_line":"                    self.detach_volume(connection_info, instance,"},{"line_number":450,"context_line":"                                       disk.get(\u0027device_name\u0027))"},{"line_number":451,"context_line":"                except Exception as e:"},{"line_number":452,"context_line":"                    LOG.error(_LE(\"Failed to detach %(device_name)s. \""},{"line_number":453,"context_line":"                                  \"Exception: %(exc)s\"),"},{"line_number":454,"context_line":"                              {\u0027device_name\u0027: disk.get(\u0027device_name\u0027),"}],"source_content_type":"text/x-python","patch_set":1,"id":"da20952f_576f71c3","line":451,"updated":"2015-09-07 09:00:39.000000000","message":"I think we can ignore only exception.StorageError which is raised when the volume is not found. All other exceptions need to be propagated IMO.","commit_id":"61397a4a7820eddf5442aec859b734a45ca8eb3f"},{"author":{"_account_id":9171,"name":"Vipin Balachandran","email":"vipin.bl@gmail.com","username":"vbala"},"change_message_id":"0327ccaa5d3c700e517391938273c916b5db601d","unresolved":false,"context_lines":[{"line_number":448,"context_line":"                try:"},{"line_number":449,"context_line":"                    self.detach_volume(connection_info, instance,"},{"line_number":450,"context_line":"                                       disk.get(\u0027device_name\u0027))"},{"line_number":451,"context_line":"                except Exception as e:"},{"line_number":452,"context_line":"                    LOG.error(_LE(\"Failed to detach %(device_name)s. \""},{"line_number":453,"context_line":"                                  \"Exception: %(exc)s\"),"},{"line_number":454,"context_line":"                              {\u0027device_name\u0027: disk.get(\u0027device_name\u0027),"}],"source_content_type":"text/x-python","patch_set":1,"id":"da20952f_96b2e647","line":451,"in_reply_to":"da20952f_576f71c3","updated":"2015-09-07 11:56:10.000000000","message":"I agree, we can log a warning if the volume disk device is not found. In other cases, we should re-raise the exception, else the volume vmdk will be deleted when the instance VM is destroyed.","commit_id":"61397a4a7820eddf5442aec859b734a45ca8eb3f"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"9e3b088845bfda638c4ee2ac896ac9a6ed17872e","unresolved":false,"context_lines":[{"line_number":448,"context_line":"                try:"},{"line_number":449,"context_line":"                    self.detach_volume(connection_info, instance,"},{"line_number":450,"context_line":"                                       disk.get(\u0027device_name\u0027))"},{"line_number":451,"context_line":"                except Exception as e:"},{"line_number":452,"context_line":"                    LOG.error(_LE(\"Failed to detach %(device_name)s. \""},{"line_number":453,"context_line":"                                  \"Exception: %(exc)s\"),"},{"line_number":454,"context_line":"                              {\u0027device_name\u0027: disk.get(\u0027device_name\u0027),"}],"source_content_type":"text/x-python","patch_set":1,"id":"da20952f_c7c66699","line":451,"in_reply_to":"da20952f_96b2e647","updated":"2015-09-07 13:07:58.000000000","message":"Done","commit_id":"61397a4a7820eddf5442aec859b734a45ca8eb3f"},{"author":{"_account_id":9172,"name":"Radoslav Gerganov","email":"rgerganov@vmware.com","username":"rgerganov"},"change_message_id":"b919d459795abead6c73590eba56bd730cde2f09","unresolved":false,"context_lines":[{"line_number":450,"context_line":"                    self.detach_volume(connection_info, instance,"},{"line_number":451,"context_line":"                                       disk.get(\u0027device_name\u0027))"},{"line_number":452,"context_line":"                except exception.StorageError:"},{"line_number":453,"context_line":"                    # The volume does not exist"},{"line_number":454,"context_line":"                    LOG.debug(\u0027%s does not exist!\u0027, disk.get(\u0027device_name\u0027),"},{"line_number":455,"context_line":"                              instance\u003dinstance)"},{"line_number":456,"context_line":"                except Exception as e:"}],"source_content_type":"text/x-python","patch_set":3,"id":"da20952f_79a61eac","line":453,"updated":"2015-09-07 14:37:09.000000000","message":"you can leave a TODO for changing this to warning","commit_id":"6b2ba35913729036d819eff1b5906e6ef3b5debd"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"b4686836ad130130e0dd0eeb512ae5d41cfe14ba","unresolved":false,"context_lines":[{"line_number":450,"context_line":"                    self.detach_volume(connection_info, instance,"},{"line_number":451,"context_line":"                                       disk.get(\u0027device_name\u0027))"},{"line_number":452,"context_line":"                except exception.StorageError:"},{"line_number":453,"context_line":"                    # The volume does not exist"},{"line_number":454,"context_line":"                    LOG.debug(\u0027%s does not exist!\u0027, disk.get(\u0027device_name\u0027),"},{"line_number":455,"context_line":"                              instance\u003dinstance)"},{"line_number":456,"context_line":"                except Exception as e:"}],"source_content_type":"text/x-python","patch_set":3,"id":"da20952f_19f04266","line":453,"in_reply_to":"da20952f_79a61eac","updated":"2015-09-07 14:41:01.000000000","message":"Done","commit_id":"6b2ba35913729036d819eff1b5906e6ef3b5debd"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"9af5ed34372e0114605502a0991fd52ca956d0f6","unresolved":false,"context_lines":[{"line_number":451,"context_line":"                                       disk.get(\u0027device_name\u0027))"},{"line_number":452,"context_line":"                except exception.StorageError:"},{"line_number":453,"context_line":"                    # The volume does not exist"},{"line_number":454,"context_line":"                    # NOTE(garyk): change to warning after string freeze"},{"line_number":455,"context_line":"                    LOG.debug(\u0027%s does not exist!\u0027, disk.get(\u0027device_name\u0027),"},{"line_number":456,"context_line":"                              instance\u003dinstance)"},{"line_number":457,"context_line":"                except Exception as e:"}],"source_content_type":"text/x-python","patch_set":4,"id":"da20952f_95281335","line":454,"updated":"2015-09-10 13:55:21.000000000","message":"so we did just relax that, but I am not going to force a respin, unless we have to.","commit_id":"d8d594c264fe5bcfd3ec97698e6c9820e54aa8a0"}]}
