)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":14101,"name":"yapeng Yang","email":"a394954369@gmail.com","username":"yapeng"},"change_message_id":"d6c7f2a59fb4009dfc7d05a5035407bebabf118f","unresolved":false,"context_lines":[{"line_number":9,"context_line":"Use Tooz locks from coordination module in remotefs driver, which is"},{"line_number":10,"context_line":"a base for some other drivers, like sambafs, scality, or glusterfs."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Partially implements: blueprint cinder-volume-active-active-ha"},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"Change-Id: I29ae3216e2598e645ff8f567a4904336ece24e39"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"9abb7d3a_e09b5516","line":12,"range":{"start_line":12,"start_character":22,"end_line":12,"end_character":31},"updated":"2016-06-01 08:38:31.000000000","message":"This is error about BP\n\nblueprint: cinder-volume-active-active-ha","commit_id":"93e57bee959c2d25c6da5d3a2408db072bfc4c4a"},{"author":{"_account_id":11600,"name":"Michał Dulko","email":"michal.dulko@gmail.com","username":"dulek"},"change_message_id":"abfc67318641a7a06a6ef8c09d1327b66fdaf7c3","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Replace locks in remotefs and glusterfs backend drivers"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Use Tooz locks from coordination module in remotefs and glusterfs"},{"line_number":10,"context_line":"drivers."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Partially implements: blueprint cinder-volume-active-active-ha"},{"line_number":13,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"7aa08908_9071717a","line":10,"range":{"start_line":9,"start_character":0,"end_line":10,"end_character":8},"updated":"2016-06-16 11:34:54.000000000","message":"This is touching NFS as well, right? We should mention it in the commit message.","commit_id":"ad77a00fa42e92f62c7a57683ffd6fd02dc6695c"}],"cinder/volume/drivers/remotefs.py":[{"author":{"_account_id":11600,"name":"Michał Dulko","email":"michal.dulko@gmail.com","username":"dulek"},"change_message_id":"030e09048b60040280fba16319f12f6c71b39df8","unresolved":false,"context_lines":[{"line_number":126,"context_line":"                        \u0027a snapshot object\u0027)"},{"line_number":127,"context_line":"            raise exception.VolumeBackendAPIException(data\u003derr_msg)"},{"line_number":128,"context_line":""},{"line_number":129,"context_line":"        @coordination.synchronized(\u0027%s-%s\u0027 % (lock_tag, volume_id))"},{"line_number":130,"context_line":"        def lvo_inner2():"},{"line_number":131,"context_line":"            return f(inst, *args, **kwargs)"},{"line_number":132,"context_line":"        return lvo_inner2()"}],"source_content_type":"text/x-python","patch_set":7,"id":"7aa08908_9cc38757","line":129,"range":{"start_line":129,"start_character":0,"end_line":129,"end_character":67},"updated":"2016-06-15 12:56:12.000000000","message":"If we\u0027re changing that…","commit_id":"47dd6efc6c43348d7f67134fe0da07198fd37248"},{"author":{"_account_id":12825,"name":"Szymon Wróblewski","email":"szymon.wroblewski@ovhcloud.com","username":"bluex"},"change_message_id":"900b1d8c603c3cfd9c6f2b8b2698d1f0d1a5ae5b","unresolved":false,"context_lines":[{"line_number":126,"context_line":"                        \u0027a snapshot object\u0027)"},{"line_number":127,"context_line":"            raise exception.VolumeBackendAPIException(data\u003derr_msg)"},{"line_number":128,"context_line":""},{"line_number":129,"context_line":"        @coordination.synchronized(\u0027%s-%s\u0027 % (lock_tag, volume_id))"},{"line_number":130,"context_line":"        def lvo_inner2():"},{"line_number":131,"context_line":"            return f(inst, *args, **kwargs)"},{"line_number":132,"context_line":"        return lvo_inner2()"}],"source_content_type":"text/x-python","patch_set":7,"id":"7aa08908_e8df560a","line":129,"range":{"start_line":129,"start_character":0,"end_line":129,"end_character":67},"in_reply_to":"7aa08908_9cc38757","updated":"2016-06-15 16:26:19.000000000","message":"As you noticed, other drivers are using locked_volume_id_operation. This change was replacing how it works internally so no code change was required in drivers, but you are right, they should be fixed separately. I\u0027ll revert this change and add deprecation warning.","commit_id":"47dd6efc6c43348d7f67134fe0da07198fd37248"},{"author":{"_account_id":11600,"name":"Michał Dulko","email":"michal.dulko@gmail.com","username":"dulek"},"change_message_id":"030e09048b60040280fba16319f12f6c71b39df8","unresolved":false,"context_lines":[{"line_number":1426,"context_line":"            self._local_volume_dir(snapshot[\u0027volume\u0027]), file_to_delete)"},{"line_number":1427,"context_line":"        self._execute(\u0027rm\u0027, \u0027-f\u0027, path_to_delete, run_as_root\u003dTrue)"},{"line_number":1428,"context_line":""},{"line_number":1429,"context_line":"    @coordination.synchronized(\u0027{self.driver_prefix}-{snapshot[volume][id]}\u0027)"},{"line_number":1430,"context_line":"    def create_snapshot(self, snapshot):"},{"line_number":1431,"context_line":"        \"\"\"Apply locking to the create snapshot operation.\"\"\""},{"line_number":1432,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"7aa08908_bc9da368","line":1429,"range":{"start_line":1429,"start_character":0,"end_line":1429,"end_character":77},"updated":"2016-06-15 12:56:12.000000000","message":"…why do we change this and subsequent ones?","commit_id":"47dd6efc6c43348d7f67134fe0da07198fd37248"},{"author":{"_account_id":11600,"name":"Michał Dulko","email":"michal.dulko@gmail.com","username":"dulek"},"change_message_id":"b35c75278161d4c4ce87625ca596ddaad6a7b098","unresolved":false,"context_lines":[{"line_number":1475,"context_line":""},{"line_number":1476,"context_line":""},{"line_number":1477,"context_line":"class RemoteFSSnapDriverDistributed(RemoteFSSnapDriverBase):"},{"line_number":1478,"context_line":"    @coordination.synchronized(\u0027{self.driver_prefix}-{snapshot[volume][id]}\u0027)"},{"line_number":1479,"context_line":"    def create_snapshot(self, snapshot):"},{"line_number":1480,"context_line":"        \"\"\"Apply locking to the create snapshot operation.\"\"\""},{"line_number":1481,"context_line":""}],"source_content_type":"text/x-python","patch_set":12,"id":"dada55a8_c901366c","line":1478,"range":{"start_line":1478,"start_character":54,"end_line":1478,"end_character":74},"updated":"2016-07-20 14:17:09.000000000","message":"I can see the original decorator goes `snapshot.volume.id`. Shouldn\u0027t we go the same way here? Same with other occurrences.","commit_id":"bd5e5bbf6d67f806cd11c9eee875f81a1395075a"},{"author":{"_account_id":12825,"name":"Szymon Wróblewski","email":"szymon.wroblewski@ovhcloud.com","username":"bluex"},"change_message_id":"e7dafab17cf70db058b8b34d6e998410e6f32e25","unresolved":false,"context_lines":[{"line_number":1475,"context_line":""},{"line_number":1476,"context_line":""},{"line_number":1477,"context_line":"class RemoteFSSnapDriverDistributed(RemoteFSSnapDriverBase):"},{"line_number":1478,"context_line":"    @coordination.synchronized(\u0027{self.driver_prefix}-{snapshot[volume][id]}\u0027)"},{"line_number":1479,"context_line":"    def create_snapshot(self, snapshot):"},{"line_number":1480,"context_line":"        \"\"\"Apply locking to the create snapshot operation.\"\"\""},{"line_number":1481,"context_line":""}],"source_content_type":"text/x-python","patch_set":12,"id":"dada55a8_95ef50e8","line":1478,"range":{"start_line":1478,"start_character":54,"end_line":1478,"end_character":74},"in_reply_to":"dada55a8_c901366c","updated":"2016-07-20 15:17:40.000000000","message":"Done","commit_id":"bd5e5bbf6d67f806cd11c9eee875f81a1395075a"},{"author":{"_account_id":11600,"name":"Michał Dulko","email":"michal.dulko@gmail.com","username":"dulek"},"change_message_id":"b35c75278161d4c4ce87625ca596ddaad6a7b098","unresolved":false,"context_lines":[{"line_number":1487,"context_line":""},{"line_number":1488,"context_line":"        return self._delete_snapshot(snapshot)"},{"line_number":1489,"context_line":""},{"line_number":1490,"context_line":"    @coordination.synchronized(\u0027{self.driver_prefix}-{snapshot[volume][id]}\u0027)"},{"line_number":1491,"context_line":"    def create_volume_from_snapshot(self, volume, snapshot):"},{"line_number":1492,"context_line":"        return self._create_volume_from_snapshot(volume, snapshot)"},{"line_number":1493,"context_line":""}],"source_content_type":"text/x-python","patch_set":12,"id":"dada55a8_09022e3d","line":1490,"range":{"start_line":1490,"start_character":32,"end_line":1490,"end_character":75},"updated":"2016-07-20 14:17:09.000000000","message":"It looks like in the original decorator volume.id takes preference before snapshot.volume.id, so shouldn\u0027t this be:\n\n {self.driver_prefix}-{volume[id]}\n\n? Or even:\n\n {self.driver_prefix}-{volume.id}","commit_id":"bd5e5bbf6d67f806cd11c9eee875f81a1395075a"},{"author":{"_account_id":12825,"name":"Szymon Wróblewski","email":"szymon.wroblewski@ovhcloud.com","username":"bluex"},"change_message_id":"e7dafab17cf70db058b8b34d6e998410e6f32e25","unresolved":false,"context_lines":[{"line_number":1487,"context_line":""},{"line_number":1488,"context_line":"        return self._delete_snapshot(snapshot)"},{"line_number":1489,"context_line":""},{"line_number":1490,"context_line":"    @coordination.synchronized(\u0027{self.driver_prefix}-{snapshot[volume][id]}\u0027)"},{"line_number":1491,"context_line":"    def create_volume_from_snapshot(self, volume, snapshot):"},{"line_number":1492,"context_line":"        return self._create_volume_from_snapshot(volume, snapshot)"},{"line_number":1493,"context_line":""}],"source_content_type":"text/x-python","patch_set":12,"id":"dada55a8_55e958e5","line":1490,"range":{"start_line":1490,"start_character":32,"end_line":1490,"end_character":75},"in_reply_to":"dada55a8_09022e3d","updated":"2016-07-20 15:17:40.000000000","message":"Nice catch, thx, fixed.","commit_id":"bd5e5bbf6d67f806cd11c9eee875f81a1395075a"}]}
