)]}'
{"nova/objects/migrate_data.py":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"56916af7ddfc4c12db4b3c5775b04d41d6c2f470","unresolved":false,"context_lines":[{"line_number":129,"context_line":"        \u0027sched_priority\u0027: fields.IntegerField(),"},{"line_number":130,"context_line":"        # NOTE(stephenfin): Currently we only support one type of scheduler"},{"line_number":131,"context_line":"        # policy - fifo - but this is more future-proof"},{"line_number":132,"context_line":"        \u0027sched_scheduler\u0027: fields.StringField(),"},{"line_number":133,"context_line":"    }"},{"line_number":134,"context_line":""},{"line_number":135,"context_line":"    def obj_make_compatible(self, primitive, target_version):"}],"source_content_type":"text/x-python","patch_set":1,"id":"9f560f44_aecfa17d","line":132,"range":{"start_line":132,"start_character":4,"end_line":132,"end_character":48},"updated":"2020-07-28 17:14:23.000000000","message":"i need to think about this more but in general i dont think this is needed but maybe its cleaner then passing the flavor and image down.","commit_id":"6b8bad254128fd70de2a4cc341441d77e0204a5d"}],"nova/virt/libvirt/migration.py":[{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"0a8d54b3d353a2f2433c01e2d2bcd5f99936a22c","unresolved":false,"context_lines":[{"line_number":127,"context_line":""},{"line_number":128,"context_line":"        # delete the old variant(s)"},{"line_number":129,"context_line":"        for elem in cputune.findall(\u0027./vcpusched\u0027):"},{"line_number":130,"context_line":"            elem.getparent().remove(elem)"},{"line_number":131,"context_line":""},{"line_number":132,"context_line":"        # ...and create a new, shiny one"},{"line_number":133,"context_line":"        vcpusched \u003d vconfig.LibvirtConfigGuestCPUTuneVCPUSched()"}],"source_content_type":"text/x-python","patch_set":1,"id":"9f560f44_0e896d74","line":130,"updated":"2020-07-28 17:07:24.000000000","message":"Assuming a future in which we support other realtime schedulers than \u0027fifo\u0027, I would assume those would be settable via flavor extra specs (and maybe image properties?), and not on a per-host config basis, so in a live-migration context it would not be expected to change. Therefore, we could pull the scheduler out of the vcpusched elems we\u0027re remove()ing here, stash it, and re-set it on L136.\n\nWe\u0027ve had a long philosophical discussion about this on IRC. There\u0027s general agreement that \"Nova is authoritative, XML isn\u0027t\", so we shouldn\u0027t be \"reading\" information from the XML and thus treating is as authoritative... except Nova wrote the XML, so maybe it\u0027s OK? And there\u0027s definitely precedent, look up on L91, or down on L162, or L183 etc etc.\n\nThere\u0027s also general agreement that this change is \"fairly trivial, consistent and would always be correct, even it was slightly overengineered\" - but my beef is with the last part: I wouldn\u0027t use the word \"slightly\" :)\n\nI think in the current context, it\u0027s premature and wasteful to add a field to an object that transits many times over the wire just to stash a realtime scheduler value that we can easily get through other means.","commit_id":"6b8bad254128fd70de2a4cc341441d77e0204a5d"}]}
