Earlier  
Posted Nick Remark
#openstack-nova - 2022-08-30
19:34:23 dansmith ack, yep, that's what i'll be, and of course service versions for each bump
19:34:35 dansmith *it'll
19:34:39 sean-k-mooney[m] and we should not squash them obviously since the patches are unrelated
19:35:11 dansmith no, I just thought you were about to "get creative" :)
19:35:29 sean-k-mooney[m] hehe not with correctness
19:35:49 sean-k-mooney[m] out side of a bug fix…
19:36:59 sean-k-mooney[m] jhartkopf: ^
19:37:09 sean-k-mooney[m] not sure you were following that
19:38:17 dansmith not online, AFAICT
19:39:00 dansmith ugh,
19:39:11 dansmith all of the virt and rpc stuff that the rebuild patches touch will conflict out
19:39:18 dansmith I so wish luck had landed these in opposite order
19:46:56 sean-k-mooney[m] by the way apprently the matix bridge does not actullly only show you the currently online people
19:47:24 sean-k-mooney[m] which is why jhartkopf auto completed for me even if they are not here
19:51:26 dansmith sean-k-mooney[m]: https://termbin.com/q3ev
19:51:32 dansmith I think that's basically what needs to happen
19:52:43 dansmith I wish we could get a read on this from melwitt and gibi so I should know if I should spend my evening trying to get this all changed and tested
19:53:31 sean-k-mooney[m] ignoring your base64 nits that looks about right
19:54:57 dansmith it also seems like the tests on this are pretty lacking, no?
19:55:04 dansmith like, there are no tests on the virt driver changes?
19:55:10 sean-k-mooney[m] im currently trying to set up a devstack env i dont currently have one to test it. we do still have 2 days for code frezee
19:55:42 dansmith like, no test that I see that actually checks that the libvirt driver will honor the flag
19:56:03 opendevreview Rico Lin proposed openstack/nova master: Add traits for viommu model https://review.opendev.org/c/openstack/nova/+/844507
19:56:19 gibi I'm not sure I have enough brain left today for this. But I have at least two comments to the above 1) I don't think this is a rebuild feature it is tight to hard reboot 2) I think we prevented the possible upgrade issue with the capability trait.
19:56:43 ricolin sean-k-mooney[m]: just update the viommu traits patch :)
19:56:45 gibi I cannot argue that this can be done differently
19:57:08 gibi and dansmith you are right that the system metadata dependency makes it at least a grey interface
19:57:42 gibi it is sad that we figured out this issue late in the cycle
19:58:12 dansmith gibi: I don't understand what you mean by #1, but yeah I guess you're right on the trait.. that's preeety thin though :)
19:59:02 gibi #1 is probably just a missunderstanding from
19:59:03 gibi 20:58 < dansmith> rebuild is basically growing a new feature, and we need to pass it a flag,
20:00:03 sean-k-mooney[m] the trait wont be reported on a non upgraded compute yes
20:00:14 sean-k-mooney[m] which might help for the upgrade chase specifically
20:00:26 dansmith gibi: oh yeah I meant reboot there sorry
20:00:27 gibi on the flag itself. The RPC flag vs the persisted field has some semantic difference. If we update the user_data in the DB in the API layer then pass a flag to regenerate the config drive via the RPC then a lost RPC means that the DB data and the config data got out of sync
20:01:24 dansmith gibi: but we can and should revert if we're reporting failure to the user
20:01:30 sean-k-mooney[m] so im not sure if we should revert
20:01:32 dansmith because if this happens because of the lack of a trait or version,
20:01:34 gibi the reboot RPC is a cast
20:01:45 gibi so if the RPC lost the API wont notice
20:01:46 sean-k-mooney[m] the reason for that is todya id we update instnace metadata
20:01:48 dansmith then it will pop into being in six months and be very confusing
20:01:52 sean-k-mooney[m] we dont update the config drive
20:02:04 sean-k-mooney[m] unless you do a cross cell migration
20:02:23 sean-k-mooney[m] so you can have a delta between the metadta api and the config drive today
20:02:31 melwitt ugh, my irc client had "froze" not receiving new messages for only this network and I didn't realize it until now. had to close and reopen the client to receive and send messages
20:03:02 dansmith gibi: ack, not for a version conflict, but for an actual lost RPC we'd get out of sync.. I'm not sure if that's better or worse than queuing an update for six months later on a different version of the software, but fair point
20:03:35 gibi yeah, both case seems problematic
20:03:39 dansmith indeed
20:03:55 melwitt I just skimmed through yalls review comments from today a little while ago and don't have a handle yet on what's going on. I will read further and add a comment once I understand it
20:04:23 dansmith I guess the trait eliminates the acute concern of this being actually broken, but I'm still concerned about setting the precedent for shadow RPC interfaces in metadata, even if protected by a flag like that
20:04:24 gibi could we do both the DB update and the config driver regeneration from the nova-compute service?
20:04:33 sean-k-mooney[m] do we consider the user_data to be higher imporantce to be updated then other info in the config drive
20:04:36 dansmith it's what we have versioning for and how we do math about "can we do this now or not"
20:04:38 sean-k-mooney[m] that we dont regenerate today
20:05:06 dansmith gibi: well my first thought was not a flag, but pass the user data to the reboot call, and let it update it
20:05:14 dansmith gibi: that would be much better all around
20:05:21 dansmith I need to look at the potential size limit though
20:05:29 sean-k-mooney[m] like if you attch a volume/interface or update server metadata that wont get updated in the config drive today
20:05:31 gibi ahh yeah, it is a blob
20:05:34 dansmith if you can pass a MiB that would be bad...
20:06:11 sean-k-mooney[m] its 64k i think
20:06:36 dansmith sean-k-mooney[m]: is it?
20:06:52 sean-k-mooney[m] its large yes
20:06:57 dansmith we might want to make that bigger though at some point, so expecting to put that into an rpc message might be a bad idea long-term
20:07:44 melwitt it was a bit of a coincidence :) I saw sean's comment on the userdata review come in email and they said "I talked to dan" but I didn't see any talking to dan in the channel. that's when I realized my client was messed up
20:07:56 dansmith aha
20:08:26 gibi I need to drop for the night. I'm fine pulling user_data out of the release while we design it better. I just whish we can somehow avoid in the future push contributors into a desgin dead end and then pulling the rug out at FF.
20:08:51 dansmith I know the feeling because I was arguing that we not do that for bfv rebuild either
20:09:01 gibi yeah
20:09:04 dansmith and I noted in my comment that (a) I know the implication and (b) I'm willing to scramble on the work
20:09:09 melwitt so I disconnected and reconnected the network and I saw yalls comments rolling in. but when I sent messages there was no acknowledgement, so I checked the irc logs and my messages weren't there. so I had to escalate to a full quit/start of my client. and now it's working 🙄
20:09:29 gibi I can look at the patch / comments tomorrow morning. But now I drop. See you tomorrow
20:09:39 dansmith alright
20:09:45 gibi o/
20:09:56 dansmith sean-k-mooney[m]: how about this:
20:10:28 dansmith sean-k-mooney[m]: how about we let this land as it is because theoretically the trait should catch it, and we convert to an RPC interface after BFV set and before the release
20:10:36 dansmith that won't be a behavioral change since it *should* be catching it now
20:10:58 dansmith if someone is deploying on master within a two week window they could have some sysmeta cruft, but highly unlikely
20:11:31 sean-k-mooney[m] ack we can likely get that working by the end of the week
20:11:43 sean-k-mooney[m] as part of the follow up patch once bfv is landed
20:11:46 dansmith it's mostly what I just wrote, but 6.2
20:11:56 sean-k-mooney[m] yep
20:12:09 dansmith but I also think that this is missing a lot of testing it should have
20:12:23 sean-k-mooney[m] looking at it again you are right
20:12:26 dansmith has anyone other than the author tried this on a real devstack? with configdrive?
20:12:50 sean-k-mooney[m] no i was going to see if i could do that tonight but i might just do that torrow at this point
20:12:57 dansmith also, in my defense, gibi *did* ask me to review this :)
20:13:30 dansmith and I *did* try to punt to melwitt
20:13:46 dansmith and melwitt *did* sabotage her irc client so she "didn't see that"
20:13:52 sean-k-mooney[m] i was going to see if i could create a tempest test for this althogh im not sure how to force the vm too boot on the un upgraded node for grenade
20:14:12 dansmith yeah you can't really, so you have to boot two and hit both I think
20:14:29 dansmith but at least it would non-deterministically fail
20:14:32 sean-k-mooney[m] oh with the anti affintiy filter
20:15:09 dansmith melwitt: are you caught up yet, enough to grok that ^ plan?
20:16:12 melwitt dansmith: yeah I think so
20:16:30 dansmith and what say ye?
20:17:21 melwitt the plan sounds like a good compromise
20:18:44 sean-k-mooney[m] we can likely sync with the autour tomrrow but i can set this up and test it tomorrow in anycase and perhaps look at more testing
20:19:08 sean-k-mooney[m] so see if we can harden this and unblock bfv

Earlier   Later