)]}'
{"nova/api/ec2/cloud.py":[{"author":{"_account_id":5803,"name":"Attila Fazekas","email":"afazekas@redhat.com","username":"afazekas"},"change_message_id":"cab1aa0c40840619a526213760da08e3005eb81e","unresolved":false,"context_lines":[{"line_number":338,"context_line":"                      \u0027creating\u0027: \u0027pending\u0027,"},{"line_number":339,"context_line":"                      \u0027available\u0027: \u0027completed\u0027,"},{"line_number":340,"context_line":"                      \u0027active\u0027: \u0027completed\u0027,"},{"line_number":341,"context_line":"                      \u0027deleting\u0027: \u0027error\u0027,"},{"line_number":342,"context_line":"                      \u0027deleted\u0027: \u0027error\u0027,"},{"line_number":343,"context_line":"                      \u0027error\u0027: \u0027error\u0027}"},{"line_number":344,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAMH%2F%2F2Q0%3D","line":341,"updated":"2012-11-20 08:06:51.000000000","message":"I think \u0027deleteing\u0027 -\u003e \u0027pending\u0027 describes better the situation.\n\nProbably the deleted showed for a short period, can be \u0027pending\u0027 too.\nBut it is better to exclude them from the listing.","commit_id":"d33235ef074572d799cd9a08fc57b547ad01b3a5"},{"author":{"_account_id":5803,"name":"Attila Fazekas","email":"afazekas@redhat.com","username":"afazekas"},"change_message_id":"9883e7b7e8059038dc9867a15cd1c7c0a75a4bf8","unresolved":false,"context_lines":[{"line_number":338,"context_line":"                      \u0027creating\u0027: \u0027pending\u0027,"},{"line_number":339,"context_line":"                      \u0027available\u0027: \u0027completed\u0027,"},{"line_number":340,"context_line":"                      \u0027active\u0027: \u0027completed\u0027,"},{"line_number":341,"context_line":"                      \u0027deleting\u0027: \u0027error\u0027,"},{"line_number":342,"context_line":"                      \u0027deleted\u0027: \u0027error\u0027,"},{"line_number":343,"context_line":"                      \u0027error\u0027: \u0027error\u0027}"},{"line_number":344,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAMH%2F%2F2Qc%3D","line":341,"in_reply_to":"AAAAMH%2F%2F2Q0%3D","updated":"2012-11-20 08:23:24.000000000","message":"\"exclude them from the listing\"  I refereed to the whole record. Pretend it does not exists.","commit_id":"d33235ef074572d799cd9a08fc57b547ad01b3a5"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"17e5ef2edb62c26858743c66f61e77e13d8365b1","unresolved":false,"context_lines":[{"line_number":338,"context_line":"                      \u0027creating\u0027: \u0027pending\u0027,"},{"line_number":339,"context_line":"                      \u0027available\u0027: \u0027completed\u0027,"},{"line_number":340,"context_line":"                      \u0027active\u0027: \u0027completed\u0027,"},{"line_number":341,"context_line":"                      \u0027deleting\u0027: \u0027error\u0027,"},{"line_number":342,"context_line":"                      \u0027deleted\u0027: \u0027error\u0027,"},{"line_number":343,"context_line":"                      \u0027error\u0027: \u0027error\u0027}"},{"line_number":344,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAMH%2F%2F1XE%3D","line":341,"in_reply_to":"AAAAMH%2F%2F2Qc%3D","updated":"2012-11-20 20:45:27.000000000","message":"Ok, I\u0027ll have a go at this in the next version...","commit_id":"d33235ef074572d799cd9a08fc57b547ad01b3a5"},{"author":{"_account_id":5803,"name":"Attila Fazekas","email":"afazekas@redhat.com","username":"afazekas"},"change_message_id":"cab1aa0c40840619a526213760da08e3005eb81e","unresolved":false,"context_lines":[{"line_number":345,"context_line":"        s \u003d {}"},{"line_number":346,"context_line":"        s[\u0027snapshotId\u0027] \u003d ec2utils.id_to_ec2_snap_id(snapshot[\u0027id\u0027])"},{"line_number":347,"context_line":"        s[\u0027volumeId\u0027] \u003d ec2utils.id_to_ec2_vol_id(snapshot[\u0027volume_id\u0027])"},{"line_number":348,"context_line":"        s[\u0027status\u0027] \u003d status_map.get(snapshot[\u0027status\u0027], snapshot[\u0027status\u0027])"},{"line_number":349,"context_line":"        s[\u0027startTime\u0027] \u003d snapshot[\u0027created_at\u0027]"},{"line_number":350,"context_line":"        s[\u0027progress\u0027] \u003d snapshot[\u0027progress\u0027]"},{"line_number":351,"context_line":"        s[\u0027ownerId\u0027] \u003d snapshot[\u0027project_id\u0027]"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAMH%2F%2F2Qw%3D","line":348,"updated":"2012-11-20 08:06:51.000000000","message":"I wonder what will happen if the key not in the map.","commit_id":"d33235ef074572d799cd9a08fc57b547ad01b3a5"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"17e5ef2edb62c26858743c66f61e77e13d8365b1","unresolved":false,"context_lines":[{"line_number":345,"context_line":"        s \u003d {}"},{"line_number":346,"context_line":"        s[\u0027snapshotId\u0027] \u003d ec2utils.id_to_ec2_snap_id(snapshot[\u0027id\u0027])"},{"line_number":347,"context_line":"        s[\u0027volumeId\u0027] \u003d ec2utils.id_to_ec2_vol_id(snapshot[\u0027volume_id\u0027])"},{"line_number":348,"context_line":"        s[\u0027status\u0027] \u003d status_map.get(snapshot[\u0027status\u0027], snapshot[\u0027status\u0027])"},{"line_number":349,"context_line":"        s[\u0027startTime\u0027] \u003d snapshot[\u0027created_at\u0027]"},{"line_number":350,"context_line":"        s[\u0027progress\u0027] \u003d snapshot[\u0027progress\u0027]"},{"line_number":351,"context_line":"        s[\u0027ownerId\u0027] \u003d snapshot[\u0027project_id\u0027]"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAMH%2F%2F1XU%3D","line":348,"in_reply_to":"AAAAMH%2F%2F2Qw%3D","updated":"2012-11-20 20:45:27.000000000","message":"If the key is not in the map, then you get the key value. So if the cinder people add a new status or I missed one, that will leak through to EC2 users, who will file and bug, and we\u0027ll fix it.","commit_id":"d33235ef074572d799cd9a08fc57b547ad01b3a5"},{"author":{"_account_id":5803,"name":"Attila Fazekas","email":"afazekas@redhat.com","username":"afazekas"},"change_message_id":"61ca5896a3e5cfaeca02faf18cf8a0aad984da3b","unresolved":false,"context_lines":[{"line_number":335,"context_line":"    def _format_snapshot(self, context, snapshot):"},{"line_number":336,"context_line":"        # NOTE(mikal): this is just a set of strings in cinder. If they"},{"line_number":337,"context_line":"        # implement an enum, then we should move this code to use it. Note"},{"line_number":338,"context_line":"        # that deleted is handled as an error because"},{"line_number":339,"context_line":"        # http://docs.amazonwebservices.com/AWSEC2/latest/APIReference/"},{"line_number":340,"context_line":"        # ApiReference-query-DescribeSnapshots.html says that the valid ec2"},{"line_number":341,"context_line":"        # statuses are \"pending\", \"completed\", and \"error\"."}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAMH%2F%2FzKY%3D","line":338,"updated":"2012-11-22 10:02:49.000000000","message":"The comment does not reflect the current change.","commit_id":"d7ba7cade9c1ccd45e5447a2bdcb90c691780ab8"},{"author":{"_account_id":5803,"name":"Attila Fazekas","email":"afazekas@redhat.com","username":"afazekas"},"change_message_id":"39bf4401b3916d47b5cd0b977dc92cd7e1277cea","unresolved":false,"context_lines":[{"line_number":340,"context_line":"                      \u0027creating\u0027: \u0027pending\u0027,"},{"line_number":341,"context_line":"                      \u0027available\u0027: \u0027completed\u0027,"},{"line_number":342,"context_line":"                      \u0027active\u0027: \u0027completed\u0027,"},{"line_number":343,"context_line":"                      \u0027deleting\u0027: None,"},{"line_number":344,"context_line":"                      \u0027deleted\u0027: None,"},{"line_number":345,"context_line":"                      \u0027error\u0027: \u0027error\u0027}"},{"line_number":346,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAMH%2F%2FuzA%3D","line":343,"updated":"2012-11-28 09:01:53.000000000","message":"\u0027deleting\u0027 must be \u0027pending\u0027.\n\nThe \u0027pending\u0027 is the state which, does not allow other operations (delete snapshot, create volume based on snapshot, delete dependent resources(volumes))\nOR\nWhen the snapshot consumes quota resources, and does not fit to other valid statuses.\n\n\u0027deleting\u0027 is \u0027pending\u0027 in both aspect.\n\n\u0027error\u0027  is status which allows snapshot deletion (and consumes quota), so the \u0027deleting\u0027 could not mapped to \u0027error\u0027, because a cinder snapshot only delete able in \u0027available\u0027 or \u0027error\u0027 status, like the volumes.\n\n\u0027completed\u0027 : consumes quota, allow operations like creating volume from snapshot , allow snapshot deletion.","commit_id":"416b986e243aa97d47fbf20a9c3581deb5dc3713"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"8625493045a6fed27287f2b71e7baf2481b0d747","unresolved":false,"context_lines":[{"line_number":340,"context_line":"                      \u0027creating\u0027: \u0027pending\u0027,"},{"line_number":341,"context_line":"                      \u0027available\u0027: \u0027completed\u0027,"},{"line_number":342,"context_line":"                      \u0027active\u0027: \u0027completed\u0027,"},{"line_number":343,"context_line":"                      \u0027deleting\u0027: None,"},{"line_number":344,"context_line":"                      \u0027deleted\u0027: None,"},{"line_number":345,"context_line":"                      \u0027error\u0027: \u0027error\u0027}"},{"line_number":346,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAMX%2F%2F6FE%3D","line":343,"in_reply_to":"AAAAMH%2F%2FuzA%3D","updated":"2012-12-07 21:39:21.000000000","message":"Done","commit_id":"416b986e243aa97d47fbf20a9c3581deb5dc3713"}]}
