Saturday, 2020-04-25

*** michael-beaver has quit IRC00:49
*** swest has quit IRC01:08
*** swest has joined #zuul01:22
*** Goneri has quit IRC01:27
*** cdearborn has quit IRC01:58
*** saneax has quit IRC02:21
*** bhavikdbavishi has joined #zuul03:17
*** bhavikdbavishi1 has joined #zuul03:20
*** bhavikdbavishi has quit IRC03:22
*** bhavikdbavishi1 is now known as bhavikdbavishi03:22
*** bhavikdbavishi has quit IRC04:00
*** bhavikdbavishi has joined #zuul04:13
*** evrardjp has quit IRC04:35
*** evrardjp has joined #zuul04:35
*** bhavikdbavishi has quit IRC04:37
*** zxiiro has quit IRC05:29
*** toabctl has joined #zuul06:13
*** sgw has quit IRC06:44
openstackgerritAlbin Vass proposed zuul/zuul master: WIP: enable installing ansible collections  https://review.opendev.org/72307109:06
avass^ I'm thinking something like that09:06
openstackgerritAlbin Vass proposed zuul/zuul master: WIP: enable installing ansible collections  https://review.opendev.org/72307109:17
*** tosky has joined #zuul09:36
*** dpawlik has joined #zuul09:59
*** avass has quit IRC10:16
*** avass has joined #zuul10:31
*** dpawlik has quit IRC10:36
*** avass has quit IRC11:13
*** bhavikdbavishi has joined #zuul11:19
*** bhavikdbavishi1 has joined #zuul11:22
*** bhavikdbavishi has quit IRC11:24
*** bhavikdbavishi1 is now known as bhavikdbavishi11:24
*** avass has joined #zuul11:36
*** avass has quit IRC12:27
*** bhavikdbavishi has quit IRC13:13
*** bhavikdbavishi has joined #zuul13:14
*** bhavikdbavishi has quit IRC13:27
fungizuul-maint: per discussion in #opendev, we may have a recent regression in git repository handling on mergers/executors causing zuul to be unable to find some shas13:34
fungian example traceback: http://paste.openstack.org/show/792699/13:34
fungiit could just be related to maintenance we performed yesterday, but we were seeing it from an executor which was rebooted prior to that, and mnaser reported independently running into a similar issue in his deployment too13:35
mnaserfungi: i wonder if this has to do with the recent stuff merged with git gc14:02
mnaserhttps://opendev.org/zuul/zuul/commit/79e50c04103098632de2ca47b18e08931925963b that is14:02
mnaserso maybe its just gc-ing too aggressively and killing stuff we need14:03
mnaserim just speculating though, i don't really understand all these14:03
mnaserso it could very well be race-y with the gc stuff14:05
-openstackstatus- NOTICE: Zuul is currently failing some jobs with MERGER_FAILURE, this needs investigation by OpenDev team. Please refrain from rechecking until we give the all-clear.14:19
openstackgerritTristan Cacqueray proposed zuul/zuul master: Revert "Ensure correct cleanup on repo update and reset"  https://review.opendev.org/72309814:25
mnasertristanC: are you also running into the same issue in your environments?14:26
tristanCmnaser: nop, just noticed frickler identified that change on the path of the exception, and looking at the code it seems like it is likely able to cause such issue14:27
mnasertristanC: ah ok, i thought if you were runinng into it too, it would be an extra signal14:27
mnaserbut maybe not14:27
corvushttp://paste.openstack.org/show/792699/ http://paste.openstack.org/show/792708/ are relevant14:33
corvusi'm unfamiliar with "cleaning empty ref dir"14:34
corvusthat's the other change isn't it?14:35
corvusthe one that merged on april 1514:35
corvusmnaser: given that you say you've been seeing this for a while, and i don't think we had been running either change, maybe that's the one that's more suspect?14:36
corvustristanC: ^ yeah that looks suspicios14:36
mnaseryeah i do feel like it is more likely that might be an suspect14:36
mnasercorvus: yeah and i wonder if the container images have the issue because the git version is different14:37
tristanCwhen testing the merger cleanup change, i verified git continued to work when either .refs/heads or .refs/tags where missing, but when both are missing, then .refs is removed and that makes git unhappy14:37
corvustristanC: ah, so we might be able to roll forward with a patch for this14:38
mnaserso what we need is to make sure we delete refs/heads and refs/tags but NOT refs/ ?14:39
corvusmaybe just patch it to, you know, not delete '.git/refs' and see if that fixes it14:39
tristanCcorvus: yes, that seems to work, let me propose something14:39
openstackgerritTristan Cacqueray proposed zuul/zuul master: merger: ensure .git/refs is not removed as a leaked dirs  https://review.opendev.org/72310414:42
tristanCthe fix may be ^, i'll try to confirm with a unittest14:43
corvustristanC: that looks great, thanks!14:45
corvuslet's go aheand and merge that, and if we add a unittest as followup if we're able14:46
mnaserya, lgtm basic eye inspection14:46
corvusmnaser: thanks!14:46
corvusmordred: ^14:46
mordred++14:49
tristanCcorvus: though i'm not able to reproduce this easily... how can a merger repo doesn't have heads or branches?14:55
tristanCheads or tags*14:55
corvustristanC: they may all be packed refs?14:56
corvusand packed refs are kept in the .git/packed-refs file14:56
mordredcorvus: could that maybe be the state if you clone a repo immediately after a gc?14:58
tristanCcorvus: is there a git command or merger function i can use to reproduce that state?14:58
corvustristanC: so in a unit test, you may want to run "git pack-refs" after the repo is setup and before starting a merge14:58
mordredah - pack-refs14:58
corvustristanC: i think maybe "git.pack_refs()" would do it -- using the gitpython magic git commands syntax14:59
tristanCno luck, AttributeError: 'Repo' object has no attribute 'pack_refs'15:00
*** jlk has quit IRC15:00
tristanCor repo.git maybe?15:01
corvustristanC: yeah try repo.git.pack_refs15:02
*** pots has quit IRC15:06
*** pots has joined #zuul15:06
tristanCcorvus: here is the test i'm trying to use to reproduce the original issue: http://paste.openstack.org/show/792710/  and this still works without https://review.opendev.org/72310415:07
corvustristanC: i don't see anything obvious, but you can run with "KEEP_TEMPDIRS=1" and inspect the repos on disk15:15
mnaserbtw fwiw there is another suggestion for the socat workaround when pushing to ipv6 and its to add things to /etc/hosts15:19
mnasermaybe we can throw something into the hosts file instead of running socat and all the stuff that entails, unless that's been explored15:19
mordredmnaser: we don't always have appropriate access to add things to /etc/hosts15:22
mnasermordred: ah true, i forgot about that15:22
mordredmnaser: you know what would be great? if docker would land the patch fixing the bug15:22
mordred:)15:22
mnasermordred: dont we have some mirantis friends we can ping now? :P15:23
mordredor if skopeo would be willing to fix it rather than insisting on keeping bug compat15:23
mordredmnaser: that's a great point15:23
mordredclarkb: ^^ maybe we should ping sergey and see if he knows how to push on that issue for us?15:24
tristanCcorvus: oh, it seems like https://review.opendev.org/723104 only affects git version < 2.13. The docker.io/zuul/zuul-executor has git 2.2015:28
mordredtristanC: ah - yes. this is a test that will really only properly trigger on xenial15:29
tristanCis ze01 using the docker image?15:29
corvusno, opendev executors are still pip15:29
tristanCmnaser: iiuc you also had http://paste.openstack.org/show/792699/ , was this with docker.io/zuul/zuul-executor?15:30
mnasertristanC: i couldnt find in my logs a reference but i had similar behaviour, as i restarted things lately to try and see what the issue was, but i do use the z-e images15:31
mnaserso i guess i never really ran into that, it must be something else15:31
tristanCcorvus: so, forcing an old git version, without https://review.opendev.org/723104 , i got the merger to remove `.git/refs` , but that didn't cause the ValueError of http://paste.openstack.org/show/792699/15:35
corvustristanC: well, that's disappointing15:37
tristanChere is the test and logs: http://paste.openstack.org/show/792712/15:37
*** bhavikdbavishi has joined #zuul15:37
corvustristanC: what happens if you call pack_refs on the work_repo?15:40
tristanCcorvus: no difference. So perhaps it is because the test doesn't simulate the origin.refs of a real change, e.g. https://opendev.org/zuul/zuul/src/branch/master/zuul/merger/merger.py#L35915:43
tristanCanyway, i think https://review.opendev.org/723104 is still relevant, because without it, the workspace clone are unusable, further git command fails with `fatal: not a git repository (or any of the parent directories): .git`15:44
corvustristanC: yeah, we should probably merge that, deploy it on opendev, then if it doesn't fix things, start reverting those 2 changes and figure out what we need to really debug them15:47
*** irclogbot_3 has quit IRC15:55
mordred++15:59
*** irclogbot_1 has joined #zuul16:00
mnasercorvus: im rechecking the patch to avoid deleting .git/refs to get it queued up to merge again16:02
fungithe zuul tenant's gate pipeline doesn't require a clean check result to enqueue16:07
mnaseryep so that should send it straight to gate, so that should be nice16:08
corvusmnaser: looks good, thanks16:08
AJaegerIs that a Zuul error? " Pipelines may not be defined in untrusted repos.. " See https://zuul.opendev.org/t/zuul/config-errors - and https://opendev.org/openstack/project-config/src/branch/master/zuul/main.yaml#L1619 ; we include without config...16:10
mordredAJaeger: that seems weird16:12
mnaserand a little concerning16:13
mnasercould this be bad zuul merger behaviour again popping up?16:14
mnaserhttps://opendev.org/zuul/zuul/src/branch/master/zuul/configloader.py#L1846-L185516:19
fungithat gets raised in zuul.configloader.TenantParser.filterUntrustedProjectYAML() called from _loadTenantYAML() method of the same class which is in turn called by the fromYaml() method of that class16:19
mnaserinteresting i'm not seeing any logic that might actually filter out the fact pipelines are not being loaded16:20
fungiwhich is called from the parseConfig() method16:20
fungibut i think those errors are going to be coming from the scheduler not the merger, right?16:21
fungierrors from mergers don't bubble up into the status api like that16:22
mnasercorrect, i think ti is from the scheduler when its loading the config and noticing that an untrusted repo contains pipelines16:22
mnaserbut it also seems like it doesn't take into factor the fact that it may not be included in the config16:22
fungiyeah, looks like _loadDynamicProjectData() jumps straight to filterUntrustedProjectYAML() if the project is untrusted16:25
*** bhavikdbavishi1 has joined #zuul16:25
*** bhavikdbavishi has quit IRC16:25
*** bhavikdbavishi1 is now known as bhavikdbavishi16:25
*** irclogbot_1 has quit IRC16:26
fungiso unless the with configuration_exceptions() check in filterUntrustedProjectYAML() is somehow skipping projects included without config, i agree it looks like it just raises that exception for any untrusted project data with a pipelines attribute16:27
fungiand yeah, configuration_exceptions() seems to just be for making the exception classes available16:29
*** irclogbot_1 has joined #zuul16:30
*** evrardjp has quit IRC16:35
*** evrardjp has joined #zuul16:35
AJaegerdo we need to revert https://review.opendev.org/723082 ?16:36
fungiAJaeger: not sure, it looks like it may have simply exposed a latent bug in zuul16:38
fricklertristanC: regarding 723104 I think we should even go one step further. "git init" creates .git/refs/{heads,tags}, so we likely shouldn't be removing these, either16:42
tristanCfrickler: it seems like git works fine without heads or tags subdir16:47
tristanCcorvus: so i can't tell if https://review.opendev.org/723104 will fix http://paste.openstack.org/show/792699/ . If it does not, it would be good to know the context when the valueerror exception happen (is it random, is it affecting project without tags or stable branches, ...).16:50
tristanCthen i agree reverting https://review.opendev.org/723104 and https://review.opendev.org/701531 would be the next step to prevent further issue16:51
*** avass has joined #zuul16:53
openstackgerritMonty Taylor proposed zuul/zuul-jobs master: Support multi-arch image builds with docker buildx  https://review.opendev.org/72233916:54
openstackgerritMonty Taylor proposed zuul/zuul-jobs master: Use failed_when: false instead of ignore_errors: true  https://review.opendev.org/72310916:54
tristanCfrickler: i confirm running `rm -R .git/refs/*` with git version 2.7.4 from xenial doesn't cause git error on further command16:54
openstackgerritMerged zuul/zuul master: merger: ensure .git/refs is not removed as a leaked dirs  https://review.opendev.org/72310417:00
*** bhavikdbavishi has quit IRC17:11
corvusi restarted opendev executors, and i see this error some times: http://paste.openstack.org/show/792715/17:43
openstackgerritJames E. Blair proposed zuul/zuul master: Revert "Tune automatic garbage collection of git repos"  https://review.opendev.org/72311018:29
corvusi'm going to self-approve that on the basis that a couple hours ago when we had more maintainers around we all agreed that was the next step18:30
mnaser++18:30
openstackgerritAndreas Jaeger proposed zuul/zuul master: Revert "Tune automatic garbage collection of git repos"  https://review.opendev.org/72311118:33
*** avass has quit IRC18:34
*** Goneri has joined #zuul18:47
*** avass has joined #zuul19:11
*** avass has quit IRC19:25
openstackgerritMerged zuul/zuul master: Revert "Tune automatic garbage collection of git repos"  https://review.opendev.org/72311019:38
openstackgerritMonty Taylor proposed zuul/zuul-jobs master: Use failed_when: false and ignore_errors: true  https://review.opendev.org/72310922:29
openstackgerritMonty Taylor proposed zuul/zuul-jobs master: Support multi-arch image builds with docker buildx  https://review.opendev.org/72233923:02
*** avass has joined #zuul23:14
*** tosky has quit IRC23:32
avasstristanC: re: https://review.opendev.org/#/c/722309/6 I think it would more sense to use a "block: ... always: ..." instead of "failed_when: false" and throwing a failure message23:37

Generated by irclog2html.py 2.15.3 by Marius Gedminas - find it at mg.pov.lt!