)]}'
{"nova/tests/unit/virt/disk/mount/test_api.py":[{"author":{"_account_id":9569,"name":"Sergey Nikitin","email":"nikitinserv@gmail.com","username":"snikitin"},"change_message_id":"da63a524a2a4a5eb4b2e2c762bef1794d2221233","unresolved":false,"context_lines":[{"line_number":89,"context_line":"        mount \u003d self._test_map_dev_with_trycmd(PARTITION)"},{"line_number":90,"context_line":"        self._check_calls(exists,"},{"line_number":91,"context_line":"            [ORIG_DEVICE, AUTOMAP_PARTITION, MAP_PARTITION,"},{"line_number":92,"context_line":"             MAP_PARTITION, MAP_PARTITION, MAP_PARTITION])"},{"line_number":93,"context_line":"        self.assertNotEqual(\"\", mount.error)"},{"line_number":94,"context_line":"        self.assertFalse(mount.mapped)"},{"line_number":95,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"da20952f_42f59654","line":92,"updated":"2015-09-02 09:33:11.000000000","message":"You increased MAX_FILE_CHECKS from 3 to 6. so you should add here 5 MAP_PARTITION instead of 2.","commit_id":"f475cd4cbb21023d179c4563eca85749fcbe6101"}],"nova/virt/disk/mount/api.py":[{"author":{"_account_id":16839,"name":"Cale Rath","email":"ctrath@us.ibm.com","username":"ctrath"},"change_message_id":"fbb92ae563e641d799d979b009825d0af9ba95d8","unresolved":false,"context_lines":[{"line_number":29,"context_line":""},{"line_number":30,"context_line":"MAX_DEVICE_WAIT \u003d 30"},{"line_number":31,"context_line":"MAX_FILE_CHECKS \u003d 6"},{"line_number":32,"context_line":"FILE_CHECK_INTERVAL \u003d 0.25"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"class Mount(object):"}],"source_content_type":"text/x-python","patch_set":7,"id":"5a2ca52d_2213e75c","line":32,"updated":"2015-10-15 18:50:08.000000000","message":"should these be CONF options?","commit_id":"8e6231ffe063b101eacd78cc368a32cd7faeafed"},{"author":{"_account_id":8688,"name":"Alexis Lee","email":"openstack@lxsli.co.uk","username":"lxsli"},"change_message_id":"777836b08e01107b3420b39890eb03b37feca63a","unresolved":false,"context_lines":[{"line_number":29,"context_line":""},{"line_number":30,"context_line":"MAX_DEVICE_WAIT \u003d 30"},{"line_number":31,"context_line":"MAX_FILE_CHECKS \u003d 6"},{"line_number":32,"context_line":"FILE_CHECK_INTERVAL \u003d 0.25"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"class Mount(object):"}],"source_content_type":"text/x-python","patch_set":7,"id":"3a29b11f_fbdbc7eb","line":32,"in_reply_to":"5a2ca52d_2213e75c","updated":"2015-10-19 10:28:04.000000000","message":"I don\u0027t think so, no. You -1d so I suppose you think they should? Are you sure a customer will want to tweak such a specific thing? Remember extra configuration is not free, it adds complexity and maintenance.","commit_id":"8e6231ffe063b101eacd78cc368a32cd7faeafed"},{"author":{"_account_id":16839,"name":"Cale Rath","email":"ctrath@us.ibm.com","username":"ctrath"},"change_message_id":"fbb92ae563e641d799d979b009825d0af9ba95d8","unresolved":false,"context_lines":[{"line_number":216,"context_line":"            else:"},{"line_number":217,"context_line":"                if not err:"},{"line_number":218,"context_line":"                    err \u003d _(\u0027partition %s not found\u0027) % self.partition"},{"line_number":219,"context_line":"                self.error \u003d _(\u0027Failed to map partitions: %s\u0027) % err"},{"line_number":220,"context_line":"        elif self.partition and os.path.exists(automapped_path):"},{"line_number":221,"context_line":"            # Note auto mapping can be enabled with the \u0027max_part\u0027 option"},{"line_number":222,"context_line":"            # to the nbd or loop kernel modules. Beware of possible races"}],"source_content_type":"text/x-python","patch_set":7,"id":"5a2ca52d_82399ba6","line":219,"updated":"2015-10-15 18:50:08.000000000","message":"I\u0027m wondering if it would be useful to log the error here, even though the \u0027error\u0027 member can be used by the caller.","commit_id":"8e6231ffe063b101eacd78cc368a32cd7faeafed"},{"author":{"_account_id":8688,"name":"Alexis Lee","email":"openstack@lxsli.co.uk","username":"lxsli"},"change_message_id":"777836b08e01107b3420b39890eb03b37feca63a","unresolved":false,"context_lines":[{"line_number":216,"context_line":"            else:"},{"line_number":217,"context_line":"                if not err:"},{"line_number":218,"context_line":"                    err \u003d _(\u0027partition %s not found\u0027) % self.partition"},{"line_number":219,"context_line":"                self.error \u003d _(\u0027Failed to map partitions: %s\u0027) % err"},{"line_number":220,"context_line":"        elif self.partition and os.path.exists(automapped_path):"},{"line_number":221,"context_line":"            # Note auto mapping can be enabled with the \u0027max_part\u0027 option"},{"line_number":222,"context_line":"            # to the nbd or loop kernel modules. Beware of possible races"}],"source_content_type":"text/x-python","patch_set":7,"id":"3a29b11f_3b9fff04","line":219,"in_reply_to":"5a2ca52d_82399ba6","updated":"2015-10-19 10:28:04.000000000","message":"I haven\u0027t changed this behaviour, if you want to please put up a patch! :)","commit_id":"8e6231ffe063b101eacd78cc368a32cd7faeafed"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"52b3755edbead3bfac879f8bf529dbe524210955","unresolved":false,"context_lines":[{"line_number":188,"context_line":"        # In Py3 this would be a \u0027nonlocal\u0027; in Py27 a list is our best effort."},{"line_number":189,"context_line":"        rechecks \u003d [MAX_FILE_CHECKS]"},{"line_number":190,"context_line":""},{"line_number":191,"context_line":"        def recheck_path(map_path):"},{"line_number":192,"context_line":"            if os.path.exists(map_path):"},{"line_number":193,"context_line":"                raise loopingcall.LoopingCallDone()"},{"line_number":194,"context_line":"            rechecks[0] -\u003d 1"}],"source_content_type":"text/x-python","patch_set":9,"id":"5aef4532_edde036c","line":191,"updated":"2016-03-09 01:58:06.000000000","message":"I think maybe you instead want RetryDecorator from oslo.service here? It would be simpler, and would keep the retry logic in a way which is consistent with other library users.","commit_id":"6d6425849314739585a583b369aafa864ba5f430"},{"author":{"_account_id":1865,"name":"Andrea Rosa","email":"andrea.rosa@gmail.com","username":"andrea-rosa-m"},"change_message_id":"8773f7a88af3a2f991eb188c2e612cda32a31a0c","unresolved":false,"context_lines":[{"line_number":185,"context_line":""},{"line_number":186,"context_line":"    def map_dev(self):"},{"line_number":187,"context_line":"        \"\"\"Map partitions of the device to the file system namespace.\"\"\""},{"line_number":188,"context_line":""},{"line_number":189,"context_line":"        assert(os.path.exists(self.device))"},{"line_number":190,"context_line":"        LOG.debug(\"Map dev %s\", self.device)"},{"line_number":191,"context_line":"        automapped_path \u003d \u0027/dev/%sp%s\u0027 % (os.path.basename(self.device),"}],"source_content_type":"text/x-python","patch_set":11,"id":"1af94dfe_53aef185","line":188,"updated":"2016-03-16 10:15:13.000000000","message":"nit: unnecessary change","commit_id":"5538edae70c5400e1cf634acf536492f6c2379fc"}]}
