)]}'
{"cinder/db/sqlalchemy/api.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"25a5b0bc77b7050e74a808d3fd4a33b5d06d08e5","unresolved":false,"context_lines":[{"line_number":1220,"context_line":"        try:"},{"line_number":1221,"context_line":"            attachment \u003d volume_attachment_get(context, attachment_id,"},{"line_number":1222,"context_line":"                                               session\u003dsession)"},{"line_number":1223,"context_line":"        except exception.VolumeAttachmentNotFound:"},{"line_number":1224,"context_line":"            pass"},{"line_number":1225,"context_line":""},{"line_number":1226,"context_line":"        # If this is already detached, attachment will be None"}],"source_content_type":"text/x-python","patch_set":3,"id":"1a4dcd0f_78792a2e","line":1223,"updated":"2015-08-13 14:35:23.000000000","message":"Should probably have a unit test for this.","commit_id":"a9ad5160cb84372236986e1a1ef91bc81514b017"},{"author":{"_account_id":5997,"name":"Walt","display_name":"Hemna","email":"waboring@hemna.com","username":"walter-boring","status":"SAP"},"change_message_id":"a30c47ebb0a12eae2e3da73b21988c6396fe9c23","unresolved":false,"context_lines":[{"line_number":1220,"context_line":"        try:"},{"line_number":1221,"context_line":"            attachment \u003d volume_attachment_get(context, attachment_id,"},{"line_number":1222,"context_line":"                                               session\u003dsession)"},{"line_number":1223,"context_line":"        except exception.VolumeAttachmentNotFound:"},{"line_number":1224,"context_line":"            pass"},{"line_number":1225,"context_line":""},{"line_number":1226,"context_line":"        # If this is already detached, attachment will be None"}],"source_content_type":"text/x-python","patch_set":3,"id":"1a4dcd0f_de470179","line":1223,"in_reply_to":"1a4dcd0f_78792a2e","updated":"2015-08-13 16:34:51.000000000","message":"This is actually covered in the unit tests I added.  It tests to make sure that when there are no attachments left, the volume gets changed to \u0027available\u0027, and when there are other attachments, the volume gets set back to \u0027in-use\u0027.  Previously we used to get VolumeAttachmentNotFound exceptions raised.","commit_id":"a9ad5160cb84372236986e1a1ef91bc81514b017"}],"cinder/volume/manager.py":[{"author":{"_account_id":7173,"name":"Scott DAngelo","email":"scott.dangelo@gmail.com","username":"scottda"},"change_message_id":"206d5276757faf69c12699f427f149ee238cc9bd","unresolved":false,"context_lines":[{"line_number":891,"context_line":"                LOG.info(_LI(\"Volume detach called, but volume not attached.\"),"},{"line_number":892,"context_line":"                         resource\u003dvolume)"},{"line_number":893,"context_line":"                self.db.volume_update(context, volume_id,"},{"line_number":894,"context_line":"                                      {\u0027status\u0027: \u0027available\u0027})"},{"line_number":895,"context_line":"                return"},{"line_number":896,"context_line":""},{"line_number":897,"context_line":"        self._notify_about_volume_usage(context, volume, \"detach.start\")"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a4dcd0f_be6583af","line":894,"updated":"2015-08-12 21:39:06.000000000","message":"I was trying to find where in the code this could cause a problem, but I could not. Nevertheless, I think it is safer here to also set \u0027attach_status\u0027: \u0027detached\u0027","commit_id":"aa8e650d70f3145cac38478bf255a646370900d1"},{"author":{"_account_id":5997,"name":"Walt","display_name":"Hemna","email":"waboring@hemna.com","username":"walter-boring","status":"SAP"},"change_message_id":"0b2c05daee1f0ad9e45d0ded8875f82336fcd9aa","unresolved":false,"context_lines":[{"line_number":891,"context_line":"                LOG.info(_LI(\"Volume detach called, but volume not attached.\"),"},{"line_number":892,"context_line":"                         resource\u003dvolume)"},{"line_number":893,"context_line":"                self.db.volume_update(context, volume_id,"},{"line_number":894,"context_line":"                                      {\u0027status\u0027: \u0027available\u0027})"},{"line_number":895,"context_line":"                return"},{"line_number":896,"context_line":""},{"line_number":897,"context_line":"        self._notify_about_volume_usage(context, volume, \"detach.start\")"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a4dcd0f_3e0df38e","line":894,"in_reply_to":"1a4dcd0f_be6583af","updated":"2015-08-12 21:50:26.000000000","message":"Done","commit_id":"aa8e650d70f3145cac38478bf255a646370900d1"}]}
