)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":13203,"name":"Wilson Liu","email":"295988511@qq.com","username":"Bob-OpenStack"},"change_message_id":"373b2de02c645254fbad6a5ded12229e05106d2c","unresolved":false,"context_lines":[{"line_number":16,"context_line":"the copy of images into Cinder volumes."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"Co-authored-by: Tom Barron \u003ctbarron@dyncloud.net\u003e"},{"line_number":19,"context_line":"Closes-Bug: 1461116"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"Change-Id: Ia788aea5110b74833c6a0594f26c9727e06fd87e"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"fa32b979_7643436d","line":19,"updated":"2015-06-22 07:13:54.000000000","message":"It will be better if you can change \"Closes-Bug: 1461116\" to \"Closes-Bug #1461116\".","commit_id":"57b4cd058b89c560ded514fdfd25ab1fb94d36dc"},{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"d38c329a53fb80f376c164da5c96f19d06f5d223","unresolved":false,"context_lines":[{"line_number":16,"context_line":"the copy of images into Cinder volumes."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"Co-authored-by: Tom Barron \u003ctbarron@dyncloud.net\u003e"},{"line_number":19,"context_line":"Closes-Bug: 1461116"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"Change-Id: Ia788aea5110b74833c6a0594f26c9727e06fd87e"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"fa32b979_87afaf93","line":19,"in_reply_to":"fa32b979_7643436d","updated":"2015-06-22 08:33:51.000000000","message":"Commit message guidelines at https://wiki.openstack.org/wiki/GitCommitMessages suggest keeping the colon that you dropped and using the \u0027#\u0027 sign as you did.  Will change it to that format.","commit_id":"57b4cd058b89c560ded514fdfd25ab1fb94d36dc"}],"cinder/tests/unit/test_netapp_nfs.py":[{"author":{"_account_id":1736,"name":"Ivan Kolodyazhny","email":"e0ne@e0ne.info","username":"e0ne"},"change_message_id":"827e47a9979f32a92796860e120b97744d4af7d0","unresolved":false,"context_lines":[{"line_number":854,"context_line":"                     \u0027url\u0027: \u0027file:///opt/stack/data/glance/image-id\u0027}])"},{"line_number":855,"context_line":"        locations \u003d drv._construct_image_nfs_url(img_loc)"},{"line_number":856,"context_line":"        loc \u003d None"},{"line_number":857,"context_line":"        for location in locations:"},{"line_number":858,"context_line":"            if location \u003d\u003d \"nfs://host/path/image-id\":"},{"line_number":859,"context_line":"                loc \u003d location"},{"line_number":860,"context_line":"                break"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba3cc151_ac2f053d","line":857,"updated":"2015-07-07 17:53:05.000000000","message":"This could be replaced with self.assertIn(\"nfs://host/path/image-id\", locations)","commit_id":"d7f9bc1666f89df2d0438f20e5ab850816f47cf4"},{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"4f504487dcbe710973cff7d9e10b72a167774b0a","unresolved":false,"context_lines":[{"line_number":854,"context_line":"                     \u0027url\u0027: \u0027file:///opt/stack/data/glance/image-id\u0027}])"},{"line_number":855,"context_line":"        locations \u003d drv._construct_image_nfs_url(img_loc)"},{"line_number":856,"context_line":"        loc \u003d None"},{"line_number":857,"context_line":"        for location in locations:"},{"line_number":858,"context_line":"            if location \u003d\u003d \"nfs://host/path/image-id\":"},{"line_number":859,"context_line":"                loc \u003d location"},{"line_number":860,"context_line":"                break"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba3cc151_f5f94cc9","line":857,"in_reply_to":"ba3cc151_ac2f053d","updated":"2015-07-07 19:39:20.000000000","message":"I like it.   Thank you!","commit_id":"d7f9bc1666f89df2d0438f20e5ab850816f47cf4"},{"author":{"_account_id":1736,"name":"Ivan Kolodyazhny","email":"e0ne@e0ne.info","username":"e0ne"},"change_message_id":"827e47a9979f32a92796860e120b97744d4af7d0","unresolved":false,"context_lines":[{"line_number":866,"context_line":"        img_loc \u003d (\"nfs://host/path/image-id\", None)"},{"line_number":867,"context_line":"        locations \u003d drv._construct_image_nfs_url(img_loc)"},{"line_number":868,"context_line":"        loc \u003d None"},{"line_number":869,"context_line":"        for location in locations:"},{"line_number":870,"context_line":"            if location \u003d\u003d \"nfs://host/path/image-id\":"},{"line_number":871,"context_line":"                loc \u003d location"},{"line_number":872,"context_line":"                break"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba3cc151_ec150de5","line":869,"updated":"2015-07-07 17:53:05.000000000","message":"The same as above","commit_id":"d7f9bc1666f89df2d0438f20e5ab850816f47cf4"},{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"4f504487dcbe710973cff7d9e10b72a167774b0a","unresolved":false,"context_lines":[{"line_number":866,"context_line":"        img_loc \u003d (\"nfs://host/path/image-id\", None)"},{"line_number":867,"context_line":"        locations \u003d drv._construct_image_nfs_url(img_loc)"},{"line_number":868,"context_line":"        loc \u003d None"},{"line_number":869,"context_line":"        for location in locations:"},{"line_number":870,"context_line":"            if location \u003d\u003d \"nfs://host/path/image-id\":"},{"line_number":871,"context_line":"                loc \u003d location"},{"line_number":872,"context_line":"                break"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba3cc151_15f5d0c9","line":869,"in_reply_to":"ba3cc151_ec150de5","updated":"2015-07-07 19:39:20.000000000","message":"Done","commit_id":"d7f9bc1666f89df2d0438f20e5ab850816f47cf4"}],"cinder/volume/drivers/netapp/dataontap/nfs_base.py":[{"author":{"_account_id":1736,"name":"Ivan Kolodyazhny","email":"e0ne@e0ne.info","username":"e0ne"},"change_message_id":"827e47a9979f32a92796860e120b97744d4af7d0","unresolved":false,"context_lines":[{"line_number":531,"context_line":"                    data \u003d image_utils.qemu_img_info(dst,"},{"line_number":532,"context_line":"                                                     run_as_root\u003drun_as_root)"},{"line_number":533,"context_line":"                    if data.file_format !\u003d \"raw\":"},{"line_number":534,"context_line":"                        raise exception.InvalidResults("},{"line_number":535,"context_line":"                            _(\"Converted to raw, but\""},{"line_number":536,"context_line":"                              \" format is now %s\") % data.file_format)"},{"line_number":537,"context_line":"                    else:"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba3cc151_0ccb9154","line":534,"updated":"2015-07-07 17:53:05.000000000","message":"Do we need this check after convert_image call?","commit_id":"d7f9bc1666f89df2d0438f20e5ab850816f47cf4"},{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"4f504487dcbe710973cff7d9e10b72a167774b0a","unresolved":false,"context_lines":[{"line_number":531,"context_line":"                    data \u003d image_utils.qemu_img_info(dst,"},{"line_number":532,"context_line":"                                                     run_as_root\u003drun_as_root)"},{"line_number":533,"context_line":"                    if data.file_format !\u003d \"raw\":"},{"line_number":534,"context_line":"                        raise exception.InvalidResults("},{"line_number":535,"context_line":"                            _(\"Converted to raw, but\""},{"line_number":536,"context_line":"                              \" format is now %s\") % data.file_format)"},{"line_number":537,"context_line":"                    else:"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba3cc151_95e000ce","line":534,"in_reply_to":"ba3cc151_0ccb9154","updated":"2015-07-07 19:39:20.000000000","message":"Honestly, I don\u0027t know.  We inherited this code and it\nis possible that there was a failure case in conversion that\nis being covered here.\n\nOur image clone/cache code is pretty ugly and we have in our  backlog a refactor job on it.  I bet we can get rid of this check when we do that refactor, but I\u0027m going to treat that as out of the scope of this bug fix.","commit_id":"d7f9bc1666f89df2d0438f20e5ab850816f47cf4"}],"cinder/volume/drivers/netapp/dataontap/nfs_cmode.py":[{"author":{"_account_id":1736,"name":"Ivan Kolodyazhny","email":"e0ne@e0ne.info","username":"e0ne"},"change_message_id":"827e47a9979f32a92796860e120b97744d4af7d0","unresolved":false,"context_lines":[{"line_number":445,"context_line":"                    src_ip \u003d self._get_ip_verify_on_cluster(conn.split(\u0027:\u0027)[0])"},{"line_number":446,"context_line":"                    selected_loc \u003d location"},{"line_number":447,"context_line":"                    break"},{"line_number":448,"context_line":"                except Exception:"},{"line_number":449,"context_line":"                    pass"},{"line_number":450,"context_line":"        if src_ip is None:"},{"line_number":451,"context_line":"            raise exception.NotFound(_(\"Source host details not found.\"))"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba3cc151_ec442db8","line":448,"updated":"2015-07-07 17:53:05.000000000","message":"Please, catch NotFound exception only","commit_id":"d7f9bc1666f89df2d0438f20e5ab850816f47cf4"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"30cef8661afa266196548ebb8d5f9d729804436b","unresolved":false,"context_lines":[{"line_number":445,"context_line":"                    src_ip \u003d self._get_ip_verify_on_cluster(conn.split(\u0027:\u0027)[0])"},{"line_number":446,"context_line":"                    selected_loc \u003d location"},{"line_number":447,"context_line":"                    break"},{"line_number":448,"context_line":"                except Exception:"},{"line_number":449,"context_line":"                    pass"},{"line_number":450,"context_line":"        if src_ip is None:"},{"line_number":451,"context_line":"            raise exception.NotFound(_(\"Source host details not found.\"))"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba3cc151_fa6dbb32","line":448,"in_reply_to":"ba3cc151_ec442db8","updated":"2015-07-07 18:47:08.000000000","message":"+1. exception.NotFound is thrown in _get_ip_verify_on_cluster so it should be caught here.","commit_id":"d7f9bc1666f89df2d0438f20e5ab850816f47cf4"},{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"4f504487dcbe710973cff7d9e10b72a167774b0a","unresolved":false,"context_lines":[{"line_number":445,"context_line":"                    src_ip \u003d self._get_ip_verify_on_cluster(conn.split(\u0027:\u0027)[0])"},{"line_number":446,"context_line":"                    selected_loc \u003d location"},{"line_number":447,"context_line":"                    break"},{"line_number":448,"context_line":"                except Exception:"},{"line_number":449,"context_line":"                    pass"},{"line_number":450,"context_line":"        if src_ip is None:"},{"line_number":451,"context_line":"            raise exception.NotFound(_(\"Source host details not found.\"))"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba3cc151_60b7bcf5","line":448,"in_reply_to":"ba3cc151_fa6dbb32","updated":"2015-07-07 19:39:20.000000000","message":"Good \"catch\".  Thanks.","commit_id":"d7f9bc1666f89df2d0438f20e5ab850816f47cf4"}]}
