)]}'
{"nova/pci/request.py":[{"author":{"_account_id":28714,"name":"Adrian Chiris","email":"adrianc@nvidia.com","username":"adrianc"},"change_message_id":"84f023f3f3d9f944bea8c5192e0ccfb5105210e9","unresolved":false,"context_lines":[{"line_number":184,"context_line":"    \"\"\""},{"line_number":185,"context_line":"    pci_requests \u003d []"},{"line_number":186,"context_line":"    for vif in vifs:"},{"line_number":187,"context_line":"        spec \u003d {}"},{"line_number":188,"context_line":"        vnic_type \u003d vif[\u0027vnic_type\u0027]"},{"line_number":189,"context_line":"        if vnic_type in network_model.VNIC_TYPES_SRIOV:"},{"line_number":190,"context_line":"            spec[\"dev_type\"] \u003d PF_TYPE if vnic_type \u003d\u003d \\"}],"source_content_type":"text/x-python","patch_set":1,"id":"3f79a3b5_a0cf6552","line":187,"range":{"start_line":187,"start_character":8,"end_line":187,"end_character":17},"updated":"2018-10-24 14:04:15.000000000","message":"the spec needs to contain the physical_network mapping so that the pci resource tracker will know which PCI function to allocate","commit_id":"793bb79cc9efe3314b0d80f6c411745686d3fdab"},{"author":{"_account_id":7634,"name":"Takashi Natsume","email":"takanattie@gmail.com","username":"natsumet"},"change_message_id":"b81fcec74df328c291a7b062d9554ef4c8986fa3","unresolved":false,"context_lines":[{"line_number":191,"context_line":"    spec \u003d {}"},{"line_number":192,"context_line":"    vnic_type \u003d vif[\u0027vnic_type\u0027]"},{"line_number":193,"context_line":"    if vnic_type in network_model.VNIC_TYPES_SRIOV:"},{"line_number":194,"context_line":"        spec[\"dev_type\"] \u003d PF_TYPE if vnic_type \u003d\u003d \\"},{"line_number":195,"context_line":"            network_model.VNIC_TYPE_DIRECT_PHYSICAL else VF_TYPE"},{"line_number":196,"context_line":"        spec[\"physical_network\"] \u003d vif[\u0027profile\u0027][\u0027physical_network\u0027]"},{"line_number":197,"context_line":"        pci_request \u003d objects.InstancePCIRequest("},{"line_number":198,"context_line":"            count\u003d1,"}],"source_content_type":"text/x-python","patch_set":3,"id":"3f79a3b5_54ef16f9","line":195,"range":{"start_line":194,"start_character":27,"end_line":195,"end_character":64},"updated":"2018-11-26 02:15:26.000000000","message":"nit:\n(PF_TYPE if vnic_type \u003d\u003d\n            network_model.VNIC_TYPE_DIRECT_PHYSICAL else VF_TYPE)","commit_id":"f00b5811d5ed52cde7d7728cced10d74c46b3c25"},{"author":{"_account_id":28714,"name":"Adrian Chiris","email":"adrianc@nvidia.com","username":"adrianc"},"change_message_id":"8bf03f9da2d488a60de052160eb830820c85f554","unresolved":false,"context_lines":[{"line_number":191,"context_line":"    spec \u003d {}"},{"line_number":192,"context_line":"    vnic_type \u003d vif[\u0027vnic_type\u0027]"},{"line_number":193,"context_line":"    if vnic_type in network_model.VNIC_TYPES_SRIOV:"},{"line_number":194,"context_line":"        spec[\"dev_type\"] \u003d PF_TYPE if vnic_type \u003d\u003d \\"},{"line_number":195,"context_line":"            network_model.VNIC_TYPE_DIRECT_PHYSICAL else VF_TYPE"},{"line_number":196,"context_line":"        spec[\"physical_network\"] \u003d vif[\u0027profile\u0027][\u0027physical_network\u0027]"},{"line_number":197,"context_line":"        pci_request \u003d objects.InstancePCIRequest("},{"line_number":198,"context_line":"            count\u003d1,"}],"source_content_type":"text/x-python","patch_set":3,"id":"3f79a3b5_7b3a3332","line":195,"range":{"start_line":194,"start_character":27,"end_line":195,"end_character":64},"in_reply_to":"3f79a3b5_54ef16f9","updated":"2018-11-26 17:42:59.000000000","message":"Done","commit_id":"f00b5811d5ed52cde7d7728cced10d74c46b3c25"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"f2889f81b069df7820ee3e156f4f4def76953aaf","unresolved":false,"context_lines":[{"line_number":197,"context_line":"        pci_request \u003d objects.InstancePCIRequest("},{"line_number":198,"context_line":"            count\u003d1,"},{"line_number":199,"context_line":"            spec\u003d[spec],"},{"line_number":200,"context_line":"            request_id\u003duuidutils.generate_uuid(),"},{"line_number":201,"context_line":"            numa_policy\u003dnuma_policy)"},{"line_number":202,"context_line":"    return pci_request"},{"line_number":203,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"3f79a3b5_c61a8e7e","line":200,"range":{"start_line":200,"start_character":11,"end_line":200,"end_character":48},"updated":"2018-11-26 18:43:21.000000000","message":"so the current patch is implementing option 2\nhttps://review.openstack.org/#/c/605116/6/specs/stein/approved/libvirt-neutron-sriov-livemigration.rst@111\n\nwhere by we generate a new request id per vif.\n\nwe could make this deterministib by using a uuid5\nhttps://docs.python.org/2/library/uuid.html#uuid.uuid5\ncomprised of the vif uuid as the namespace and the hostname as the name field.\n\nhaving a deterministc uuid may have some advantages but may not be needed.","commit_id":"6aa7d3e9612ff6922138aa6372049ae918e350fa"}],"nova/tests/unit/pci/test_request.py":[{"author":{"_account_id":7634,"name":"Takashi Natsume","email":"takanattie@gmail.com","username":"natsumet"},"change_message_id":"b81fcec74df328c291a7b062d9554ef4c8986fa3","unresolved":false,"context_lines":[{"line_number":17,"context_line":""},{"line_number":18,"context_line":"from nova import exception"},{"line_number":19,"context_line":"from nova import test"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"from nova.network import model"},{"line_number":22,"context_line":"from nova.pci import request"},{"line_number":23,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"3f79a3b5_54ddd63c","line":20,"updated":"2018-11-26 02:15:26.000000000","message":"This blank line is not necessary.\nAnd import statements should be sorted in alphabetical order.\n\nfrom nova import exception\nfrom nova.network import model\nfrom nova.pci import request\nfrom nova import test","commit_id":"f00b5811d5ed52cde7d7728cced10d74c46b3c25"},{"author":{"_account_id":28714,"name":"Adrian Chiris","email":"adrianc@nvidia.com","username":"adrianc"},"change_message_id":"8bf03f9da2d488a60de052160eb830820c85f554","unresolved":false,"context_lines":[{"line_number":17,"context_line":""},{"line_number":18,"context_line":"from nova import exception"},{"line_number":19,"context_line":"from nova import test"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"from nova.network import model"},{"line_number":22,"context_line":"from nova.pci import request"},{"line_number":23,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"3f79a3b5_5b3f3722","line":20,"in_reply_to":"3f79a3b5_54ddd63c","updated":"2018-11-26 17:42:59.000000000","message":"Done","commit_id":"f00b5811d5ed52cde7d7728cced10d74c46b3c25"},{"author":{"_account_id":7634,"name":"Takashi Natsume","email":"takanattie@gmail.com","username":"natsumet"},"change_message_id":"b81fcec74df328c291a7b062d9554ef4c8986fa3","unresolved":false,"context_lines":[{"line_number":250,"context_line":"                pci_requests.append(pci_req)"},{"line_number":251,"context_line":"        # assert that request objects are only generated for"},{"line_number":252,"context_line":"        # sriov vnic types"},{"line_number":253,"context_line":"        self.assertTrue(len(pci_requests) \u003d\u003d 2)"},{"line_number":254,"context_line":"        # then assert they have the expect dev_type and"},{"line_number":255,"context_line":"        # default numa_policy"},{"line_number":256,"context_line":"        expect_request \u003d ["}],"source_content_type":"text/x-python","patch_set":3,"id":"3f79a3b5_14e3de04","line":253,"range":{"start_line":253,"start_character":8,"end_line":253,"end_character":47},"updated":"2018-11-26 02:15:26.000000000","message":"self.assertEqual(2, len(pci_requests))","commit_id":"f00b5811d5ed52cde7d7728cced10d74c46b3c25"},{"author":{"_account_id":28714,"name":"Adrian Chiris","email":"adrianc@nvidia.com","username":"adrianc"},"change_message_id":"8bf03f9da2d488a60de052160eb830820c85f554","unresolved":false,"context_lines":[{"line_number":250,"context_line":"                pci_requests.append(pci_req)"},{"line_number":251,"context_line":"        # assert that request objects are only generated for"},{"line_number":252,"context_line":"        # sriov vnic types"},{"line_number":253,"context_line":"        self.assertTrue(len(pci_requests) \u003d\u003d 2)"},{"line_number":254,"context_line":"        # then assert they have the expect dev_type and"},{"line_number":255,"context_line":"        # default numa_policy"},{"line_number":256,"context_line":"        expect_request \u003d ["}],"source_content_type":"text/x-python","patch_set":3,"id":"3f79a3b5_bb344b48","line":253,"range":{"start_line":253,"start_character":8,"end_line":253,"end_character":47},"in_reply_to":"3f79a3b5_14e3de04","updated":"2018-11-26 17:42:59.000000000","message":"Done","commit_id":"f00b5811d5ed52cde7d7728cced10d74c46b3c25"}]}
