X-Git-Url: https://git.jankratochvil.net/?p=massrebuild.git;a=blobdiff_plain;f=stat;h=4972065eb81b25da51bacb6bb2904a93b2fb6b21;hp=a209c70e0181954837b6630af54cc1391fc004b9;hb=6b155c0a5cfd3a0f63132147062ce09eea73b53b;hpb=c6f6050ad9716117deda0285572545a2a1621d6a diff --git a/stat b/stat index a209c70..4972065 100755 --- a/stat +++ b/stat @@ -61,7 +61,6 @@ sub onesrcrpm($) { $dtrpmsizetot+=$dtrpmsize; if (($dwzfilesize>=$dtfilesize)!=($dwzrpmsize>=$dtrpmsize)) { #warn "file vs. rpm size do not match (dwzfilesize=$dwzfilesize dtfilesize=$dtfilesize dwzrpmsize=$dwzrpmsize dtrpmsize=$dtrpmsize: $srcrpm"; - return; } if ($dwzfilesize==0&&$dtfilesize==0) { ++$emptybyfile; @@ -97,27 +96,39 @@ if (($ARGV[0]||"") eq "-r") { } shift; } +#my $allpkgs=readfile "dnf -C --disablerepo='*' --enablerepo=rawhide-source repoquery -a --arch src 2>/dev/null|"; +my $allpkgs=readfile "all"; +my %allpkgs=map(("build/$_.src.rpm"=>1),grep /./,(split /\n/,$allpkgs)); +my $extras=0; for my $srcrpmdone (glob "build/*.src.rpm.done") { (my $srcrpm=$srcrpmdone)=~s{\Q.done\E$}{} or die $srcrpmdone; if (%rpmqa) { $srcrpm=~m{^build/(.*)-[^-]*-[^-]*$} or die; next if !$rpmqa{$1}; } + if (!$allpkgs{$srcrpm}) { + warn "extra: $srcrpm\n"; + ++$extras; + next; + } + ++$allpkgs{$srcrpm}; onesrcrpm $srcrpm; } +my $unbuilt=0; +for my $srcrpm (keys(%allpkgs)) { + next if $allpkgs{$srcrpm}>1; + warn "unbuilt: $srcrpm\n"; + ++$unbuilt; +} +$allpkgs=~tr/\n//cd; +die if length($allpkgs)!=keys(%allpkgs); +$allpkgs=keys(%allpkgs); +die if $allpkgs!=$done+$mockfail+$dtmockfail+$unbuilt; +print "extras=$extras; unbuilt=$unbuilt; done=$done + mockfail=$mockfail + dtmockfail=$dtmockfail = ".($done+$mockfail+$dtmockfail)." all=$allpkgs processed=".(($done+$mockfail+$dtmockfail)/$allpkgs*100)."%\n"; print "dwzwinbyfile=$dwzwinbyfile"." dtwinbyfile=$dtwinbyfile"." equalbyfile=$equalbyfile"." emptybyfile=$emptybyfile"."\n"; print "dwzwinbyrpm =$dwzwinbyrpm" ." dtwinbyrpm =$dtwinbyrpm" ." equalbyrpm =$equalbyrpm" ." emptybyrpm =$emptybyrpm" ."\n"; -print "mockfail=$mockfail dtmockfail=$dtmockfail\n"; print "dwzfilesizetot=$dwzfilesizetot"." dtfilesizetot=$dtfilesizetot"." = ".($dwzfilesizetot/$dtfilesizetot*100)."%\n"; print " dwzrpmsizetot=$dwzrpmsizetot" ." dtrpmsizetot=$dtrpmsizetot" ." = ".( $dwzrpmsizetot/ $dtrpmsizetot*100)."%\n"; -my $fail=0; -for my $srcrpmfail (glob "build/*.src.rpm.*fail*") { - ++$fail; -} -my $allpkgs=readfile "dnf -C --disablerepo='*' --enablerepo=rawhide-source repoquery -a --arch src 2>/dev/null|"; -$allpkgs=~tr/\n//cd; -$allpkgs=length $allpkgs; -print "done=$done + fail=$fail = ".($done+$fail)." all=$allpkgs processed=".(($done+$fail)/$allpkgs*100)."%\n"; #print "equal: $_\n" for @{$filestat{1}}; my @sorted=map({ my $r=$_; map(($_,$r),@{$filestat{$_}}); } sort {$a<=>$b;} keys %filestat); sub out($) {