| Posted | Nick | Remark | |
|---|---|---|---|
| #openstack-nova - 2022-08-30 | |||
| 19:28:38 | dansmith | that user_data script might have been untested, they couldn't test it, so they assumed no harm | |
| 19:29:08 | sean-k-mooney[m] | it could. so orginally the problem of how/when to regnerate the conf dirver came up a few months ago after the spec review | |
| 19:29:27 | dansmith | I upgraded my +0 to -1: https://review.opendev.org/c/openstack/nova/+/816157 | |
| 19:29:32 | sean-k-mooney[m] | and at the time the ideia of the dirity flag was disucsed to allow this | |
| 19:29:59 | sean-k-mooney[m] | its obvious we should have intoduced the rpc bump now | |
| 19:30:15 | dansmith | yeah I understand the "lazy do it later" aspect, but if it's broken and doesn't get honored right away, that "later" being a half year or more seems like more harm than good | |
| 19:30:25 | sean-k-mooney[m] | but orgianlly i tought that lazy rebuild was actully desirebale | |
| 19:30:39 | sean-k-mooney[m] | ack | |
| 19:30:51 | dansmith | lazy is good as long as it's not TOO LAZY :P | |
| 19:31:53 | sean-k-mooney[m] | the rebuild series has both a compute service bump and rpc bump right | |
| 19:32:22 | dansmith | yes | |
| 19:32:30 | sean-k-mooney[m] | so eihter way it will have to be updated when this is adressed | |
| 19:32:38 | dansmith | yes | |
| 19:32:50 | sean-k-mooney[m] | so 6.1 would be for update_userdata and 6.2 for rebuild | |
| 19:33:02 | dansmith | yeah | |
| 19:33:09 | dansmith | are you thinking be sneaky and combine? I dunno how I feel about that | |
| 19:33:30 | sean-k-mooney[m] | no | |
| 19:33:53 | sean-k-mooney[m] | 6.1 for extending hard_reboot | |
| 19:34:01 | sean-k-mooney[m] | and 6.2 for extending rebuild | |
| 19:34:08 | sean-k-mooney[m] | not cominign both into 6.1 | |
| 19:34:18 | sean-k-mooney[m] | since there in different patches that would be odd | |
| 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 | |