)]}'
{"nova/tests/functional/db/test_allocation_candidates.py":[{"author":{"_account_id":25625,"name":"Tetsuro Nakamura","email":"tetsuro.nakamura.bc@hco.ntt.co.jp","username":"tetsuro0907"},"change_message_id":"1b89213dcc126993bc1a21e31170019fb5f4cba9","unresolved":false,"context_lines":[{"line_number":374,"context_line":"        observed \u003d {}"},{"line_number":375,"context_line":"        for psum in candidates.provider_summaries:"},{"line_number":376,"context_line":"            rpname \u003d self.rp_uuid_to_name[psum.resource_provider.uuid]"},{"line_number":377,"context_line":"            parent \u003d psum.resource_provider.parent_provider_uuid"},{"line_number":378,"context_line":"            if rpname in observed:"},{"line_number":379,"context_line":"                self.fail(\"Found resource provider %s more than once in \""},{"line_number":380,"context_line":"                          \"provider_summaries!\" % rpname)"}],"source_content_type":"text/x-python","patch_set":2,"id":"5f93b717_ab90914b","line":377,"range":{"start_line":377,"start_character":12,"end_line":377,"end_character":64},"updated":"2018-01-31 11:56:05.000000000","message":"Can\u0027t we use parent_name rather than parent_uuid?","commit_id":"58c78b7cb736f9126bd1edb8bf653f5140dbdbd2"},{"author":{"_account_id":25625,"name":"Tetsuro Nakamura","email":"tetsuro.nakamura.bc@hco.ntt.co.jp","username":"tetsuro0907"},"change_message_id":"68bdec161b29400976b2b2a809be815e76c542e6","unresolved":false,"context_lines":[{"line_number":374,"context_line":"        observed \u003d {}"},{"line_number":375,"context_line":"        for psum in candidates.provider_summaries:"},{"line_number":376,"context_line":"            rpname \u003d self.rp_uuid_to_name[psum.resource_provider.uuid]"},{"line_number":377,"context_line":"            parent \u003d psum.resource_provider.parent_provider_uuid"},{"line_number":378,"context_line":"            if rpname in observed:"},{"line_number":379,"context_line":"                self.fail(\"Found resource provider %s more than once in \""},{"line_number":380,"context_line":"                          \"provider_summaries!\" % rpname)"}],"source_content_type":"text/x-python","patch_set":2,"id":"5f93b717_6f7ebee4","line":377,"range":{"start_line":377,"start_character":12,"end_line":377,"end_character":64},"in_reply_to":"5f93b717_8e435513","updated":"2018-02-03 05:54:21.000000000","message":"Sorry for not making it clear. I meant, \"Why not converting it using rp_uuid_to_name to provider_name just as well as rpname?\"","commit_id":"58c78b7cb736f9126bd1edb8bf653f5140dbdbd2"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"7c7db866c5bc8a45a850bd9b030d1e588377daaf","unresolved":false,"context_lines":[{"line_number":374,"context_line":"        observed \u003d {}"},{"line_number":375,"context_line":"        for psum in candidates.provider_summaries:"},{"line_number":376,"context_line":"            rpname \u003d self.rp_uuid_to_name[psum.resource_provider.uuid]"},{"line_number":377,"context_line":"            parent \u003d psum.resource_provider.parent_provider_uuid"},{"line_number":378,"context_line":"            if rpname in observed:"},{"line_number":379,"context_line":"                self.fail(\"Found resource provider %s more than once in \""},{"line_number":380,"context_line":"                          \"provider_summaries!\" % rpname)"}],"source_content_type":"text/x-python","patch_set":2,"id":"5f93b717_8e435513","line":377,"range":{"start_line":377,"start_character":12,"end_line":377,"end_character":64},"in_reply_to":"5f93b717_ab90914b","updated":"2018-01-31 15:50:46.000000000","message":"The name is not in the provider_summaries part of the response.","commit_id":"58c78b7cb736f9126bd1edb8bf653f5140dbdbd2"},{"author":{"_account_id":25625,"name":"Tetsuro Nakamura","email":"tetsuro.nakamura.bc@hco.ntt.co.jp","username":"tetsuro0907"},"change_message_id":"68bdec161b29400976b2b2a809be815e76c542e6","unresolved":false,"context_lines":[{"line_number":1445,"context_line":"        # are handled by allocation candidates:"},{"line_number":1446,"context_line":"        # expected \u003d {"},{"line_number":1447,"context_line":"        #     \u0027cn\u0027: None,"},{"line_number":1448,"context_line":"        #      \u0027cn_numa0\u0027: \u0027cn\u0027,"},{"line_number":1449,"context_line":"        #      \u0027cn_numa1\u0027: \u0027cn\u0027,"},{"line_number":1450,"context_line":"        #      \u0027pf0\u0027: \u0027cn_numa0\u0027,"},{"line_number":1451,"context_line":"        #      \u0027pf1\u0027: \u0027cn_numa1\u0027,"}],"source_content_type":"text/x-python","patch_set":2,"id":"5f93b717_0f813ac3","line":1448,"range":{"start_line":1448,"start_character":28,"end_line":1448,"end_character":30},"updated":"2018-02-03 05:54:21.000000000","message":"...or we should use uuids here.","commit_id":"58c78b7cb736f9126bd1edb8bf653f5140dbdbd2"},{"author":{"_account_id":25625,"name":"Tetsuro Nakamura","email":"tetsuro.nakamura.bc@hco.ntt.co.jp","username":"tetsuro0907"},"change_message_id":"1b89213dcc126993bc1a21e31170019fb5f4cba9","unresolved":false,"context_lines":[{"line_number":1450,"context_line":"        #      \u0027pf0\u0027: \u0027cn_numa0\u0027,"},{"line_number":1451,"context_line":"        #      \u0027pf1\u0027: \u0027cn_numa1\u0027,"},{"line_number":1452,"context_line":"        # }"},{"line_number":1453,"context_line":"        #                          uuids.numa_cell0, uuids.numa_cell1])"},{"line_number":1454,"context_line":"        # self._validate_provider_summary_structure(expected, alloc_cands)"},{"line_number":1455,"context_line":"        self._validate_provider_summary_structure({}, alloc_cands)"},{"line_number":1456,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"5f93b717_6b37e94e","line":1453,"range":{"start_line":1453,"start_character":0,"end_line":1453,"end_character":71},"updated":"2018-01-31 11:56:05.000000000","message":"copy pasta?","commit_id":"58c78b7cb736f9126bd1edb8bf653f5140dbdbd2"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"7c7db866c5bc8a45a850bd9b030d1e588377daaf","unresolved":false,"context_lines":[{"line_number":1450,"context_line":"        #      \u0027pf0\u0027: \u0027cn_numa0\u0027,"},{"line_number":1451,"context_line":"        #      \u0027pf1\u0027: \u0027cn_numa1\u0027,"},{"line_number":1452,"context_line":"        # }"},{"line_number":1453,"context_line":"        #                          uuids.numa_cell0, uuids.numa_cell1])"},{"line_number":1454,"context_line":"        # self._validate_provider_summary_structure(expected, alloc_cands)"},{"line_number":1455,"context_line":"        self._validate_provider_summary_structure({}, alloc_cands)"},{"line_number":1456,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"5f93b717_6ec929aa","line":1453,"range":{"start_line":1453,"start_character":0,"end_line":1453,"end_character":71},"in_reply_to":"5f93b717_6b37e94e","updated":"2018-01-31 15:50:46.000000000","message":"oops, yeah :) I will clean those up.","commit_id":"58c78b7cb736f9126bd1edb8bf653f5140dbdbd2"},{"author":{"_account_id":25625,"name":"Tetsuro Nakamura","email":"tetsuro.nakamura.bc@hco.ntt.co.jp","username":"tetsuro0907"},"change_message_id":"1b89213dcc126993bc1a21e31170019fb5f4cba9","unresolved":false,"context_lines":[{"line_number":1470,"context_line":"        #         (fields.ResourceClass.SRIOV_NET_VF, 8, 0),"},{"line_number":1471,"context_line":"        #      ]),"},{"line_number":1472,"context_line":"        # }"},{"line_number":1473,"context_line":"        #                          uuids.numa_cell0, uuids.numa_cell1])"},{"line_number":1474,"context_line":"        # self._validate_provider_summary_resources(expected, alloc_cands)"},{"line_number":1475,"context_line":"        self._validate_provider_summary_resources({}, alloc_cands)"},{"line_number":1476,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"5f93b717_2b26c116","line":1473,"range":{"start_line":1473,"start_character":0,"end_line":1473,"end_character":71},"updated":"2018-01-31 11:56:05.000000000","message":"this is everywhere...","commit_id":"58c78b7cb736f9126bd1edb8bf653f5140dbdbd2"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"18ae54ee77f46884ee264fa17ec4fe1b58cc139c","unresolved":false,"context_lines":[{"line_number":364,"context_line":"                         resource provider names (or None if the provider"},{"line_number":365,"context_line":"                         should NOT have a parent provider UUID attribute set):"},{"line_number":366,"context_line":"                         {"},{"line_number":367,"context_line":"                           grandparent_provider_name: None,"},{"line_number":368,"context_line":"                           parent_provider_name: grandparent_provider_name,"},{"line_number":369,"context_line":"                           grandchild_provider_name: parent_provider_name"},{"line_number":370,"context_line":"                         ...,"},{"line_number":371,"context_line":"                         }"},{"line_number":372,"context_line":"        :param candidates: The result from AllocationCandidates.get_by_requests"}],"source_content_type":"text/x-python","patch_set":5,"id":"bf659307_ca2f1386","line":369,"range":{"start_line":367,"start_character":27,"end_line":369,"end_character":73},"updated":"2018-03-29 21:54:09.000000000","message":"The names in the example are a bit confusing.  Suggest:\n\n root_provider_name: None,\n child_provider_name: root_provider_name,\n grandchild_provider_name: child_provider_name","commit_id":"42bcf703687b87abfefb21c05a68a1158bdbc7b7"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"18ae54ee77f46884ee264fa17ec4fe1b58cc139c","unresolved":false,"context_lines":[{"line_number":1685,"context_line":"        # TODO(jaypipes): This should be the following once nested providers"},{"line_number":1686,"context_line":"        # are handled by allocation candidates:"},{"line_number":1687,"context_line":"        # expected \u003d {"},{"line_number":1688,"context_line":"        #     \u0027cn\u0027: None,"},{"line_number":1689,"context_line":"        #      \u0027cn_numa0\u0027: \u0027cn\u0027,"},{"line_number":1690,"context_line":"        #      \u0027cn_numa1\u0027: \u0027cn\u0027,"},{"line_number":1691,"context_line":"        #      \u0027pf0\u0027: \u0027cn_numa0\u0027,"},{"line_number":1692,"context_line":"        #      \u0027pf1\u0027: \u0027cn_numa1\u0027,"},{"line_number":1693,"context_line":"        # }"},{"line_number":1694,"context_line":"        # self._validate_provider_summary_structure(expected, alloc_cands)"},{"line_number":1695,"context_line":"        self._validate_provider_summary_structure({}, alloc_cands)"}],"source_content_type":"text/x-python","patch_set":5,"id":"bf659307_ca44f349","line":1692,"range":{"start_line":1688,"start_character":0,"end_line":1692,"end_character":33},"updated":"2018-03-29 21:54:09.000000000","message":"Since this never changes (right?) let\u0027s define it once (expected_provider_summary_structure or whatever) and reuse it.","commit_id":"42bcf703687b87abfefb21c05a68a1158bdbc7b7"}]}
