)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"d3c1457a064307c319b13f5979a45091c6a3f2ea","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"8f64a92b_9824ec3c","updated":"2026-03-23 14:42:06.000000000","message":"by the way the reason im not entirely convinced relying on the request spec to heal the network attachments is the best long term solution is because fo https://bugs.launchpad.net/nova/+bug/1855332 the lack of enforcement on attach.\n\nof attach we need to be able to regenerate and exetned the network metadata useing only the vif info and or network info cache. we shoudl nto need to so an upcall to get the request spec and then extend it.\n\nso i think we may want a better solution.\n\nthis would work for spawn i believe so perhaps this could be addressed in multiple commits seperating intiall spwan and move operations from attach is valid as they have very diffent codepaths but i jsut wanted to raise that complexity now so w edone end up having to undo work in teh future.\n\n\ni think how this really shoudl work is on the compute node we shoudl eb able to reconstruct the netwrok_metadata entirely form the neutron port(vifs) and instance however the instnace claim currently happens before we build the resouce and i belive that means we create the claim beofre we create neutron prot when you boot with --network for example.\n\nso this is not as trivial to do as we might like.\nwe may need tomove the instance claim later in the build process to simplify this.","commit_id":"11514161d6ee0767e72457575c00e22e0403f348"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"3fc05745f15a920b0a5b4d88a7f49d7aa2179e20","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":1,"id":"9718b036_32a03a5c","updated":"2026-03-22 14:10:57.000000000","message":"i have not really tought about is this rewlly the right approch.\n\nit feels like we are a bit loosk withour handlignof the network_metadata and request and this info should really be in the instnac eobjectr or retivable more simply but \n\ni just had ai create this as a starting point for use to dicuss since  i wanted to try the new composer 2 model.","commit_id":"11514161d6ee0767e72457575c00e22e0403f348"}],"nova/compute/claims.py":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"8cc080de5b95a40ec1a8cdd7ca77b0660994b9b6","unresolved":true,"context_lines":[{"line_number":62,"context_line":""},{"line_number":63,"context_line":"    def __init__("},{"line_number":64,"context_line":"        self, context, instance, nodename, tracker, compute_node, pci_requests,"},{"line_number":65,"context_line":"        migration\u003dNone, limits\u003dNone, request_spec\u003dNone,"},{"line_number":66,"context_line":"    ):"},{"line_number":67,"context_line":"        super().__init__(migration\u003dmigration)"},{"line_number":68,"context_line":"        # Stash a copy of the instance at the current point of time"}],"source_content_type":"text/x-python","patch_set":1,"id":"f558b26b_cf0d3037","line":65,"range":{"start_line":65,"start_character":36,"end_line":65,"end_character":55},"updated":"2026-03-22 13:38:04.000000000","message":"the request spec is avaibel on the instance object so i dont think we need to actully pass this.","commit_id":"11514161d6ee0767e72457575c00e22e0403f348"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"0d703553bd9224779fa139bb87db4f019463d4c7","unresolved":false,"context_lines":[{"line_number":62,"context_line":""},{"line_number":63,"context_line":"    def __init__("},{"line_number":64,"context_line":"        self, context, instance, nodename, tracker, compute_node, pci_requests,"},{"line_number":65,"context_line":"        migration\u003dNone, limits\u003dNone, request_spec\u003dNone,"},{"line_number":66,"context_line":"    ):"},{"line_number":67,"context_line":"        super().__init__(migration\u003dmigration)"},{"line_number":68,"context_line":"        # Stash a copy of the instance at the current point of time"}],"source_content_type":"text/x-python","patch_set":1,"id":"d6585c13_2cd5c3c8","line":65,"range":{"start_line":65,"start_character":36,"end_line":65,"end_character":55},"in_reply_to":"f558b26b_cf0d3037","updated":"2026-03-22 13:48:55.000000000","message":"actully its not! i was thinkign of the system_metadta and other info taken form the reqoqust spec liek pci request but we dont actully have teh requst spec fo the network resoust metadtata on the instnace.","commit_id":"11514161d6ee0767e72457575c00e22e0403f348"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"8cc080de5b95a40ec1a8cdd7ca77b0660994b9b6","unresolved":true,"context_lines":[{"line_number":111,"context_line":""},{"line_number":112,"context_line":"        # If an individual limit is None, the resource will be considered"},{"line_number":113,"context_line":"        # unlimited:"},{"line_number":114,"context_line":"        numa_topology_limit \u003d limits.get(\u0027numa_topology\u0027)"},{"line_number":115,"context_line":"        numa_topology_limit \u003d self._normalize_numa_topology_limit("},{"line_number":116,"context_line":"            numa_topology_limit, compute_node)"},{"line_number":117,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"6590d316_680012d3","line":114,"range":{"start_line":114,"start_character":7,"end_line":114,"end_character":57},"updated":"2026-03-22 13:38:04.000000000","message":"by the way this is a core part of the bug\nwe are not proprly reconsutcting this if its missing or incompelte.","commit_id":"11514161d6ee0767e72457575c00e22e0403f348"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"8cc080de5b95a40ec1a8cdd7ca77b0660994b9b6","unresolved":true,"context_lines":[{"line_number":127,"context_line":"        LOG.info(\u0027Claim successful on node %s\u0027, self.nodename,"},{"line_number":128,"context_line":"                 instance\u003dself.instance)"},{"line_number":129,"context_line":""},{"line_number":130,"context_line":"    @staticmethod"},{"line_number":131,"context_line":"    def _allocation_ratios_from_compute_node(compute_node):"},{"line_number":132,"context_line":"        cpu \u003d compute_node.cpu_allocation_ratio"},{"line_number":133,"context_line":"        if cpu is None:"},{"line_number":134,"context_line":"            cpu \u003d CONF.compute.initial_cpu_allocation_ratio"},{"line_number":135,"context_line":"        ram \u003d compute_node.ram_allocation_ratio"},{"line_number":136,"context_line":"        if ram is None:"},{"line_number":137,"context_line":"            ram \u003d CONF.compute.initial_ram_allocation_ratio"},{"line_number":138,"context_line":"        return cpu, ram"},{"line_number":139,"context_line":""},{"line_number":140,"context_line":"    def _normalize_numa_topology_limit(self, limit, compute_node):"},{"line_number":141,"context_line":"        \"\"\"Ensure NUMA fitting has NetworkMetadata for NUMA-aware vSwitches."}],"source_content_type":"text/x-python","patch_set":1,"id":"bf5c2ea6_4d15ea58","line":138,"range":{"start_line":130,"start_character":3,"end_line":138,"end_character":23},"updated":"2026-03-22 13:38:04.000000000","message":"im not convinced that htis is right given they can be changed via placement\nwe also do not support memory over subscritoption for numa instances\nits possible to request today but that is a seperate e design bug\n\nif you try to do it today your vm will get kills unless you use file backed memory.","commit_id":"11514161d6ee0767e72457575c00e22e0403f348"}],"nova/objects/request_spec.py":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"3fc05745f15a920b0a5b4d88a7f49d7aa2179e20","unresolved":true,"context_lines":[{"line_number":462,"context_line":"            req_spec[\u0027instance_type\u0027] \u003d self.flavor"},{"line_number":463,"context_line":"        else:"},{"line_number":464,"context_line":"            req_spec[\u0027instance_type\u0027] \u003d {}"},{"line_number":465,"context_line":"        # NOTE(stephenfin): network_metadata is not persisted to the DB but"},{"line_number":466,"context_line":"        # must be included for compute to enforce NUMA-aware vSwitch placement"},{"line_number":467,"context_line":"        # during instance_claim (same data the scheduler\u0027s NUMATopologyFilter"},{"line_number":468,"context_line":"        # uses)."}],"source_content_type":"text/x-python","patch_set":1,"id":"26d874dd_1e18cdcd","line":465,"range":{"start_line":465,"start_character":14,"end_line":465,"end_character":27},"updated":"2026-03-22 14:10:57.000000000","message":"this was not written by stephen so this is wrong","commit_id":"11514161d6ee0767e72457575c00e22e0403f348"}]}
