| Posted | Nick | Remark | |
|---|---|---|---|
| #openstack-nova - 2021-12-07 | |||
| 17:20:39 | bauzas | so we wouldn't change the API behaviour | |
| 17:20:54 | sean-k-mooney | bauzas: i think that is not semanticly correct behavior in the api | |
| 17:21:04 | bauzas | the DB would change and mark the actions be deleted (if operator wants) but the API would continue to return those results | |
| 17:21:21 | bauzas | sean-k-mooney: that's a good point, I dunno | |
| 17:21:28 | sean-k-mooney | bauzas: i dont think we shoudl make this an operator choice | |
| 17:21:49 | bauzas | sean-k-mooney: in this case, the answer to pslestang is "no, we can't accept your BP" | |
| 17:22:03 | sean-k-mooney | bauzas: we can accpet somehting simiilar | |
| 17:22:05 | sean-k-mooney | https://github.com/openstack/nova/blob/master/nova/db/main/models.py#L885-L909 | |
| 17:22:12 | sean-k-mooney | also there is no db change required | |
| 17:22:15 | gmann | specless BP right but we are ok to discuss to do with API change | |
| 17:22:22 | sean-k-mooney | its already marked as soft deleable | |
| 17:22:42 | bauzas | sean-k-mooney: yup, I know | |
| 17:22:48 | bauzas | sean-k-mooney: again, the problem is interop | |
| 17:22:57 | sean-k-mooney | not whith what i porpose | |
| 17:23:11 | sean-k-mooney | if we do this as a spec with an api change there is no interop issue | |
| 17:23:48 | bauzas | sean-k-mooneyso, we would soft-delete the actions in a new microversion, OK | |
| 17:23:54 | gmann | with --delete option right and default it shows deleted instance action ? | |
| 17:24:04 | bauzas | sean-k-mooney: but what with 2.1 ? | |
| 17:24:16 | bauzas | gmann: right, that's the problem we need to solve here | |
| 17:24:17 | gmann | so no change for existing users also | |
| 17:24:18 | sean-k-mooney | in 2.1 you would see soft-deleted instance actions | |
| 17:24:24 | sean-k-mooney | in 2.100 or whatever you would not | |
| 17:24:30 | sean-k-mooney | unless you pass --deleted | |
| 17:24:35 | gmann | yes | |
| 17:24:44 | bauzas | sean-k-mooney: what's the difference with what I proposed ? | |
| 17:25:01 | bauzas | you would also have semantically incorrect values for 2.1 | |
| 17:25:04 | sean-k-mooney | in 2.100 you would only see non soft deleted ones by default | |
| 17:25:21 | sean-k-mooney | no you would not | |
| 17:25:43 | sean-k-mooney | in 2.1 we are reflecting the fact that instnace action have a sperate lifetime form the instnace they refer too | |
| 17:25:49 | sean-k-mooney | which were the sematics in 2.1 | |
| 17:25:55 | gmann | with 2.100 with deleted it shows all otherwise only non-soft deleted one | |
| 17:26:00 | sean-k-mooney | in 2.100 we are saying they share the same lifetime | |
| 17:26:30 | sean-k-mooney | in 2.100 soft deleting the instance will soft delete the actions | |
| 17:27:03 | sean-k-mooney | that is a semantic change in the behavior of the api hence need for new microverion | |
| 17:27:07 | sean-k-mooney | does that make sense | |
| 17:27:07 | bauzas | I can understand this | |
| 17:27:19 | bauzas | no config but a change for all | |
| 17:27:26 | sean-k-mooney | yes | |
| 17:27:46 | bauzas | just to be sure, default of 2.100 is 'delete' be always True, right? | |
| 17:27:57 | sean-k-mooney | no | |
| 17:28:10 | sean-k-mooney | default fo server delete will be to soft delete the instance actions | |
| 17:28:10 | bauzas | then, we need to discuss this with ops | |
| 17:28:21 | sean-k-mooney | default for instance_action show would be deleted=false | |
| 17:28:26 | gmann | and we cannot fix it as bug as it is changing API behaviour and so does effect existing users | |
| 17:28:40 | bauzas | I'm pretty sure I can find a handful of operators who wouldn't want to opt-in for v2.100 | |
| 17:29:04 | bauzas | the problem is that if operators want v2.101, they're stuck with shipping 2.100 too | |
| 17:29:13 | bauzas | which they dislike | |
| 17:29:33 | sean-k-mooney | for which endpoint | |
| 17:29:44 | bauzas | the os-instance-actions one, of course | |
| 17:30:03 | sean-k-mooney | if we have a 2.101 for that endpoint | |
| 17:30:10 | sean-k-mooney | the client already needs to be updated to use it | |
| 17:30:16 | sean-k-mooney | so they can just pass deleted=false | |
| 17:30:20 | bauzas | honestly, the more I think, the less I consider it as something good for Nova if we make this general for ops | |
| 17:30:21 | sean-k-mooney | *deleted=true | |
| 17:30:23 | gmann | well that is drawback but applicable for all the changes via microversion | |
| 17:30:51 | bauzas | while on the other hand, the archive problem is solvable with a smarter script | |
| 17:31:05 | sean-k-mooney | the fact we are adding a query arg in 2.100 means they can choose what behvior they want in 2.101 | |
| 17:31:32 | bauzas | that's one thing to let OVH do what they want with their own APIs | |
| 17:31:34 | gmann | sean-k-mooney: I think we can return all deleted one like it is today so that other existing users are not effected and allow --deleted=false to hide deleted actions | |
| 17:31:51 | bauzas | that's another thing to consider that ops don't care about getting information why their instance is deleted | |
| 17:31:55 | sean-k-mooney | gmann: we could do that yes | |
| 17:32:12 | sean-k-mooney | but i think it makes sense to change the default we coudl defer that to a later microverion | |
| 17:32:15 | bauzas | sean-k-mooney: this was my proposal... default be "show-deleted" | |
| 17:32:27 | sean-k-mooney | bauzas: right | |
| 17:32:45 | bauzas | either way, this is a spec | |
| 17:32:49 | sean-k-mooney | but if we are making this change i was suggesting changing the bhavior now instead of having 2 microverions for it | |
| 17:33:06 | sean-k-mooney | if its less contoversion to not change the defualt behavior im not agaisnt that | |
| 17:33:17 | bauzas | honestly, as I said, I'm not super happy with changing the default behaviour | |
| 17:33:22 | sean-k-mooney | provided we never change the default behavior or atleast not in the near future | |
| 17:33:27 | bauzas | (from an ops perspective) | |
| 17:33:39 | sean-k-mooney | bauzas: ok then lets not | |
| 17:33:40 | gmann | yeah. let's do spec. keeping existing behavior as default will be useful | |
| 17:33:49 | sean-k-mooney | ok | |
| 17:34:29 | bauzas | gmann: sean-k-mooney: the fun fact is that this whole conversation starts from a case from OVH coming because they don't wanna change their archive script to be model-specific | |
| 17:34:30 | sean-k-mooney | the thing i want to avoid is two microverions to 1 allow filtering and 2 change the default close toghter | |
| 17:34:49 | sean-k-mooney | if we do the first part and oepraters give feedback we can reconsider the second | |
| 17:35:00 | bauzas | gmann: sean-k-mooney: if we were changing the default, this would mean all ops but OVH would have to modify their own clients to use the new param | |
| 17:35:04 | bauzas | looks unfair, no ? | |
| 17:35:08 | sean-k-mooney | bauzas: actully they do not use our archive feature at all | |
| 17:35:27 | sean-k-mooney | bauzas: no only if they use the latest microverion | |
| 17:35:41 | sean-k-mooney | if they are using microverions correctly that is not going to affect them | |
| 17:35:45 | gmann | yeah and nobody complained on current default behavior so good to keep it | |
| 17:35:52 | sean-k-mooney | its why osc orginally didn not defualt to latest microverion | |
| 17:36:01 | sean-k-mooney | so that the cli would be stable | |
| 17:36:20 | bauzas | gmann: even OVH hasn't complained about the current behaviour, they just complain about the fact their tooling doesn't work with our DB | |
| 17:36:26 | sean-k-mooney | anyway i think we are agred. needs a spec and keep current behviaor by default | |
| 17:36:30 | gmann | bauzas: yeah. | |
| 17:36:36 | gmann | sean-k-mooney: +1 | |
| 17:37:02 | bauzas | sean-k-mooney: even with a spec, I think this is taking a hammer for chasing a firefly | |
| 17:37:05 | sean-k-mooney | bauzas: well as i said ovh do not use our showdown tables anda archiving mechanium | |
| 17:37:23 | bauzas | sean-k-mooney: that's the whole point, they don't use what we provide | |
| 17:37:32 | bauzas | why should we make modifications for them so ? | |
| 17:37:38 | sean-k-mooney | right because not all service implement it | |
| 17:37:44 | bauzas | if it's all about DB persistency | |
| 17:37:49 | sean-k-mooney | there tool work for neutorn glance cinder consitently | |
| 17:38:13 | sean-k-mooney | bauzas: i think ovh and i woudl both be happy if we fully remove the shadow tables | |
| 17:39:29 | bauzas | I still think we're ending into a weird state | |
| 17:39:53 | bauzas | we said in the past "this is expected behaviour, as actions table is here for recording user actions" | |
| 17:40:23 | bauzas | now we're about to publicly express that the actions API is just usable by default for non-deleted instances | |
| 17:40:33 | bauzas | (if we change the default) | |