)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"87acc2f2fe52b51ad540571ac0e58c49f14bf5b1","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":12,"id":"6b05342c_970821fd","updated":"2022-08-26 15:45:13.000000000","message":"Looks fine to me","commit_id":"d483a696a5c47532b4c19aa1398779beaa1f7f47"}],"nova/compute/pci_placement_translator.py":[{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"afe9f0a22d035587524d6d548b0aab4ee7bc3795","unresolved":true,"context_lines":[{"line_number":518,"context_line":"    LOG.info(\"Placement PCI resource view: %s\", pv)"},{"line_number":519,"context_line":""},{"line_number":520,"context_line":"    pv.update_provider_tree(provider_tree)"},{"line_number":521,"context_line":"    print(\u0027allocs before\u0027, allocations)"},{"line_number":522,"context_line":"    updated \u003d pv.update_allocations(allocations, provider_tree)"},{"line_number":523,"context_line":"    if updated:"},{"line_number":524,"context_line":"        print(\u0027allocs after\u0027, allocations)"}],"source_content_type":"text/x-python","patch_set":1,"id":"97ca8dc1_62c98de3","line":521,"updated":"2022-07-28 09:29:38.000000000","message":"drop the prints","commit_id":"b9b8295e2292539524a33206e8ba66a9d9203e16"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"87acc2f2fe52b51ad540571ac0e58c49f14bf5b1","unresolved":false,"context_lines":[{"line_number":518,"context_line":"    LOG.info(\"Placement PCI resource view: %s\", pv)"},{"line_number":519,"context_line":""},{"line_number":520,"context_line":"    pv.update_provider_tree(provider_tree)"},{"line_number":521,"context_line":"    print(\u0027allocs before\u0027, allocations)"},{"line_number":522,"context_line":"    updated \u003d pv.update_allocations(allocations, provider_tree)"},{"line_number":523,"context_line":"    if updated:"},{"line_number":524,"context_line":"        print(\u0027allocs after\u0027, allocations)"}],"source_content_type":"text/x-python","patch_set":1,"id":"ef6c08d8_d1b9af79","line":521,"in_reply_to":"97ca8dc1_62c98de3","updated":"2022-08-26 15:45:13.000000000","message":"Done (evidently)","commit_id":"b9b8295e2292539524a33206e8ba66a9d9203e16"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"87acc2f2fe52b51ad540571ac0e58c49f14bf5b1","unresolved":false,"context_lines":[{"line_number":184,"context_line":"        # Nothing to do here. The update_provider_tree we handle full RP"},{"line_number":185,"context_line":"        pass"},{"line_number":186,"context_line":""},{"line_number":187,"context_line":"    def _get_allocations(self) -\u003e ty.Mapping[str, int]:"},{"line_number":188,"context_line":"        \"\"\"Return a dict of used resources keyed by consumer UUID."},{"line_number":189,"context_line":""},{"line_number":190,"context_line":"        Note that:"}],"source_content_type":"text/x-python","patch_set":12,"id":"d14edf6b_11db92db","line":187,"range":{"start_line":187,"start_character":34,"end_line":187,"end_character":54},"updated":"2022-08-26 15:45:13.000000000","message":"Is this definitely correct?\n\nLater: I guess it must be seeing as this is validated by mypy. Guess this is a more generic version of the collections.Counter return type.","commit_id":"d483a696a5c47532b4c19aa1398779beaa1f7f47"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"cc9da9c613f636c6bdff9ac1507074965f9fc13c","unresolved":false,"context_lines":[{"line_number":184,"context_line":"        # Nothing to do here. The update_provider_tree we handle full RP"},{"line_number":185,"context_line":"        pass"},{"line_number":186,"context_line":""},{"line_number":187,"context_line":"    def _get_allocations(self) -\u003e ty.Mapping[str, int]:"},{"line_number":188,"context_line":"        \"\"\"Return a dict of used resources keyed by consumer UUID."},{"line_number":189,"context_line":""},{"line_number":190,"context_line":"        Note that:"}],"source_content_type":"text/x-python","patch_set":12,"id":"80465d20_8995a3f4","line":187,"range":{"start_line":187,"start_character":34,"end_line":187,"end_character":54},"in_reply_to":"d14edf6b_11db92db","updated":"2022-08-27 10:46:05.000000000","message":"Probably changed the implementation and then just extended the return type to satisfy mypy. It is not wrong, but probably collections.Counter would be more precise.","commit_id":"d483a696a5c47532b4c19aa1398779beaa1f7f47"}],"nova/scheduler/client/report.py":[{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"afe9f0a22d035587524d6d548b0aab4ee7bc3795","unresolved":true,"context_lines":[{"line_number":1386,"context_line":"                # TODO(gibi): If the allocation update of reshape referred RPs"},{"line_number":1387,"context_line":"                # that just been created then we need to replace the rp_name"},{"line_number":1388,"context_line":"                # the allocations refers to with the UUID of the created RP"},{"line_number":1389,"context_line":"                # as /reshape only takes RP uuids but not names"},{"line_number":1390,"context_line":""},{"line_number":1391,"context_line":"        # If we need to reshape, do it here."},{"line_number":1392,"context_line":"        if allocations is not None:"}],"source_content_type":"text/x-python","patch_set":1,"id":"5ceb651b_651d5ac1","line":1389,"updated":"2022-07-28 09:29:38.000000000","message":"drop this, it is solved by assigning uuid of the PCI RP by","commit_id":"b9b8295e2292539524a33206e8ba66a9d9203e16"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"4cdb5c43a3bcf83089eb62298cec7c2142709a18","unresolved":false,"context_lines":[{"line_number":1386,"context_line":"                # TODO(gibi): If the allocation update of reshape referred RPs"},{"line_number":1387,"context_line":"                # that just been created then we need to replace the rp_name"},{"line_number":1388,"context_line":"                # the allocations refers to with the UUID of the created RP"},{"line_number":1389,"context_line":"                # as /reshape only takes RP uuids but not names"},{"line_number":1390,"context_line":""},{"line_number":1391,"context_line":"        # If we need to reshape, do it here."},{"line_number":1392,"context_line":"        if allocations is not None:"}],"source_content_type":"text/x-python","patch_set":1,"id":"e491dcd5_65138477","line":1389,"in_reply_to":"5ceb651b_651d5ac1","updated":"2022-08-08 10:12:24.000000000","message":"Done","commit_id":"b9b8295e2292539524a33206e8ba66a9d9203e16"}],"nova/tests/functional/libvirt/test_pci_in_placement.py":[{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"afe9f0a22d035587524d6d548b0aab4ee7bc3795","unresolved":true,"context_lines":[{"line_number":960,"context_line":"        self.assert_placement_pci_view(\"compute1\", **expected_placement_view)"},{"line_number":961,"context_line":""},{"line_number":962,"context_line":"    def test_heal_partial_allocations(self):"},{"line_number":963,"context_line":"        # start a compute without reporting"},{"line_number":964,"context_line":"        # start an instance"},{"line_number":965,"context_line":"        # stat compute with reporting"},{"line_number":966,"context_line":"        # create another instance"},{"line_number":967,"context_line":"        # run periodics to heal allocs for the new instance"},{"line_number":968,"context_line":"        # resize the instance with more devs"},{"line_number":969,"context_line":"        # resize the instance to fewer devs"},{"line_number":970,"context_line":""},{"line_number":971,"context_line":"        # The fake libvirt will emulate on the host:"},{"line_number":972,"context_line":"        # * two type-PCI devs (slot 0 and 1)"}],"source_content_type":"text/x-python","patch_set":1,"id":"5e6cee79_45fbf224","line":969,"range":{"start_line":963,"start_character":1,"end_line":969,"end_character":43},"updated":"2022-07-28 09:29:38.000000000","message":"drop this","commit_id":"b9b8295e2292539524a33206e8ba66a9d9203e16"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"e3e9dbbab2f3cc36af0cfb698a151ca547fd4db5","unresolved":false,"context_lines":[{"line_number":960,"context_line":"        self.assert_placement_pci_view(\"compute1\", **expected_placement_view)"},{"line_number":961,"context_line":""},{"line_number":962,"context_line":"    def test_heal_partial_allocations(self):"},{"line_number":963,"context_line":"        # start a compute without reporting"},{"line_number":964,"context_line":"        # start an instance"},{"line_number":965,"context_line":"        # stat compute with reporting"},{"line_number":966,"context_line":"        # create another instance"},{"line_number":967,"context_line":"        # run periodics to heal allocs for the new instance"},{"line_number":968,"context_line":"        # resize the instance with more devs"},{"line_number":969,"context_line":"        # resize the instance to fewer devs"},{"line_number":970,"context_line":""},{"line_number":971,"context_line":"        # The fake libvirt will emulate on the host:"},{"line_number":972,"context_line":"        # * two type-PCI devs (slot 0 and 1)"}],"source_content_type":"text/x-python","patch_set":1,"id":"4a0f90f0_203786f7","line":969,"range":{"start_line":963,"start_character":1,"end_line":969,"end_character":43},"in_reply_to":"5e6cee79_45fbf224","updated":"2022-08-08 11:37:30.000000000","message":"Done","commit_id":"b9b8295e2292539524a33206e8ba66a9d9203e16"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"a1c1e6e9e9e9e47ef01d277f20036b11dcd71341","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":2,"id":"ff6abe76_9f003e6e","line":1086,"updated":"2022-08-03 13:53:25.000000000","message":"try to add tests to the case when heal tries to delete allocation due to reconfiguration removed the device from the hyp/config","commit_id":"00a23b89a9cdc5e8162be9c834374583d61c31b6"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"7b487c53222b1d52b7116f5e8c26884ef6ef5c1c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"6b3f2c61_b18d3cfc","line":1086,"in_reply_to":"ff6abe76_9f003e6e","updated":"2022-08-08 10:12:48.000000000","message":"Done","commit_id":"00a23b89a9cdc5e8162be9c834374583d61c31b6"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"ccd96a36271651f0bad75a345ae60b92b4ab255a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":12,"id":"31a87e07_6632c092","line":939,"updated":"2022-08-29 19:18:05.000000000","message":"+1","commit_id":"d483a696a5c47532b4c19aa1398779beaa1f7f47"}]}
