)]}'
{"cinder/brick/local_dev/lvm.py":[{"author":{"_account_id":19153,"name":"jingtao liang","email":"liang.jingtao@zte.com.cn","username":"liangjingtao"},"change_message_id":"62d8b9ebe2432e2b5d932184c438c74010ec7ab2","unresolved":false,"context_lines":[{"line_number":703,"context_line":"                return True"},{"line_number":704,"context_line":"        return False"},{"line_number":705,"context_line":""},{"line_number":706,"context_line":"    def lv_is_snapshot(self, name):"},{"line_number":707,"context_line":"        cmd \u003d LVM.LVM_CMD_PREFIX + [\u0027lvdisplay\u0027, \u0027--noheading\u0027, \u0027-C\u0027, \u0027-o\u0027,"},{"line_number":708,"context_line":"                                    \u0027Attr\u0027, \u0027%s/%s\u0027 % (self.vg_name, name)]"},{"line_number":709,"context_line":"        out, _err \u003d self._execute(*cmd,"}],"source_content_type":"text/x-python","patch_set":3,"id":"9abb7d3a_d8735cb3","line":706,"updated":"2016-05-27 09:12:38.000000000","message":"I think some comments will be better here.","commit_id":"5fbd81d971b6a432b51aab8989efc05f6267e40a"},{"author":{"_account_id":4355,"name":"Avishay Traeger","email":"avishay@stratoscale.com","username":"avishay-il"},"change_message_id":"7c431e19de11cf3dd4d3e4ad8e65faf284353f90","unresolved":false,"context_lines":[{"line_number":703,"context_line":"                return True"},{"line_number":704,"context_line":"        return False"},{"line_number":705,"context_line":""},{"line_number":706,"context_line":"    def lv_is_snapshot(self, name):"},{"line_number":707,"context_line":"        cmd \u003d LVM.LVM_CMD_PREFIX + [\u0027lvdisplay\u0027, \u0027--noheading\u0027, \u0027-C\u0027, \u0027-o\u0027,"},{"line_number":708,"context_line":"                                    \u0027Attr\u0027, \u0027%s/%s\u0027 % (self.vg_name, name)]"},{"line_number":709,"context_line":"        out, _err \u003d self._execute(*cmd,"}],"source_content_type":"text/x-python","patch_set":3,"id":"7aa08908_0c53cfe2","line":706,"in_reply_to":"9abb7d3a_d8735cb3","updated":"2016-06-06 09:49:55.000000000","message":"Done","commit_id":"5fbd81d971b6a432b51aab8989efc05f6267e40a"}],"cinder/tests/unit/test_lvm_driver.py":[{"author":{"_account_id":16708,"name":"Kendall Nelson","display_name":"Kendall (diablo_rojo)","email":"kennelson11@gmail.com","username":"kjnelson"},"change_message_id":"dcb7930a30cdc15bebf4cd4daa7f1814925f80a5","unresolved":false,"context_lines":[{"line_number":811,"context_line":"               {\u0027name\u0027: \u0027myvol\u0027, \u0027size\u0027: \u00274.0\u0027}]"},{"line_number":812,"context_line":"        self.volume.driver.vg \u003d mock.Mock()"},{"line_number":813,"context_line":"        self.volume.driver.vg.get_volumes.return_value \u003d lvs"},{"line_number":814,"context_line":"        self.volume.driver.vg.lv_is_snapshot.side_effect \u003d \\"},{"line_number":815,"context_line":"            [False, False, True, False]"},{"line_number":816,"context_line":"        self.volume.driver.vg.lv_is_open.side_effect \u003d \\"},{"line_number":817,"context_line":"            [True, False]"}],"source_content_type":"text/x-python","patch_set":7,"id":"1aa78d24_ef4f8b68","line":814,"range":{"start_line":814,"start_character":59,"end_line":814,"end_character":60},"updated":"2016-07-07 16:27:57.000000000","message":"Is it possible to set this variable using \u0027()\u0027 instead of \u0027/\u0027 ?","commit_id":"b2e4766c6d0d30d0a697cac00205bd6841a96427"},{"author":{"_account_id":4355,"name":"Avishay Traeger","email":"avishay@stratoscale.com","username":"avishay-il"},"change_message_id":"da96dba9fc67582d896393def28ce7dc9e8c0b6a","unresolved":false,"context_lines":[{"line_number":811,"context_line":"               {\u0027name\u0027: \u0027myvol\u0027, \u0027size\u0027: \u00274.0\u0027}]"},{"line_number":812,"context_line":"        self.volume.driver.vg \u003d mock.Mock()"},{"line_number":813,"context_line":"        self.volume.driver.vg.get_volumes.return_value \u003d lvs"},{"line_number":814,"context_line":"        self.volume.driver.vg.lv_is_snapshot.side_effect \u003d \\"},{"line_number":815,"context_line":"            [False, False, True, False]"},{"line_number":816,"context_line":"        self.volume.driver.vg.lv_is_open.side_effect \u003d \\"},{"line_number":817,"context_line":"            [True, False]"}],"source_content_type":"text/x-python","patch_set":7,"id":"1aa78d24_3bf8557c","line":814,"range":{"start_line":814,"start_character":59,"end_line":814,"end_character":60},"in_reply_to":"1aa78d24_ef4f8b68","updated":"2016-07-10 07:22:25.000000000","message":"Done","commit_id":"b2e4766c6d0d30d0a697cac00205bd6841a96427"},{"author":{"_account_id":16708,"name":"Kendall Nelson","display_name":"Kendall (diablo_rojo)","email":"kennelson11@gmail.com","username":"kjnelson"},"change_message_id":"dcb7930a30cdc15bebf4cd4daa7f1814925f80a5","unresolved":false,"context_lines":[{"line_number":813,"context_line":"        self.volume.driver.vg.get_volumes.return_value \u003d lvs"},{"line_number":814,"context_line":"        self.volume.driver.vg.lv_is_snapshot.side_effect \u003d \\"},{"line_number":815,"context_line":"            [False, False, True, False]"},{"line_number":816,"context_line":"        self.volume.driver.vg.lv_is_open.side_effect \u003d \\"},{"line_number":817,"context_line":"            [True, False]"},{"line_number":818,"context_line":"        res \u003d self.volume.driver.get_manageable_volumes(cinder_vols, None,"},{"line_number":819,"context_line":"                                                        1000, 0,"}],"source_content_type":"text/x-python","patch_set":7,"id":"1aa78d24_2f56b305","line":816,"range":{"start_line":816,"start_character":55,"end_line":816,"end_character":56},"updated":"2016-07-07 16:27:57.000000000","message":"ditto above","commit_id":"b2e4766c6d0d30d0a697cac00205bd6841a96427"},{"author":{"_account_id":4355,"name":"Avishay Traeger","email":"avishay@stratoscale.com","username":"avishay-il"},"change_message_id":"da96dba9fc67582d896393def28ce7dc9e8c0b6a","unresolved":false,"context_lines":[{"line_number":813,"context_line":"        self.volume.driver.vg.get_volumes.return_value \u003d lvs"},{"line_number":814,"context_line":"        self.volume.driver.vg.lv_is_snapshot.side_effect \u003d \\"},{"line_number":815,"context_line":"            [False, False, True, False]"},{"line_number":816,"context_line":"        self.volume.driver.vg.lv_is_open.side_effect \u003d \\"},{"line_number":817,"context_line":"            [True, False]"},{"line_number":818,"context_line":"        res \u003d self.volume.driver.get_manageable_volumes(cinder_vols, None,"},{"line_number":819,"context_line":"                                                        1000, 0,"}],"source_content_type":"text/x-python","patch_set":7,"id":"1aa78d24_1bf3d9a0","line":816,"range":{"start_line":816,"start_character":55,"end_line":816,"end_character":56},"in_reply_to":"1aa78d24_2f56b305","updated":"2016-07-10 07:22:25.000000000","message":"Done","commit_id":"b2e4766c6d0d30d0a697cac00205bd6841a96427"},{"author":{"_account_id":16708,"name":"Kendall Nelson","display_name":"Kendall (diablo_rojo)","email":"kennelson11@gmail.com","username":"kjnelson"},"change_message_id":"dcb7930a30cdc15bebf4cd4daa7f1814925f80a5","unresolved":false,"context_lines":[{"line_number":844,"context_line":"               {\u0027name\u0027: \u0027mysnap\u0027, \u0027size\u0027: \u00274.0\u0027}]"},{"line_number":845,"context_line":"        self.volume.driver.vg \u003d mock.Mock()"},{"line_number":846,"context_line":"        self.volume.driver.vg.get_volumes.return_value \u003d lvs"},{"line_number":847,"context_line":"        self.volume.driver.vg.lv_is_snapshot.side_effect \u003d \\"},{"line_number":848,"context_line":"            [True, False, True, True]"},{"line_number":849,"context_line":"        self.volume.driver.vg.lv_is_open.side_effect \u003d \\"},{"line_number":850,"context_line":"            [True, False]"}],"source_content_type":"text/x-python","patch_set":7,"id":"1aa78d24_0f593735","line":847,"range":{"start_line":847,"start_character":59,"end_line":847,"end_character":60},"updated":"2016-07-07 16:27:57.000000000","message":"ditto","commit_id":"b2e4766c6d0d30d0a697cac00205bd6841a96427"},{"author":{"_account_id":4355,"name":"Avishay Traeger","email":"avishay@stratoscale.com","username":"avishay-il"},"change_message_id":"da96dba9fc67582d896393def28ce7dc9e8c0b6a","unresolved":false,"context_lines":[{"line_number":844,"context_line":"               {\u0027name\u0027: \u0027mysnap\u0027, \u0027size\u0027: \u00274.0\u0027}]"},{"line_number":845,"context_line":"        self.volume.driver.vg \u003d mock.Mock()"},{"line_number":846,"context_line":"        self.volume.driver.vg.get_volumes.return_value \u003d lvs"},{"line_number":847,"context_line":"        self.volume.driver.vg.lv_is_snapshot.side_effect \u003d \\"},{"line_number":848,"context_line":"            [True, False, True, True]"},{"line_number":849,"context_line":"        self.volume.driver.vg.lv_is_open.side_effect \u003d \\"},{"line_number":850,"context_line":"            [True, False]"}],"source_content_type":"text/x-python","patch_set":7,"id":"1aa78d24_7bf2dd9b","line":847,"range":{"start_line":847,"start_character":59,"end_line":847,"end_character":60},"in_reply_to":"1aa78d24_0f593735","updated":"2016-07-10 07:22:25.000000000","message":"Done","commit_id":"b2e4766c6d0d30d0a697cac00205bd6841a96427"},{"author":{"_account_id":16708,"name":"Kendall Nelson","display_name":"Kendall (diablo_rojo)","email":"kennelson11@gmail.com","username":"kjnelson"},"change_message_id":"dcb7930a30cdc15bebf4cd4daa7f1814925f80a5","unresolved":false,"context_lines":[{"line_number":846,"context_line":"        self.volume.driver.vg.get_volumes.return_value \u003d lvs"},{"line_number":847,"context_line":"        self.volume.driver.vg.lv_is_snapshot.side_effect \u003d \\"},{"line_number":848,"context_line":"            [True, False, True, True]"},{"line_number":849,"context_line":"        self.volume.driver.vg.lv_is_open.side_effect \u003d \\"},{"line_number":850,"context_line":"            [True, False]"},{"line_number":851,"context_line":"        self.volume.driver.vg.lv_get_origin.side_effect \u003d \\"},{"line_number":852,"context_line":"            [\u0027volume-00000000-0000-0000-0000-000000000000\u0027,"}],"source_content_type":"text/x-python","patch_set":7,"id":"1aa78d24_4f3fbfb3","line":849,"range":{"start_line":849,"start_character":55,"end_line":849,"end_character":56},"updated":"2016-07-07 16:27:57.000000000","message":"ditto","commit_id":"b2e4766c6d0d30d0a697cac00205bd6841a96427"},{"author":{"_account_id":4355,"name":"Avishay Traeger","email":"avishay@stratoscale.com","username":"avishay-il"},"change_message_id":"da96dba9fc67582d896393def28ce7dc9e8c0b6a","unresolved":false,"context_lines":[{"line_number":846,"context_line":"        self.volume.driver.vg.get_volumes.return_value \u003d lvs"},{"line_number":847,"context_line":"        self.volume.driver.vg.lv_is_snapshot.side_effect \u003d \\"},{"line_number":848,"context_line":"            [True, False, True, True]"},{"line_number":849,"context_line":"        self.volume.driver.vg.lv_is_open.side_effect \u003d \\"},{"line_number":850,"context_line":"            [True, False]"},{"line_number":851,"context_line":"        self.volume.driver.vg.lv_get_origin.side_effect \u003d \\"},{"line_number":852,"context_line":"            [\u0027volume-00000000-0000-0000-0000-000000000000\u0027,"}],"source_content_type":"text/x-python","patch_set":7,"id":"1aa78d24_bb2a85e5","line":849,"range":{"start_line":849,"start_character":55,"end_line":849,"end_character":56},"in_reply_to":"1aa78d24_4f3fbfb3","updated":"2016-07-10 07:22:25.000000000","message":"Done","commit_id":"b2e4766c6d0d30d0a697cac00205bd6841a96427"},{"author":{"_account_id":16708,"name":"Kendall Nelson","display_name":"Kendall (diablo_rojo)","email":"kennelson11@gmail.com","username":"kjnelson"},"change_message_id":"dcb7930a30cdc15bebf4cd4daa7f1814925f80a5","unresolved":false,"context_lines":[{"line_number":848,"context_line":"            [True, False, True, True]"},{"line_number":849,"context_line":"        self.volume.driver.vg.lv_is_open.side_effect \u003d \\"},{"line_number":850,"context_line":"            [True, False]"},{"line_number":851,"context_line":"        self.volume.driver.vg.lv_get_origin.side_effect \u003d \\"},{"line_number":852,"context_line":"            [\u0027volume-00000000-0000-0000-0000-000000000000\u0027,"},{"line_number":853,"context_line":"             \u0027volume-00000000-0000-0000-0000-000000000002\u0027,"},{"line_number":854,"context_line":"             \u0027myvol\u0027]"}],"source_content_type":"text/x-python","patch_set":7,"id":"1aa78d24_8f452744","line":851,"range":{"start_line":851,"start_character":58,"end_line":851,"end_character":59},"updated":"2016-07-07 16:27:57.000000000","message":"ditto","commit_id":"b2e4766c6d0d30d0a697cac00205bd6841a96427"},{"author":{"_account_id":4355,"name":"Avishay Traeger","email":"avishay@stratoscale.com","username":"avishay-il"},"change_message_id":"da96dba9fc67582d896393def28ce7dc9e8c0b6a","unresolved":false,"context_lines":[{"line_number":848,"context_line":"            [True, False, True, True]"},{"line_number":849,"context_line":"        self.volume.driver.vg.lv_is_open.side_effect \u003d \\"},{"line_number":850,"context_line":"            [True, False]"},{"line_number":851,"context_line":"        self.volume.driver.vg.lv_get_origin.side_effect \u003d \\"},{"line_number":852,"context_line":"            [\u0027volume-00000000-0000-0000-0000-000000000000\u0027,"},{"line_number":853,"context_line":"             \u0027volume-00000000-0000-0000-0000-000000000002\u0027,"},{"line_number":854,"context_line":"             \u0027myvol\u0027]"}],"source_content_type":"text/x-python","patch_set":7,"id":"1aa78d24_9b2d0900","line":851,"range":{"start_line":851,"start_character":58,"end_line":851,"end_character":59},"in_reply_to":"1aa78d24_8f452744","updated":"2016-07-10 07:22:25.000000000","message":"Done","commit_id":"b2e4766c6d0d30d0a697cac00205bd6841a96427"}],"cinder/tests/unit/test_volume_utils.py":[{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"6e381db687a5f18acd43b497dac74f999a7ba1a9","unresolved":false,"context_lines":[{"line_number":764,"context_line":"        vol_id \u003d \u0027d8cd1feb-2dcc-404d-9b15-b86fe3bec0a1\u0027"},{"line_number":765,"context_line":"        vol_name \u003d conf_mock.volume_name_template % vol_id"},{"line_number":766,"context_line":"        result \u003d volume_utils.extract_id_from_volume_name(vol_name)"},{"line_number":767,"context_line":"        self.assertEqual(result, vol_id)"},{"line_number":768,"context_line":""},{"line_number":769,"context_line":"    @mock.patch(\u0027cinder.volume.utils.CONF\u0027)"},{"line_number":770,"context_line":"    def test_extract_id_from_volume_name_vol_id_vol_pattern(self, conf_mock):"}],"source_content_type":"text/x-python","patch_set":10,"id":"dada55a8_14856cac","line":767,"updated":"2016-07-19 12:22:13.000000000","message":"Can we get these switched to (expected, actual) to be consistent?","commit_id":"03c87a813269bb39c8333dc0b90e2097af68907f"},{"author":{"_account_id":4355,"name":"Avishay Traeger","email":"avishay@stratoscale.com","username":"avishay-il"},"change_message_id":"704b7297c00c1a0a1c594d397e6cfa9bd486ea46","unresolved":false,"context_lines":[{"line_number":764,"context_line":"        vol_id \u003d \u0027d8cd1feb-2dcc-404d-9b15-b86fe3bec0a1\u0027"},{"line_number":765,"context_line":"        vol_name \u003d conf_mock.volume_name_template % vol_id"},{"line_number":766,"context_line":"        result \u003d volume_utils.extract_id_from_volume_name(vol_name)"},{"line_number":767,"context_line":"        self.assertEqual(result, vol_id)"},{"line_number":768,"context_line":""},{"line_number":769,"context_line":"    @mock.patch(\u0027cinder.volume.utils.CONF\u0027)"},{"line_number":770,"context_line":"    def test_extract_id_from_volume_name_vol_id_vol_pattern(self, conf_mock):"}],"source_content_type":"text/x-python","patch_set":10,"id":"dada55a8_5c641de3","line":767,"in_reply_to":"dada55a8_14856cac","updated":"2016-07-19 15:49:26.000000000","message":"Done","commit_id":"03c87a813269bb39c8333dc0b90e2097af68907f"},{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"6e381db687a5f18acd43b497dac74f999a7ba1a9","unresolved":false,"context_lines":[{"line_number":787,"context_line":"        conf_mock.volume_name_template \u003d \u0027%s-volume\u0027"},{"line_number":788,"context_line":"        vol_name \u003d \u0027d8cd1feb-2dcc-404d-9b15-b86fe3bec0a1\u0027"},{"line_number":789,"context_line":"        result \u003d volume_utils.extract_id_from_volume_name(vol_name)"},{"line_number":790,"context_line":"        self.assertEqual(result, None)"},{"line_number":791,"context_line":"        vol_name \u003d \u0027blahblahblah\u0027"},{"line_number":792,"context_line":"        result \u003d volume_utils.extract_id_from_volume_name(vol_name)"},{"line_number":793,"context_line":"        self.assertEqual(result, None)"}],"source_content_type":"text/x-python","patch_set":10,"id":"dada55a8_b4bc606d","line":790,"updated":"2016-07-19 12:22:13.000000000","message":"Please use assertIsNone(result)","commit_id":"03c87a813269bb39c8333dc0b90e2097af68907f"},{"author":{"_account_id":4355,"name":"Avishay Traeger","email":"avishay@stratoscale.com","username":"avishay-il"},"change_message_id":"704b7297c00c1a0a1c594d397e6cfa9bd486ea46","unresolved":false,"context_lines":[{"line_number":787,"context_line":"        conf_mock.volume_name_template \u003d \u0027%s-volume\u0027"},{"line_number":788,"context_line":"        vol_name \u003d \u0027d8cd1feb-2dcc-404d-9b15-b86fe3bec0a1\u0027"},{"line_number":789,"context_line":"        result \u003d volume_utils.extract_id_from_volume_name(vol_name)"},{"line_number":790,"context_line":"        self.assertEqual(result, None)"},{"line_number":791,"context_line":"        vol_name \u003d \u0027blahblahblah\u0027"},{"line_number":792,"context_line":"        result \u003d volume_utils.extract_id_from_volume_name(vol_name)"},{"line_number":793,"context_line":"        self.assertEqual(result, None)"}],"source_content_type":"text/x-python","patch_set":10,"id":"dada55a8_1c98e5bf","line":790,"in_reply_to":"dada55a8_b4bc606d","updated":"2016-07-19 15:49:26.000000000","message":"Done","commit_id":"03c87a813269bb39c8333dc0b90e2097af68907f"},{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"6e381db687a5f18acd43b497dac74f999a7ba1a9","unresolved":false,"context_lines":[{"line_number":790,"context_line":"        self.assertEqual(result, None)"},{"line_number":791,"context_line":"        vol_name \u003d \u0027blahblahblah\u0027"},{"line_number":792,"context_line":"        result \u003d volume_utils.extract_id_from_volume_name(vol_name)"},{"line_number":793,"context_line":"        self.assertEqual(result, None)"},{"line_number":794,"context_line":""},{"line_number":795,"context_line":"    @mock.patch(\u0027cinder.db.sqlalchemy.api.resource_exists\u0027, return_value\u003dTrue)"},{"line_number":796,"context_line":"    def test_check_managed_volume_already_managed(self, exists_mock):"}],"source_content_type":"text/x-python","patch_set":10,"id":"dada55a8_f4b6d888","line":793,"updated":"2016-07-19 12:22:13.000000000","message":"Same.","commit_id":"03c87a813269bb39c8333dc0b90e2097af68907f"},{"author":{"_account_id":4355,"name":"Avishay Traeger","email":"avishay@stratoscale.com","username":"avishay-il"},"change_message_id":"704b7297c00c1a0a1c594d397e6cfa9bd486ea46","unresolved":false,"context_lines":[{"line_number":790,"context_line":"        self.assertEqual(result, None)"},{"line_number":791,"context_line":"        vol_name \u003d \u0027blahblahblah\u0027"},{"line_number":792,"context_line":"        result \u003d volume_utils.extract_id_from_volume_name(vol_name)"},{"line_number":793,"context_line":"        self.assertEqual(result, None)"},{"line_number":794,"context_line":""},{"line_number":795,"context_line":"    @mock.patch(\u0027cinder.db.sqlalchemy.api.resource_exists\u0027, return_value\u003dTrue)"},{"line_number":796,"context_line":"    def test_check_managed_volume_already_managed(self, exists_mock):"}],"source_content_type":"text/x-python","patch_set":10,"id":"dada55a8_fc92319e","line":793,"in_reply_to":"dada55a8_f4b6d888","updated":"2016-07-19 15:49:26.000000000","message":"Done","commit_id":"03c87a813269bb39c8333dc0b90e2097af68907f"}],"cinder/volume/drivers/lvm.py":[{"author":{"_account_id":21428,"name":"JiWei","email":"17366060309@163.com","username":"WeiJi"},"change_message_id":"00e274a7e5fd775ca30b2db289ba6d9f33965cfd","unresolved":false,"context_lines":[{"line_number":688,"context_line":"                lv_info[\u0027safe_to_manage\u0027] \u003d False"},{"line_number":689,"context_line":"                lv_info[\u0027reason_not_safe\u0027] \u003d \u0027already managed\u0027"},{"line_number":690,"context_line":"                lv_info[\u0027cinder_id\u0027] \u003d potential_id"},{"line_number":691,"context_line":"            elif self.vg.lv_is_open(lv[\u0027name\u0027]):"},{"line_number":692,"context_line":"                lv_info[\u0027safe_to_manage\u0027] \u003d False"},{"line_number":693,"context_line":"                lv_info[\u0027reason_not_safe\u0027] \u003d \u0027%s in use\u0027 % resource_type"},{"line_number":694,"context_line":"            else:"}],"source_content_type":"text/x-python","patch_set":7,"id":"1aa78d24_acf89a4a","line":691,"range":{"start_line":691,"start_character":25,"end_line":691,"end_character":35},"updated":"2016-07-05 05:42:05.000000000","message":"May need to take into account the volume has been mount?","commit_id":"b2e4766c6d0d30d0a697cac00205bd6841a96427"},{"author":{"_account_id":4355,"name":"Avishay Traeger","email":"avishay@stratoscale.com","username":"avishay-il"},"change_message_id":"443890171999ea4e76b3a342090bda5880a68e01","unresolved":false,"context_lines":[{"line_number":688,"context_line":"                lv_info[\u0027safe_to_manage\u0027] \u003d False"},{"line_number":689,"context_line":"                lv_info[\u0027reason_not_safe\u0027] \u003d \u0027already managed\u0027"},{"line_number":690,"context_line":"                lv_info[\u0027cinder_id\u0027] \u003d potential_id"},{"line_number":691,"context_line":"            elif self.vg.lv_is_open(lv[\u0027name\u0027]):"},{"line_number":692,"context_line":"                lv_info[\u0027safe_to_manage\u0027] \u003d False"},{"line_number":693,"context_line":"                lv_info[\u0027reason_not_safe\u0027] \u003d \u0027%s in use\u0027 % resource_type"},{"line_number":694,"context_line":"            else:"}],"source_content_type":"text/x-python","patch_set":7,"id":"1aa78d24_55aad719","line":691,"range":{"start_line":691,"start_character":25,"end_line":691,"end_character":35},"in_reply_to":"1aa78d24_acf89a4a","updated":"2016-07-07 05:09:21.000000000","message":"If it is mounted it should be open, unless I misunderstood your comment.","commit_id":"b2e4766c6d0d30d0a697cac00205bd6841a96427"}],"cinder/volume/utils.py":[{"author":{"_account_id":5997,"name":"Walt","display_name":"Hemna","email":"waboring@hemna.com","username":"walter-boring","status":"SAP"},"change_message_id":"fd6f265f4fe2d7f24b4a54c82c846579db18a7a4","unresolved":false,"context_lines":[{"line_number":696,"context_line":""},{"line_number":697,"context_line":""},{"line_number":698,"context_line":"def paginate_entries_list(entries, marker, limit, offset, sort_keys,"},{"line_number":699,"context_line":"                          sort_dirs):"},{"line_number":700,"context_line":"    comparers \u003d [(operator.itemgetter(key.strip()), multiplier)"},{"line_number":701,"context_line":"                 for (key, multiplier) in zip(sort_keys, sort_dirs)]"},{"line_number":702,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"1aa78d24_08b476cf","line":699,"updated":"2016-07-08 03:29:17.000000000","message":"if this could potentially be used elsewhere, can we get a docblock here that explains what this is supposed to do?","commit_id":"b2e4766c6d0d30d0a697cac00205bd6841a96427"},{"author":{"_account_id":4355,"name":"Avishay Traeger","email":"avishay@stratoscale.com","username":"avishay-il"},"change_message_id":"da96dba9fc67582d896393def28ce7dc9e8c0b6a","unresolved":false,"context_lines":[{"line_number":696,"context_line":""},{"line_number":697,"context_line":""},{"line_number":698,"context_line":"def paginate_entries_list(entries, marker, limit, offset, sort_keys,"},{"line_number":699,"context_line":"                          sort_dirs):"},{"line_number":700,"context_line":"    comparers \u003d [(operator.itemgetter(key.strip()), multiplier)"},{"line_number":701,"context_line":"                 for (key, multiplier) in zip(sort_keys, sort_dirs)]"},{"line_number":702,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"1aa78d24_3bb0558b","line":699,"in_reply_to":"1aa78d24_08b476cf","updated":"2016-07-10 07:22:25.000000000","message":"Done","commit_id":"b2e4766c6d0d30d0a697cac00205bd6841a96427"}]}
