)]}'
{"nova/compute/resource_tracker.py":[{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"6874d4b774f0d8711a17f459ee2cd3ef4079de2e","unresolved":false,"context_lines":[{"line_number":130,"context_line":"                  \"MB\", {\u0027flavor\u0027: instance_ref.memory_mb,"},{"line_number":131,"context_line":"                          \u0027overhead\u0027: overhead[\u0027memory_mb\u0027]})"},{"line_number":132,"context_line":""},{"line_number":133,"context_line":"        pci_requests \u003d objects.InstancePCIRequests.get_by_instance_uuid("},{"line_number":134,"context_line":"            context, instance_ref.uuid)"},{"line_number":135,"context_line":"        claim \u003d claims.Claim(context, instance_ref, self, self.compute_node,"},{"line_number":136,"context_line":"                             pci_requests, overhead\u003doverhead, limits\u003dlimits)"}],"source_content_type":"text/x-python","patch_set":7,"id":"1a122d0e_b1a30c00","line":133,"updated":"2016-05-02 19:52:45.000000000","message":"Note to self: This always returns an InstancePCIRequests object with instance_uuid filled out, even if there are no requests.","commit_id":"850513766fb24e31cfe6a643fc0bf377573b383e"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"6874d4b774f0d8711a17f459ee2cd3ef4079de2e","unresolved":false,"context_lines":[{"line_number":146,"context_line":"        if self.pci_tracker:"},{"line_number":147,"context_line":"            # NOTE(jaypipes): ComputeNode.pci_device_pools is set below"},{"line_number":148,"context_line":"            # in _update_usage_from_instance()."},{"line_number":149,"context_line":"            self.pci_tracker.claim_instance(context, pci_requests,"},{"line_number":150,"context_line":"                                            instance_numa_topology)"},{"line_number":151,"context_line":""},{"line_number":152,"context_line":"        # Mark resources in-use and update stats"}],"source_content_type":"text/x-python","patch_set":7,"id":"1a122d0e_d1aa08d2","line":149,"updated":"2016-05-02 19:52:45.000000000","message":"It\u0027s weird to have a \"claim_instance\" method that doesn\u0027t take anything about the instance. Turns out, the instance_uuid is in pci_requests always, which is what claim_instance uses to know which instance to use. It works fine, but it\u0027s confusing, IMHO.","commit_id":"850513766fb24e31cfe6a643fc0bf377573b383e"}],"nova/pci/manager.py":[{"author":{"_account_id":5511,"name":"Nikola Dipanov","email":"ndipanov@redhat.com","username":"ndipanov"},"change_message_id":"18be44499424a9d53f9b4c8c3f659da43fd5d5e4","unresolved":false,"context_lines":[{"line_number":169,"context_line":"            self.pci_devs.objects.append(dev_obj)"},{"line_number":170,"context_line":"            self.stats.add_device(dev_obj)"},{"line_number":171,"context_line":""},{"line_number":172,"context_line":"    def _claim_instance(self, context, instance, prefix\u003d\u0027\u0027):"},{"line_number":173,"context_line":"        pci_requests \u003d objects.InstancePCIRequests.get_by_instance("},{"line_number":174,"context_line":"            context, instance)"},{"line_number":175,"context_line":"        if not pci_requests.requests:"}],"source_content_type":"text/x-python","patch_set":3,"id":"5a18252c_431c3713","side":"PARENT","line":172,"range":{"start_line":172,"start_character":49,"end_line":172,"end_character":58},"updated":"2016-04-13 13:18:49.000000000","message":"See what I wrote on the previous patch. This prefix here had it\u0027s use but I guess it got lost while this was being hacked on with insufficient understanding of the subtleties involved.","commit_id":"8fcd8fa0f2e5a0f1c638fe5060db162ab306a88b"},{"author":{"_account_id":5511,"name":"Nikola Dipanov","email":"ndipanov@redhat.com","username":"ndipanov"},"change_message_id":"18be44499424a9d53f9b4c8c3f659da43fd5d5e4","unresolved":false,"context_lines":[{"line_number":199,"context_line":"        if devs:"},{"line_number":200,"context_line":"            self.allocations[instance[\u0027uuid\u0027]] +\u003d devs"},{"line_number":201,"context_line":""},{"line_number":202,"context_line":"    def claim_instance(self, context, pci_requests, instance_numa_topology):"},{"line_number":203,"context_line":"        if not self.pci_devs or not pci_requests.requests:"},{"line_number":204,"context_line":"            return"},{"line_number":205,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"5a18252c_c315e79b","line":202,"range":{"start_line":202,"start_character":23,"end_line":202,"end_character":74},"updated":"2016-04-13 13:18:49.000000000","message":"I think we actually want (based on my comments in previous patch:\n\n  def claim_instance(self, ctxt, instance, prefix\u003d\u0027new_\u0027):\n    # later in _claim_instance...\n    pci_requests \u003d instance.migration_context.get(\u0027pci_requests\u0027, prefix)\n    # Get actual dev objects from stats based on correct requests\n\nand whether we need a DB hit or not should be hidden behind the instance object and it\u0027s lazy loading of pci_requests and migration_context","commit_id":"33ccc348f0ac264fef0009e9cfaf813b9a1ee513"}]}
