Earlier  
Posted Nick Remark
#openstack-nova - 2020-05-12
16:43:12 dansmith image cache management is kinda weirdly split between the compute manager and virt driver
16:43:24 dansmith which means we probably need some extra stuff between them I think
16:43:26 dansmith I'd have to go look
16:43:52 dansmith this *would* be a pretty heavyweight new addition, to be clear
16:44:17 sean-k-mooney ya
16:44:17 dansmith it's unfortunate that we'd need to do this, IMHO, given the complexity required
16:44:40 sean-k-mooney do you see another path forward beyound just disabling hte cache
16:44:55 dansmith so we need to make sure we think this is really worth all of that, other than kinda talking our way out of it
16:45:00 sean-k-mooney or puting a size limit on the cache and contionally disabling
16:45:50 dansmith I don't really have any better ideas, no, I just don't like this one enough to be excited about it
16:46:53 dansmith we should consider some other ideas before we pull the trigger on this I mean
16:47:21 dansmith like, we *could* look for a-cs that have $imgsize+$flavor.root available disk
16:47:44 dansmith which may generate some operator confusion, and will definitely avoid being able to schedule the last byte of disk space
16:48:08 dansmith but also makes some sense if you explain it to someone: there has to be enough disk for the image and the root, even if the image might be cached
16:49:09 dansmith and that could be a behavior you enable with a pre-filter, which tries to avoid situations like bfv
16:49:16 sean-k-mooney dansmith: we have 5 slightly different impleentation fo caching in that module
16:49:35 sean-k-mooney each image backend is slightly different but mostly the same
16:50:43 sean-k-mooney dansmith: could we do that and then srink the allocation
16:51:59 dansmith sean-k-mooney: right, we'd not allocate that much, just look for hosts with enough to cover it
16:52:12 sean-k-mooney so do $imgsize+$flavor.root then both the instance and shirnk the disk_gb ot $flavor.root
16:52:24 dansmith except in the most pathological cases, we'd be fine.. you could come up with a race scenario, but it'd be very very targeted
16:52:36 dansmith it's also something we could try and roll back without having to change or migrate data,
16:53:00 sean-k-mooney ya its worth a try
16:53:01 dansmith whereas the new allocations-per-image thing would be something we have to live with and migrate for a while if it doesn't pan out
16:53:12 sean-k-mooney ir at least consiering
16:54:00 sean-k-mooney most of the the time $imgsize+$flavor.root is not going to cause boot failure either
16:54:11 sean-k-mooney as it will only be an issue if the cloud is very full
16:54:32 dansmith right, and if it was, it's because you're trying to schedule the last byte of disk, which is something we say is not in our project scope
16:54:35 sean-k-mooney if its a configurable prefilter then those that want every last gb could opt out
16:54:52 sean-k-mooney well ya that too
16:56:06 sean-k-mooney well it sound liek we have too light weight things. a disabel cache, b look for $imgsize+$flavor.root in the placment query and srhink to $flavor.root
16:56:09 dansmith yeah, so maybe if gibi really has a do-not-cache fix here, and we provide that prefilter, maybe that's good enough for the moment
16:56:12 dansmith yep :)
16:56:25 sean-k-mooney and then we could look at the allcotion per image later if we needed too
16:57:14 sean-k-mooney ya i think he need to copy paste it to the 4 other location i commented on but it might work
16:57:24 dansmith yes, I'd be much happier punting that out to a last-resort type of situation
16:57:31 sean-k-mooney this is a part of the code i would normally ping mdbooth or lyarwood to look at
16:58:50 sean-k-mooney ok well im going to grab food o/
16:59:11 dansmith aye dee ohs
16:59:57 lyarwood oh joy the cache manager
17:00:41 sean-k-mooney lyarwood: the intent of that patch is to have a config optioon to trun it off
17:01:06 sean-k-mooney well to workaround the larger bug
17:01:48 sean-k-mooney i think i commented on the other placces where it also need to be done but i proably missed one and i also dont realy understand the calling code paths so its just a guess
17:03:31 dansmith honestly, as much as I trust you guys, I'd have to test it myself before I believed you
17:03:39 dansmith just because I know how loopy all that code is
17:03:46 dansmith it's partial'd up the butthole
17:05:18 lyarwood yup same I'd have to play around with this, at first glance I'd be worried about this racing with multiple requests to spawn from the same image tbh
17:05:42 lyarwood but I'm likely missing locking somewhere in the imagebackend or driver that stops this
17:06:15 dansmith well, this is trying to avoid ever downloading the image to the base location,
17:06:31 dansmith so it really shouldn't be able to race because only one instance is booting per instance uuid at a time obviously
17:06:47 lyarwood ah so it's not caching and then copying?
17:06:47 dansmith but the call path to know what self.path is here is the critical bit,
17:06:49 lyarwood my bad
17:06:53 dansmith because normally that is the base image path
17:07:07 lyarwood right understood
17:07:11 dansmith lyarwood: that's the assertion, I just don't know how it got to that point here
18:08:34 openstackgerrit Ghanshyam Mann proposed openstack/nova master: Bump hacking min version to 3.0.1 https://review.opendev.org/727347
18:15:19 openstackgerrit Lee Yarwood proposed openstack/nova master: libvirt: Don't delete disks on shared storage during evacuate https://review.opendev.org/578846
18:15:19 openstack bug 1550919 in OpenStack Compute (nova) "[Libvirt]Evacuate fail may cause disk image be deleted" [Medium,In progress] https://launchpad.net/bugs/1550919 - Assigned to Matthew Booth (mbooth-9)
18:15:19 openstackgerrit Lee Yarwood proposed openstack/nova master: Add functional test for bug 1550919 https://review.opendev.org/631294
18:52:40 melwitt gmann: I've got a queens backport that consistently fails the releasenotes job bc of a job timeout. we are wondering if, with the addition of ussuri releasenotes, if it's just too much for the job to get done in a limited time? https://review.opendev.org/722822
18:54:28 gmann melwitt: it takes lot of time for all reno to build but should not be timeout. it pass on master.
18:54:43 gmann let me check job timeout for that
18:54:54 melwitt yeah... I just don't get how my backport could cause this and only cause it on queens? confused
18:55:20 melwitt it got through rocky, stein, train without issue
19:00:25 elod melwitt: when those got merged there weren't stable/ussuri yet, were there?
19:00:46 elod this shows some master fails too: https://zuul.opendev.org/t/openstack/builds?job_name=build-openstack-releasenotes&project=openstack/nova
19:01:13 melwitt elod: no there wasn't, was merged before branching
19:01:56 melwitt oh you mean the stable merges. let me check
19:03:19 melwitt train change merged on Apr 18 and I assume stable/ussuri was cut on Apr 24
19:03:21 gmann reno job timeout is 60 min which should be well enough https://github.com/openstack/openstack-zuul-jobs/blob/13ef0adb415e6296fe5c73d9ff9d1ca557843c54/zuul.d/jobs.yaml#L638
19:03:37 melwitt stein change merged on Apr 24
19:03:55 melwitt rocky change merged on May 11
19:06:19 melwitt the rocky change build does _not_ show processing of stable/ussuri notes https://zuul.opendev.org/t/openstack/build/bd1684e2f6d4460a985d822dfe773b81/log/job-output.txt#580-583
19:06:58 melwitt whereas the failing queens change build _does_ show processing of stable/ussuri notes https://zuul.opendev.org/t/openstack/build/e63085cb0ebf4e0ea8d91e07c94557ae/log/job-output.txt#536-542 so I think elod is right
19:15:23 gmann melwitt: elod it seems job most of time run on the edge time when it pass. >50 for master reno also and 59m 52s in case of https://review.opendev.org/#/c/725146/
19:16:26 melwitt gmann: livin on the edge. I'm wondering the obvious question, is there a nice way we could run the job for only the relevant branches to the branch it's running on? eventually we're gonna have too many reno branches and job will take longer and longer
19:17:20 gmann melwitt: you mean only build the reno for proposed branch ?
19:17:51 melwitt gmann: something like that yeah. or some other way to avoid wasting resource on building irrelevant renos
19:18:05 melwitt just thinking out loud
19:19:43 melwitt we could increase the job timeout obvs but aside from that I'm wondering about future when we have more and more reno branches
19:25:45 gmann melwitt: yeah, i remember we were facing same issue on tempest which has 10-15 releases notes bt might be less than nova. it was long back ago so cannot remember is indexing or per release directory fixed that
19:27:33 melwitt ah... looks like nova has "only" 11, liberty-ussuri + unreleased
19:29:33 gmann may be doug can help with some trick, he is not here but we can find him on openstack-dev
19:38:17 melwitt ok, I just sent him a question over there
19:38:41 melwitt thanks for suggesting
20:02:38 gmann melwitt: along with the parallel run option, i think we can remove all these < newton-eol reno? anyways those will be present in older tag- https://github.com/openstack/nova/tree/newton-eol/releasenotes/notes
20:06:39 melwitt gmann: oh you mean treat them as static? yeah I would think so. but keep in mind I don't understand this super well so I might be misunderstanding what you're saying :P
20:08:10 gmann melwitt: i was thinking to remove as not sure how to make them static. but removing will remoev those from this site too which is issue or might be ok - https://docs.openstack.org/releasenotes/nova
20:08:35 melwitt oh, yeah I wouldn't want to remove them from the site
20:10:18 melwitt personally I'm leaning toward the parallel idea because that would be easier. but yes it's unreleased. I wonder if we could use LIBS_FROM_GIT to do it in the meantime
20:11:00 melwitt and also note that sean said he tried making old stuff static but it didn't help bc most of the time looked to be spent in a rst => html conversion
20:11:10 melwitt (I had to re-read it to pick that out)
20:12:59 gmann melwitt: LIBS_FROM_GIT or required_project need job update but this should also work, as devstack should checkout the depends-on Depends-On: https://review.opendev.org/#/c/724666/
20:14:56 melwitt gmann: for a temporary test yes but not for mergeable fix right?
20:16:49 smcginnis The suggestion for making those older branches static would be to call reno to emit the generated straight rst and use that to replace the current page that has the reno sphinx directive. That way it only needs to convert rst to HTML, and not have to generate the rst via the reno directive first.
20:17:08 smcginnis That should save a little time, even if there were not a lot of release notes in those older series.
20:17:17 gmann melwitt: yeah, for mergeable fix if that improves we can ask for new reno release. if we do LIBS_FROM_GIT it might need more testing on reno master gate.
20:17:36 melwitt gmann: yeah good point
20:21:01 openstackgerrit melanie witt proposed openstack/nova master: DNM Try out running sphinx-build in parallel for releasenotes https://review.opendev.org/727429

Earlier   Later