)]}'
{"glance/api/v1/images.py":[{"author":{"_account_id":1132,"name":"Brian Waldon","email":"brian@waldon.cc","username":"bcwaldon"},"change_message_id":"fc292babd7c8f42045cc2447dc46a4b282a8e054","unresolved":false,"context_lines":[{"line_number":758,"context_line":"        try:"},{"line_number":759,"context_line":"            if image[\u0027location\u0027]:"},{"line_number":760,"context_line":"                if CONF.delayed_delete:"},{"line_number":761,"context_line":"                    registry.update_image_metadata(req.context, id,"},{"line_number":762,"context_line":"                                                  {\u0027status\u0027: \u0027pending_delete\u0027})"},{"line_number":763,"context_line":"                    schedule_delayed_delete_from_backend(image[\u0027location\u0027],"},{"line_number":764,"context_line":"                                                         req.context, id)"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAALH%2F%2Fmyc%3D","line":761,"updated":"2012-08-28 01:14:59.000000000","message":"I think it makes more sense to schedule the delete before updating the registry. I want to prevent the call to the db in the case that the schedule_delayed_delete_from_backend call raises an exception.","commit_id":"d33e2a5b6ebffa1a5b1c8c8f1e0ab2b6be57f0a0"},{"author":{"_account_id":1132,"name":"Brian Waldon","email":"brian@waldon.cc","username":"bcwaldon"},"change_message_id":"fc292babd7c8f42045cc2447dc46a4b282a8e054","unresolved":false,"context_lines":[{"line_number":766,"context_line":"                    registry.update_image_metadata(req.context, id,"},{"line_number":767,"context_line":"                                                   {\u0027status\u0027: \u0027deleted\u0027})"},{"line_number":768,"context_line":"                    safe_delete_from_backend(image[\u0027location\u0027],"},{"line_number":769,"context_line":"                                                 req.context, id)"},{"line_number":770,"context_line":"            registry.delete_image_metadata(req.context, id)"},{"line_number":771,"context_line":"        except exception.NotFound, e:"},{"line_number":772,"context_line":"            msg \u003d (\"Failed to find image to delete: %(e)s\" % locals())"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAALH%2F%2Fmys%3D","line":769,"updated":"2012-08-28 01:14:59.000000000","message":"Fix the spacing here.","commit_id":"d33e2a5b6ebffa1a5b1c8c8f1e0ab2b6be57f0a0"}],"glance/api/v2/__init__.py":[{"author":{"_account_id":1132,"name":"Brian Waldon","email":"brian@waldon.cc","username":"bcwaldon"},"change_message_id":"fc292babd7c8f42045cc2447dc46a4b282a8e054","unresolved":false,"context_lines":[{"line_number":36,"context_line":"                    else:"},{"line_number":37,"context_line":"                        read_tenants.append(member[\u0027member\u0027])"},{"line_number":38,"context_line":"            store_api.set_acls(req.context, location_uri, public\u003dpublic,"},{"line_number":39,"context_line":"                                  read_tenants\u003dread_tenants,"},{"line_number":40,"context_line":"                                  write_tenants\u003dwrite_tenants)"},{"line_number":41,"context_line":"        except exception.UnknownScheme:"},{"line_number":42,"context_line":"            msg \u003d _(\"Store for image_id not found: %s\") % image_id"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAALH%2F%2Fmyo%3D","line":39,"updated":"2012-08-28 01:14:59.000000000","message":"Fix the spacing here.","commit_id":"d33e2a5b6ebffa1a5b1c8c8f1e0ab2b6be57f0a0"},{"author":{"_account_id":1132,"name":"Brian Waldon","email":"brian@waldon.cc","username":"bcwaldon"},"change_message_id":"fc292babd7c8f42045cc2447dc46a4b282a8e054","unresolved":false,"context_lines":[{"line_number":37,"context_line":"                        read_tenants.append(member[\u0027member\u0027])"},{"line_number":38,"context_line":"            store_api.set_acls(req.context, location_uri, public\u003dpublic,"},{"line_number":39,"context_line":"                                  read_tenants\u003dread_tenants,"},{"line_number":40,"context_line":"                                  write_tenants\u003dwrite_tenants)"},{"line_number":41,"context_line":"        except exception.UnknownScheme:"},{"line_number":42,"context_line":"            msg \u003d _(\"Store for image_id not found: %s\") % image_id"},{"line_number":43,"context_line":"            raise webob.exc.HTTPBadRequest(explanation\u003dmsg,"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAALH%2F%2Fmyk%3D","line":40,"updated":"2012-08-28 01:14:59.000000000","message":"Fix the spacing here.","commit_id":"d33e2a5b6ebffa1a5b1c8c8f1e0ab2b6be57f0a0"}],"glance/store/__init__.py":[{"author":{"_account_id":1132,"name":"Brian Waldon","email":"brian@waldon.cc","username":"bcwaldon"},"change_message_id":"fc292babd7c8f42045cc2447dc46a4b282a8e054","unresolved":false,"context_lines":[{"line_number":269,"context_line":"        LOG.error(msg)"},{"line_number":270,"context_line":""},{"line_number":271,"context_line":""},{"line_number":272,"context_line":"def schedule_delayed_delete_from_backend(uri, context, image_id, **kwargs):"},{"line_number":273,"context_line":"    \"\"\"Given a uri, schedule the deletion of an image.\"\"\""},{"line_number":274,"context_line":"    datadir \u003d CONF.scrubber_datadir"},{"line_number":275,"context_line":"    delete_time \u003d time.time() + CONF.scrub_time"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAALH%2F%2Fmyg%3D","line":272,"updated":"2012-08-28 01:14:59.000000000","message":"The \u0027context\u0027 param isn\u0027t used anymore.","commit_id":"d33e2a5b6ebffa1a5b1c8c8f1e0ab2b6be57f0a0"}]}
