)]}'
{"cinder/tests/test_solidfire.py":[{"author":{"_account_id":7156,"name":"Mathieu Gagné","email":"mgagne@calavera.ca","username":"mgagne"},"change_message_id":"2a2ce950192578eaf8e1d5c0e2cbeea045d776c2","unresolved":false,"context_lines":[{"line_number":159,"context_line":"                   \u0027size\u0027: 1,"},{"line_number":160,"context_line":"                   \u0027id\u0027: \u0027a720b3c0-d1f0-11e1-9b23-0800200c9a66\u0027,"},{"line_number":161,"context_line":"                   \u0027volume_type_id\u0027: None,"},{"line_number":162,"context_line":"                   \u0027created_at\u0027: timeutils.utcnow()}"},{"line_number":163,"context_line":""},{"line_number":164,"context_line":"        sfv \u003d SolidFireDriver(configuration\u003dself.configuration)"},{"line_number":165,"context_line":"        model_update \u003d sfv.create_volume(testvol)"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAQn%2F%2F3yo%3D","line":162,"updated":"2013-07-20 06:15:59.000000000","message":"Why adding created_at to all tests if it\u0027s never actually tested? Is it to make the SolidFire driver not crash if the value is not provided?","commit_id":"1f229bbec0ef851371c04e6597f116d89f31a446"},{"author":{"_account_id":2243,"name":"John Griffith","email":"john.griffith8@gmail.com","username":"john-griffith"},"change_message_id":"76e4b6d42b9620d4c0ac7524ef660da0914be951","unresolved":false,"context_lines":[{"line_number":159,"context_line":"                   \u0027size\u0027: 1,"},{"line_number":160,"context_line":"                   \u0027id\u0027: \u0027a720b3c0-d1f0-11e1-9b23-0800200c9a66\u0027,"},{"line_number":161,"context_line":"                   \u0027volume_type_id\u0027: None,"},{"line_number":162,"context_line":"                   \u0027created_at\u0027: timeutils.utcnow()}"},{"line_number":163,"context_line":""},{"line_number":164,"context_line":"        sfv \u003d SolidFireDriver(configuration\u003dself.configuration)"},{"line_number":165,"context_line":"        model_update \u003d sfv.create_volume(testvol)"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAQn%2F%2F3pc%3D","line":162,"in_reply_to":"AAAAQn%2F%2F3yo%3D","updated":"2013-07-20 13:40:20.000000000","message":"Yes,","commit_id":"1f229bbec0ef851371c04e6597f116d89f31a446"}],"cinder/volume/driver.py":[{"author":{"_account_id":7156,"name":"Mathieu Gagné","email":"mgagne@calavera.ca","username":"mgagne"},"change_message_id":"2a2ce950192578eaf8e1d5c0e2cbeea045d776c2","unresolved":false,"context_lines":[{"line_number":167,"context_line":"        \"\"\"Disallow connection from connector\"\"\""},{"line_number":168,"context_line":"        raise NotImplementedError()"},{"line_number":169,"context_line":""},{"line_number":170,"context_line":"    def attach_volume(self, context, volume, instance_uuid, host_name,"},{"line_number":171,"context_line":"                      mountpoint):"},{"line_number":172,"context_line":"        \"\"\"Callback for volume attached to instance or host.\"\"\""},{"line_number":173,"context_line":"        pass"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAQn%2F%2F3ys%3D","line":170,"updated":"2013-07-20 06:15:59.000000000","message":"Will this change in signature impact other drivers? Or will the SolidFire driver be the first to use this method?","commit_id":"1f229bbec0ef851371c04e6597f116d89f31a446"},{"author":{"_account_id":2243,"name":"John Griffith","email":"john.griffith8@gmail.com","username":"john-griffith"},"change_message_id":"76e4b6d42b9620d4c0ac7524ef660da0914be951","unresolved":false,"context_lines":[{"line_number":167,"context_line":"        \"\"\"Disallow connection from connector\"\"\""},{"line_number":168,"context_line":"        raise NotImplementedError()"},{"line_number":169,"context_line":""},{"line_number":170,"context_line":"    def attach_volume(self, context, volume, instance_uuid, host_name,"},{"line_number":171,"context_line":"                      mountpoint):"},{"line_number":172,"context_line":"        \"\"\"Callback for volume attached to instance or host.\"\"\""},{"line_number":173,"context_line":"        pass"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAQn%2F%2F3pY%3D","line":170,"in_reply_to":"AAAAQn%2F%2F3ys%3D","updated":"2013-07-20 13:40:20.000000000","message":"Surprisingly the attach isn\u0027t implemented anywhere else, it had just stopped here with a pass.","commit_id":"1f229bbec0ef851371c04e6597f116d89f31a446"},{"author":{"_account_id":2243,"name":"John Griffith","email":"john.griffith8@gmail.com","username":"john-griffith"},"change_message_id":"76e4b6d42b9620d4c0ac7524ef660da0914be951","unresolved":false,"context_lines":[{"line_number":172,"context_line":"        \"\"\"Callback for volume attached to instance or host.\"\"\""},{"line_number":173,"context_line":"        pass"},{"line_number":174,"context_line":""},{"line_number":175,"context_line":"    def detach_volume(self, context, volume):"},{"line_number":176,"context_line":"        \"\"\"Callback for volume detached.\"\"\""},{"line_number":177,"context_line":"        pass"},{"line_number":178,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAQn%2F%2F3pU%3D","line":175,"updated":"2013-07-20 13:40:20.000000000","message":"this however will impact coraid and scality, I\u0027ll fix those up.","commit_id":"1f229bbec0ef851371c04e6597f116d89f31a446"}],"cinder/volume/drivers/solidfire.py":[{"author":{"_account_id":7156,"name":"Mathieu Gagné","email":"mgagne@calavera.ca","username":"mgagne"},"change_message_id":"2a2ce950192578eaf8e1d5c0e2cbeea045d776c2","unresolved":false,"context_lines":[{"line_number":577,"context_line":"        \"\"\""},{"line_number":578,"context_line":"        (data, sfaccount, model) \u003d self._do_clone_volume("},{"line_number":579,"context_line":"            snapshot[\u0027volume_id\u0027],"},{"line_number":580,"context_line":"            snapshot[\u0027project_id\u0027])"},{"line_number":581,"context_line":""},{"line_number":582,"context_line":"    def create_volume_from_snapshot(self, volume, snapshot):"},{"line_number":583,"context_line":"        \"\"\"Create a volume from the specified snapshot.\"\"\""}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAQn%2F%2F31M%3D","line":580,"updated":"2013-07-20 06:15:59.000000000","message":"What happened to the 3rd parameter?","commit_id":"1f229bbec0ef851371c04e6597f116d89f31a446"},{"author":{"_account_id":2243,"name":"John Griffith","email":"john.griffith8@gmail.com","username":"john-griffith"},"change_message_id":"76e4b6d42b9620d4c0ac7524ef660da0914be951","unresolved":false,"context_lines":[{"line_number":577,"context_line":"        \"\"\""},{"line_number":578,"context_line":"        (data, sfaccount, model) \u003d self._do_clone_volume("},{"line_number":579,"context_line":"            snapshot[\u0027volume_id\u0027],"},{"line_number":580,"context_line":"            snapshot[\u0027project_id\u0027])"},{"line_number":581,"context_line":""},{"line_number":582,"context_line":"    def create_volume_from_snapshot(self, volume, snapshot):"},{"line_number":583,"context_line":"        \"\"\"Create a volume from the specified snapshot.\"\"\""}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAQn%2F%2F3pI%3D","line":580,"in_reply_to":"AAAAQn%2F%2F31M%3D","updated":"2013-07-20 13:40:20.000000000","message":"oops","commit_id":"1f229bbec0ef851371c04e6597f116d89f31a446"}],"cinder/volume/manager.py":[{"author":{"_account_id":7156,"name":"Mathieu Gagné","email":"mgagne@calavera.ca","username":"mgagne"},"change_message_id":"2a2ce950192578eaf8e1d5c0e2cbeea045d776c2","unresolved":false,"context_lines":[{"line_number":654,"context_line":"        # TODO(vish): refactor this into a more general \"unreserve\""},{"line_number":655,"context_line":"        # TODO(sleepsonthefloor): Is this \u0027elevated\u0027 appropriate?"},{"line_number":656,"context_line":""},{"line_number":657,"context_line":"        volume_ref \u003d self.db.volume_get(context, volume_id)"},{"line_number":658,"context_line":"        try:"},{"line_number":659,"context_line":"            self.driver.detach_volume(context, volume_ref)"},{"line_number":660,"context_line":"        except Exception:"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAQn%2F%2F31I%3D","line":657,"updated":"2013-07-20 06:15:59.000000000","message":"Consistency: volume_ref vs volume? See above in do_attach.","commit_id":"1f229bbec0ef851371c04e6597f116d89f31a446"},{"author":{"_account_id":2243,"name":"John Griffith","email":"john.griffith8@gmail.com","username":"john-griffith"},"change_message_id":"76e4b6d42b9620d4c0ac7524ef660da0914be951","unresolved":false,"context_lines":[{"line_number":654,"context_line":"        # TODO(vish): refactor this into a more general \"unreserve\""},{"line_number":655,"context_line":"        # TODO(sleepsonthefloor): Is this \u0027elevated\u0027 appropriate?"},{"line_number":656,"context_line":""},{"line_number":657,"context_line":"        volume_ref \u003d self.db.volume_get(context, volume_id)"},{"line_number":658,"context_line":"        try:"},{"line_number":659,"context_line":"            self.driver.detach_volume(context, volume_ref)"},{"line_number":660,"context_line":"        except Exception:"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAQn%2F%2F3pA%3D","line":657,"in_reply_to":"AAAAQn%2F%2F31I%3D","updated":"2013-07-20 13:40:20.000000000","message":"sure... fair point","commit_id":"1f229bbec0ef851371c04e6597f116d89f31a446"}]}
