)]}'
{"cinder/volume/drivers/glusterfs.py":[{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"9b7066bcfa62f9ce355a2f14c641c4f2a52e4a4f","unresolved":false,"context_lines":[{"line_number":22,"context_line":"from cinder import flags"},{"line_number":23,"context_line":"from cinder.openstack.common import cfg"},{"line_number":24,"context_line":"from cinder.openstack.common import log as logging"},{"line_number":25,"context_line":"from cinder.volume import driver"},{"line_number":26,"context_line":"from cinder.volume.drivers import nfs"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"LOG \u003d logging.getLogger(__name__)"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAM3%2F%2FDUk%3D","line":25,"updated":"2013-02-10 05:05:34.000000000","message":"not used.","commit_id":"d794e922547b9dcc6f52ad29b1069d9e516d1187"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"9b7066bcfa62f9ce355a2f14c641c4f2a52e4a4f","unresolved":false,"context_lines":[{"line_number":160,"context_line":"            capacity \u003d self._get_available_capacity(glusterfs_share)"},{"line_number":161,"context_line":"            if capacity \u003e greatest_size:"},{"line_number":162,"context_line":"                greatest_share \u003d glusterfs_share"},{"line_number":163,"context_line":"                greatest_size \u003d capacity"},{"line_number":164,"context_line":""},{"line_number":165,"context_line":"        if volume_size_for * 1024 * 1024 * 1024 \u003e greatest_size:"},{"line_number":166,"context_line":"            raise exception.GlusterfsNoSuitableShareFound("}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAM3%2F%2FCZw%3D","line":163,"updated":"2013-02-10 05:05:34.000000000","message":"If all shares are running out of capacity, greatest_share could be None and an exception should be raised.","commit_id":"d794e922547b9dcc6f52ad29b1069d9e516d1187"},{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"f5f6e4341d5d88479cc4ffd3e6d91d223824bffa","unresolved":false,"context_lines":[{"line_number":160,"context_line":"            capacity \u003d self._get_available_capacity(glusterfs_share)"},{"line_number":161,"context_line":"            if capacity \u003e greatest_size:"},{"line_number":162,"context_line":"                greatest_share \u003d glusterfs_share"},{"line_number":163,"context_line":"                greatest_size \u003d capacity"},{"line_number":164,"context_line":""},{"line_number":165,"context_line":"        if volume_size_for * 1024 * 1024 * 1024 \u003e greatest_size:"},{"line_number":166,"context_line":"            raise exception.GlusterfsNoSuitableShareFound("}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAM3%2F%2B%2BLo%3D","line":163,"in_reply_to":"AAAAM3%2F%2FCZw%3D","updated":"2013-02-12 21:21:30.000000000","message":"In that case, it will be caught by the volume_size_for  \u003e greatest_size check below and raise GlusterfsNoSuitableShareFound.","commit_id":"d794e922547b9dcc6f52ad29b1069d9e516d1187"},{"author":{"_account_id":5538,"name":"Rushi Agrawal","email":"rushi.openstack@gmail.com","username":"rushiagr"},"change_message_id":"9f50e28520ab220ac225a77417a12aaee5502e39","unresolved":false,"context_lines":[{"line_number":180,"context_line":"        \"\"\""},{"line_number":181,"context_line":"        mount_point \u003d self._get_mount_point_for_share(glusterfs_share)"},{"line_number":182,"context_line":""},{"line_number":183,"context_line":"        out, _ \u003d self._execute(\u0027df\u0027, \u0027-P\u0027, \u0027-B\u0027, \u00271\u0027, mount_point,"},{"line_number":184,"context_line":"                               run_as_root\u003dTrue)"},{"line_number":185,"context_line":"        out \u003d out.splitlines()[1]"},{"line_number":186,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAM3%2F%2B%2FoY%3D","line":183,"updated":"2013-02-12 06:25:23.000000000","message":"Writing the options in full improves readability greatly. But much of the existing code uses short forms, so cant force. :)","commit_id":"d794e922547b9dcc6f52ad29b1069d9e516d1187"},{"author":{"_account_id":5538,"name":"Rushi Agrawal","email":"rushi.openstack@gmail.com","username":"rushiagr"},"change_message_id":"e0ac2a73a1e63bd1543fdec185a7582b912e32db","unresolved":false,"context_lines":[{"line_number":71,"context_line":"        except OSError as exc:"},{"line_number":72,"context_line":"            if exc.errno \u003d\u003d errno.ENOENT:"},{"line_number":73,"context_line":"                raise exception.GlusterfsException("},{"line_number":74,"context_line":"                    \u0027mount.glusterfs is not installed\u0027)"},{"line_number":75,"context_line":"            else:"},{"line_number":76,"context_line":"                raise"},{"line_number":77,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"AAAAM3%2F%2B4wM%3D","line":74,"updated":"2013-02-15 16:03:42.000000000","message":"internationalization","commit_id":"63e63fa1c562c3e90e1e91f6322cc58c8bd3696d"},{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"fe3c47bd3493b80f7c0ec118c3f4e7cee7aa57e9","unresolved":false,"context_lines":[{"line_number":71,"context_line":"        except OSError as exc:"},{"line_number":72,"context_line":"            if exc.errno \u003d\u003d errno.ENOENT:"},{"line_number":73,"context_line":"                raise exception.GlusterfsException("},{"line_number":74,"context_line":"                    \u0027mount.glusterfs is not installed\u0027)"},{"line_number":75,"context_line":"            else:"},{"line_number":76,"context_line":"                raise"},{"line_number":77,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"AAAAM3%2F%2B4qU%3D","line":74,"in_reply_to":"AAAAM3%2F%2B4wM%3D","updated":"2013-02-15 16:11:36.000000000","message":"Done","commit_id":"63e63fa1c562c3e90e1e91f6322cc58c8bd3696d"}]}
