)]}'
{"nova/objects/instance_numa.py":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"7f87b3a1fe4dab325fdfc2eab47a2ea75a5bbd86","unresolved":false,"context_lines":[{"line_number":220,"context_line":"            for cell_dict in data_dict.get(\u0027cells\u0027, [])])"},{"line_number":221,"context_line":""},{"line_number":222,"context_line":"    @property"},{"line_number":223,"context_line":"    def cpu_pinning(self):"},{"line_number":224,"context_line":"        \"\"\"Return a set of all host CPUs this NUMATopology is pinned to.\"\"\""},{"line_number":225,"context_line":"        return set(itertools.chain.from_iterable(["},{"line_number":226,"context_line":"            cell.cpu_pinning.values() for cell in self.cells"}],"source_content_type":"text/x-python","patch_set":1,"id":"5faad753_b5e87516","line":223,"range":{"start_line":223,"start_character":8,"end_line":223,"end_character":19},"updated":"2019-09-07 01:11:43.000000000","message":"retrunign a dict of the mapping and allowing the calleer to decid if they want the keys (guest cpus) or value(host cpus) is proably a nicer interface.\n\nit als is what the toplogy api would want.","commit_id":"71ba0f65f4821cd011f22c9c10f688f854d03317"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"7f87b3a1fe4dab325fdfc2eab47a2ea75a5bbd86","unresolved":false,"context_lines":[{"line_number":222,"context_line":"    @property"},{"line_number":223,"context_line":"    def cpu_pinning(self):"},{"line_number":224,"context_line":"        \"\"\"Return a set of all host CPUs this NUMATopology is pinned to.\"\"\""},{"line_number":225,"context_line":"        return set(itertools.chain.from_iterable(["},{"line_number":226,"context_line":"            cell.cpu_pinning.values() for cell in self.cells"},{"line_number":227,"context_line":"            if cell.cpu_pinning]))"},{"line_number":228,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"5faad753_d5889172","line":225,"range":{"start_line":225,"start_character":15,"end_line":225,"end_character":48},"updated":"2019-09-07 01:11:43.000000000","message":"if only we had utils.flatten_iterable :)\n\ni think the other form is simpler to understatnd personally\n\nitertools.chain(*[...]) but this does the same thing","commit_id":"71ba0f65f4821cd011f22c9c10f688f854d03317"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"7f87b3a1fe4dab325fdfc2eab47a2ea75a5bbd86","unresolved":false,"context_lines":[{"line_number":222,"context_line":"    @property"},{"line_number":223,"context_line":"    def cpu_pinning(self):"},{"line_number":224,"context_line":"        \"\"\"Return a set of all host CPUs this NUMATopology is pinned to.\"\"\""},{"line_number":225,"context_line":"        return set(itertools.chain.from_iterable(["},{"line_number":226,"context_line":"            cell.cpu_pinning.values() for cell in self.cells"},{"line_number":227,"context_line":"            if cell.cpu_pinning]))"},{"line_number":228,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"5faad753_9574599b","line":225,"range":{"start_line":225,"start_character":49,"end_line":225,"end_character":50},"updated":"2019-09-07 01:11:43.000000000","message":"in python 3 would could drop the []\n\nas we now have generate expressions\ntoo bad we still need python 2 support.","commit_id":"71ba0f65f4821cd011f22c9c10f688f854d03317"}],"nova/tests/unit/objects/test_instance_numa.py":[{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"6e239ac05b6e0caa2445e6ee2d672b4cb6256684","unresolved":false,"context_lines":[{"line_number":142,"context_line":""},{"line_number":143,"context_line":"        self.assertEqual(set(), topo_obj.cpu_pinning)"},{"line_number":144,"context_line":""},{"line_number":145,"context_line":"        topo_obj.cells[0].pin_vcpus((1, 10), (2, 11))"},{"line_number":146,"context_line":"        topo_obj.cells[1].pin_vcpus((3, 0), (4, 1))"},{"line_number":147,"context_line":""},{"line_number":148,"context_line":"        self.assertEqual(set([0, 1, 10, 11]), topo_obj.cpu_pinning)"}],"source_content_type":"text/x-python","patch_set":1,"id":"7faddb67_063404fa","line":145,"updated":"2019-09-04 22:26:56.000000000","message":"Slightly better code coverage (proving the `if cell.cpu_pinning` bit) if you do an intermediate step with just one of these lines, then add the second one and retest (to prove the chain bit as you\u0027re doing).","commit_id":"71ba0f65f4821cd011f22c9c10f688f854d03317"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"c6998f90297669c46f8a06f68a5f42024a4b5814","unresolved":false,"context_lines":[{"line_number":142,"context_line":""},{"line_number":143,"context_line":"        self.assertEqual(set(), topo_obj.cpu_pinning)"},{"line_number":144,"context_line":""},{"line_number":145,"context_line":"        topo_obj.cells[0].pin_vcpus((1, 10), (2, 11))"},{"line_number":146,"context_line":"        topo_obj.cells[1].pin_vcpus((3, 0), (4, 1))"},{"line_number":147,"context_line":""},{"line_number":148,"context_line":"        self.assertEqual(set([0, 1, 10, 11]), topo_obj.cpu_pinning)"}],"source_content_type":"text/x-python","patch_set":1,"id":"5faad753_61122d5b","line":145,"in_reply_to":"7faddb67_063404fa","updated":"2019-09-09 10:11:52.000000000","message":"Done","commit_id":"71ba0f65f4821cd011f22c9c10f688f854d03317"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"ac331a6a864af0d3c0bef1895febc8777d455447","unresolved":false,"context_lines":[{"line_number":142,"context_line":""},{"line_number":143,"context_line":"        self.assertEqual(set(), topo_obj.cpu_pinning)"},{"line_number":144,"context_line":""},{"line_number":145,"context_line":"        topo_obj.cells[0].pin_vcpus((1, 10), (2, 11))"},{"line_number":146,"context_line":"        topo_obj.cells[1].pin_vcpus((3, 0), (4, 1))"},{"line_number":147,"context_line":""},{"line_number":148,"context_line":"        self.assertEqual(set([0, 1, 10, 11]), topo_obj.cpu_pinning)"}],"source_content_type":"text/x-python","patch_set":1,"id":"5faad753_c4f9d34d","line":145,"in_reply_to":"7faddb67_063404fa","updated":"2019-09-06 09:53:37.000000000","message":"internal note : tuple is (virtual_cpu, physical_cpu)","commit_id":"71ba0f65f4821cd011f22c9c10f688f854d03317"}]}
