14:31:59 #startmeeting RELENG (2014-11-17) 14:32:00 Meeting started Mon Nov 17 14:31:59 2014 UTC. The chair is dgilmore. Information about MeetBot at http://wiki.debian.org/MeetBot. 14:32:00 Useful Commands: #action #agreed #halp #info #idea #link #topic. 14:32:14 #meetingname releng 14:32:14 The meeting name has been set to 'releng' 14:32:14 #chair dgilmore nirik tyll sharkcz bochecha masta pbrobinson 14:32:14 Current chairs: bochecha dgilmore masta nirik pbrobinson sharkcz tyll 14:32:15 #topic init process 14:32:37 * nirik is here, but also trying to catch up on morning email and first cup of coffee. 14:32:48 hi everyone 14:33:28 * dgilmore nearly fell asleep 14:33:34 * danofsatx-work is present for informational purposes only 14:34:13 * mizdebsk is there to answer questions related to koschei and srpm repo generation 14:35:37 * drag00n drag00n is here 14:36:30 lets get going 14:36:34 #topic Secondary Architectures updates 14:36:36 #topic Secondary Architectures update - ppc 14:37:04 * pbrobinson is here 14:37:34 dgilmore: what am I up for? 14:38:57 pbrobinson: look at the tpoic 14:39:00 toppic 14:39:03 topic 14:39:05 ppc status 14:39:48 Beta RC2 is out, testing in motion 14:39:58 hoping this one will go GA 14:40:10 cool 14:40:24 a few blockers found for mainline GA mostly around multi path so hoping to get that closed out RSN 14:41:22 anything else? 14:41:26 nope 14:41:42 #topic Secondary Architectures update - s390 14:42:00 sharkcz is not here today as its a public holiday for him 14:42:10 so not sure we will get an update 14:42:31 #topic Secondary Architectures update - arm 14:42:41 pbrobinson: hows arm 14:43:08 Beta RC1 is out, it's looking pretty good, nothing particularly blocking so hoping we can sign that off as Beta today 14:43:17 builds are looking pretty reasonable 14:43:33 cool 14:43:41 fixed a few packages that were blocking other packages and overall for F-21 we're looking pretty good as well 14:44:04 a LUKS issue for both ppc/aarch64 was fixed in 3.17.3 14:44:15 so with luck we should be good with that too 14:45:31 and that's about it 14:45:59 cool 14:46:15 #topic #5967 Enable source repo generation 14:46:16 https://fedorahosted.org/rel-eng/ticket/5967 14:46:45 mizdebsk: so we have some major concerns over enabling srpm repo for koji repos 14:47:00 namely the extra disk and resources needed 14:47:07 for no apparent benefit 14:47:54 before starting to work on koschei i've been told that we can get extra hardware for koji, if needed 14:48:18 what is koschei? 14:48:41 mizdebsk: well we would need to look at netapp disk mostly 14:48:43 so i am fine with condition that srpm repo will be enabled once extra hardware is delivered 14:48:45 mizdebsk: yeah, disk. ;) 14:48:57 mizdebsk: and as i understand it thats not possible to extend right now 14:49:00 pbrobinson: https://fedoraproject.org/wiki/Koschei 14:49:20 we are looking at next years budget and really looking like we might need another shelf to keep up for a while. 14:49:26 mizdebsk: i do not see any benefit for what is a massive cost 14:49:38 mizdebsk: so you need to convince us why 14:49:52 srpm repo has to be generated somewrere, for koschei 14:49:59 mizdebsk: why? 14:50:00 currently koschei generates it itself 14:50:14 mizdebsk: I really do not see why it needs to be 14:50:22 koschei has to resolve build dependencies of all packages it tracks 14:50:46 it can't use repo from compose as delay would be too long - that defeats purpose of CI 14:51:05 mizdebsk: why can it not use the previous days rawhide and the newly done build? 14:51:17 as i said, too long delay 14:51:25 mizdebsk: why? 14:51:41 mizdebsk: deps do not change that often 14:52:10 perhaps you could give an example? 14:52:46 mizdebsk: I really would like to understand the problem. 14:52:51 koschei has to catch all kind of bugs as soon as they appear, 24 h is too long delay IMO, compared to 20 min (if repo is generated) 14:52:57 mizdebsk: but I have yet to see it 14:53:38 if you see the bug you caused after 30 min or 1h you can untag broken package and submit new build 14:53:48 after compose it may not be so easy 14:53:51 mizdebsk: that does not help make your case. the deps really do not change much. you can easily evaluate the build in question to see if its BuildRequires change 14:53:55 dgilmore: I guess the case is 'perl-Foo' is rebuild, you want to know that 'perl-Bar' and 'perl-Baz' fail to build with the new one. You could wait a day for the deps, but you could fix it right after. 14:54:05 mizdebsk: in fact the repodata can be useless 14:54:24 mizdebsk: because the buildRequires are embeded at srpm generation time 14:54:50 dgilmore: it's definitely not useless 14:55:35 mizdebsk: say a package on arm doesnt "BuildRequires: foo" because foo is not built on arm we happen to include the arm built srpm that BuildRequres willnot exist in the repo 14:55:41 mizdebsk: it really is 14:56:08 mizdebsk: as you need to evaluate the BuildRequires for teh srpm built on all arches 14:56:30 to properlly evaluate all possible BuildRequires 14:56:58 mizdebsk: the BuildRequires can change based on the arch that the srpm is built on 14:57:03 possibly, but i don't see any other way to reliably obtain package BR 14:57:32 msimacek: any comment on this? 14:57:32 if we enable this it's just one repo? or one per arch? 14:58:12 nirik: koschei currently runs only on primary rawhide, so only one repo 14:58:13 mizdebsk: the only possibly way is to rebuild teh srpm for every arch 14:58:43 mizdebsk: we can not enable source repo creation on only one tag 14:58:48 yeah, but then we run into the thing dgilmore is talking about with different contents depending on where it was built. 14:59:29 mizdebsk: I am having a really hard time seeing the benefit of enabling it 14:59:30 * nirik wishes src.rpms were arch independent... but no such luck. 14:59:34 when it has a high cost 14:59:50 and it doesnt really solve the problem its trying to 15:00:21 mizdebsk: if the cost was low I would gladly enable it 15:00:42 dgilmore: i see, but the only alternative we have is to keep generating the repo ourselves 15:00:46 nirik, I've always wished we'd eventually pass a policy for that, and treat arch-dependent srpms as bugs 15:01:12 bochecha: but they are not bugs 15:01:12 dgilmore, it's better than using a day old repo from compose. The deps don't change much, but when they do, we'll get incorrect data 15:02:09 dgilmore, the ones I already saw were mostly copypaste errors 15:02:14 msimacek: I think you would get much better and reliable results evaluating the srom in isolation 15:02:33 by rebuilding the srpm for all arches 15:02:45 and using a db for all build requires 15:03:01 you can easily detect when BuildRequires change 15:03:59 msimacek: the Requires in the srpm repo have to be assumed to be wrong 15:04:33 dgilmore: is there a way to scratch build just srpm on particular arches? 15:04:45 msimacek: so please help me to help you. I still do not really grasp why you think you need it. please can you provide an example? 15:04:55 nirik: there is no way 15:05:18 bummer. that might be handy actually. 15:05:21 nirik: well you could do a scratch build for each arch 15:05:45 with --arch-override? 15:05:46 since you can override the arches for scratch builds 15:05:49 yep 15:06:03 but the srpm still gets built on $random? 15:06:15 but that will involve a scratch build for each arch 15:06:27 nirik: well the srpm task yes 15:06:34 but the resulting srpm no 15:06:37 ah right, indeed. 15:08:22 (koschei doesn't run scratch builds from scm, but from srpms that are results of official builds) 15:08:49 yeah, but those src.rpms can be made on any arch... 15:09:00 most of the time thats fine... 15:09:06 mizdebsk: okay, and what exactly does it do? 15:09:22 dgilmore: what do you mean? 15:10:11 mizdebsk: well how does it determine what to build? 15:11:12 it is determined by priority, which amond other things, depends on number of build dependencies changed since last build 15:11:27 it is explained in detail at https://fedoraproject.org/wiki/Koschei 15:11:28 mizdebsk: that is very vague 15:11:39 I have not had time to look at it at all 15:12:58 it uses a scoring system right? so it adds points to things that's BR's have changed, and builds the highest scoring ones first... 15:13:13 mizdebsk: I won't have time to read that until after f21 is out 15:13:19 dgilmore: there's also some info with questions and answers on the infra list. 15:13:43 dgilmore, after repo done event, it resolves all srpm deps in the new repo and raises the priority score of packages whose deps changed 15:13:49 nirik: something like this 15:14:13 mizdebsk: so i think you are best of doing this 15:14:29 keep in a db all deps for all arches of every srpm 15:14:41 so rebuild the srpm for all arches 15:15:10 and for every build done in koji fetch the srpm, rebuild it for all arches to get correct BuildRequires 15:15:35 and compare the BuildRequires to your internal database 15:15:48 which should be a inexpensive query 15:15:58 you can then update if deps change 15:16:26 it seems to be the only way to do it 15:16:27 dgilmore: you suggest to rebuild all packages on all arches after every new repo? and that requires less resources than our proposal? 15:16:39 mizdebsk: no 15:16:56 mizdebsk: I suggest you locally rebuild the srpm for all arches 15:17:18 and locally evaluate the srpm after being built for each arch 15:17:40 mizdebsk: so an example. 15:17:45 still that requires a lot of resources 15:17:49 it is a little vague 15:17:50 but 15:18:15 many packages historically have not had valgrind support on %arm arches 15:18:22 as valgrind used to be missing 15:19:13 so if you get a srpm that was built on the armv7hl task it could well be misisng valgrind as a BuildRequires 15:19:38 when the srpm on the next build comes from x86_64 it gains the valgrind dep 15:20:01 that's not a big problem for koschei 15:20:27 worst case it will miss dep update of valgrint and not trigger scratch build 15:20:27 mizdebsk: it doesnt really, it requires you build the srpm from spec multiple times but thats a local task that doesnt take long to run 15:21:04 mizdebsk: if thats not a big deal then neither is using yesterdays rawhide and considering the build in question 15:21:24 we don'n require BR to be 100% accurate, 99% cases is good enough approximation for our use case (koschei) 15:21:51 this is totally different 15:22:05 mizdebsk: then using rawhides repodata and grabbing the srpm and evaluating it in isolation is nota big deal either 15:22:43 mizdebsk: what exactly does koschei use the srpm metadata for? 15:22:47 we want to catch bugs introduced by changing BR, we have to use latest srpms to catch bugs asap 15:22:48 mizdebsk: its really not 15:22:55 you need to explain why it is 15:23:07 though at this point the metting is over time 15:23:28 dgilmore: i can explain in the ticket 15:24:02 mizdebsk: can you please update the ticket and explain clearly what koschei needs the metadata for. perhaps we can come up with a more efficent way to solve the problem 15:24:17 dgilmore: sure, i'll do that 15:24:22 thanks 15:25:04 mizdebsk: I am not trying to be difficult, just trying to understand why and what its doing. I would like to find a less expansive way to solve the problem 15:25:18 understood 15:29:55 mizdebsk: just as an example of teh cost in disk, in the last 24 hours which is mostly a weekend so rawhide churn is quiet. there was 81 new reawhide repos 15:30:04 20Mb data per repo 15:30:14 1620M 15:30:27 rawhide always gets 2 repos 15:30:40 due to some internal things in how we have things setup 15:30:52 i need srpm repo only in one repo, f22-build 15:30:58 so 3240M a day 15:30:59 not in "rawhide" 15:31:12 mizdebsk:same thing 15:31:23 mizdebsk: and we have to turn it on for all repos 15:31:38 so right now thats epel5 6 and 7 and fedora 19 20 21 22 15:31:51 any side tag means extar newRepos 15:32:01 i thought that it was possible to enable it per-repo 15:32:15 mizdebsk: it is not 15:32:49 we are looking at using a lot of disk for srpm repos 15:33:27 if it is not possible to enable it just for one repo then i can prepare patch for koji to implement this 15:33:56 mizdebsk: https://git.fedorahosted.org/cgit/koji/tree/util/kojira.conf its a global setting 15:34:40 mizdebsk: we would then need to update configs everytime we branch 15:35:00 it then becomes an ongoing maintainence issue 15:36:35 dgilmore: i see, thx, i start to understand better why you don't like the idea 15:37:23 mizdebsk: if we can do it for one repo with the number of repos we have for f22-build right now we would use an extra 10760M of disk which is not end of the world 15:38:17 47820M for all current repos 15:38:30 which goes back a week 15:38:50 anyway mizdebsk I look forward to seeing your ticket update 15:38:58 and lets end the meeting 15:40:30 mizdebsk: once f21 is done there will be more cycles to look at things also 15:40:50 #endmeeting