EXPLAIN ANALYZE on mawson yields :
Aggregate (cost=36531.83..36531.84 rows=1 width=0) (actual time=64262.322..64262.322 rows=1 loops=1) -> Nested Loop (cost=29022.63..36531.82 rows=1 width=0) (actual time=64262.311..64262.311 rows=0 loops=1) -> Hash Join (cost=29022.63..36531.44 rows=1 width=4) (actual time=64262.311..64262.311 rows=0 loops=1) Hash Cond: (build.sourcepackagerelease = sourcepackagerelease.id) -> Hash Join (cost=2.33..7510.91 rows=25 width=8) (actual time=5173.259..6455.543 rows=41 loops=1) Hash Cond: ((build.distroarchseries = distroarchseries.id) AND (distroseries.id = distroarchseries.distroseries)) -> Nested Loop (cost=0.00..7502.76 rows=743 width=16) (actual time=20.410..6454.889 rows=410 loops=1) -> Nested Loop (cost=0.00..173.71 rows=27 width=8) (actual time=0.213..0.816 rows=30 loops=1) -> Nested Loop (cost=0.00..49.10 rows=26 width=12) (actual time=0.154..0.492 rows=20 loops=1) -> Index Scan using distrorelease_pkey on distroseries (cost=0.00..16.70 rows=30 width=8) (actual time=0.079..0.172 rows=20 loops=1) -> Index Scan using distribution_pkey on distribution (cost=0.00..1.07 rows=1 width=4) (actual time=0.010..0.012 rows=1 loops=20) Index Cond: (distribution.id = distroseries.distribution) -> Index Scan using archive__distribution__purpose__key on archive (cost=0.00..4.78 rows=1 width=8) (actual time=0.008..0.012 rows=2 loops=20) Index Cond: (archive.distribution = distroseries.distribution) -> Index Scan using build__archive__idx on build (cost=0.00..269.10 rows=188 width=16) (actual time=2.489..215.117 rows=14 loops=30) Index Cond: (build.archive = archive.id) Filter: (((build.buildstate <> 1) OR (NOT (build.datebuilt IS NULL))) AND (build.buildstate = 0) AND (build.distroarchseries = ANY ('{81,87,80,82,83,84,85,86,77,75,78,73,76,79,74,66,70,67,71,68,72,69,59,60,61,62,65,63,64,47,49,51,52,48,50,38,35,39,36,40,37,16,21,17,28,18,19,14,26,13,25,15,24,8,7,23,9,22,11,10,12}'::integer[]))) -> Hash (cost=1.53..1.53 rows=53 width=8) (actual time=0.125..0.125 rows=63 loops=1) -> Seq Scan on distroarchseries (cost=0.00..1.53 rows=53 width=8) (actual time=0.038..0.073 rows=63 loops=1) -> Hash (cost=28960.24..28960.24 rows=4805 width=4) (actual time=57806.577..57806.577 rows=29971 loops=1) -> Unique (cost=28888.17..28912.19 rows=4805 width=4) (actual time=57744.078..57784.116 rows=29971 loops=1) -> Sort (cost=28888.17..28900.18 rows=4805 width=4) (actual time=57744.074..57756.782 rows=29971 loops=1) Sort Key: sourcepackagerelease.id Sort Method: quicksort Memory: 1215kB -> Nested Loop (cost=0.00..28594.33 rows=4805 width=4) (actual time=13.409..57697.954 rows=29971 loops=1) -> Seq Scan on sourcepackagename (cost=0.00..383.52 rows=424 width=4) (actual time=0.162..11.187 rows=469 loops=1) Filter: (name ~~ '%gnome-%'::text) -> Index Scan using sourcepackagerelease_sourcepackagename_idx on sourcepackagerelease (cost=0.00..66.31 rows=18 width=8) (actual time=1.944..122.933 rows=64 loops=469) Index Cond: (sourcepackagerelease.sourcepackagename = sourcepackagename.id) -> Index Scan using buildqueue__build__idx on buildqueue (cost=0.00..0.37 rows=1 width=4) (never executed) Index Cond: (buildqueue.build = build.id) Total runtime: 64320.229 ms (32 rows)
EXPLAIN ANALYZE on mawson yields :
Aggregate (cost=36531. 83..36531. 84 rows=1 width=0) (actual time=64262. 322..64262. 322 rows=1 loops=1) 63..36531. 82 rows=1 width=0) (actual time=64262. 311..64262. 311 rows=0 loops=1) 63..36531. 44 rows=1 width=4) (actual time=64262. 311..64262. 311 rows=0 loops=1) sourcepackagere lease = sourcepackagere lease.id) 259..6455. 543 rows=41 loops=1)
Hash Cond: ((build. distroarchserie s = distroarchserie s.id) AND (distroseries.id = distroarchserie s.distroseries) )
-> Nested Loop (cost=0.00..7502.76 rows=743 width=16) (actual time=20. 410..6454. 889 rows=410 loops=1)
- > Nested Loop (cost=0.00..173.71 rows=27 width=8) (actual time=0.213..0.816 rows=30 loops=1)
-> Nested Loop (cost=0.00..49.10 rows=26 width=12) (actual time=0.154..0.492 rows=20 loops=1)
-> Index Scan using distrorelease_pkey on distroseries (cost=0.00..16.70 rows=30 width=8) (actual time=0.079..0.172 rows=20 loops=1)
-> Index Scan using distribution_pkey on distribution (cost=0.00..1.07 rows=1 width=4) (actual time=0.010..0.012 rows=1 loops=20)
Index Cond: (distribution.id = distroseries. distribution)
-> Index Scan using archive_ _distribution_ _purpose_ _key on archive (cost=0.00..4.78 rows=1 width=8) (actual time=0.008..0.012 rows=2 loops=20)
Index Cond: (archive. distribution = distroseries. distribution)
- > Index Scan using build__archive__idx on build (cost=0.00..269.10 rows=188 width=16) (actual time=2.489..215.117 rows=14 loops=30)
Index Cond: (build.archive = archive.id)
Filter: (((build.buildstate <> 1) OR (NOT (build.datebuilt IS NULL))) AND (build.buildstate = 0) AND (build. distroarchserie s = ANY ('{81,87, 80,82,83, 84,85,86, 77,75,78, 73,76,79, 74,66,70, 67,71,68, 72,69,59, 60,61,62, 65,63,64, 47,49,51, 52,48,50, 38,35,39, 36,40,37, 16,21,17, 28,18,19, 14,26,13, 25,15,24, 8,7,23, 9,22,11, 10,12}' ::integer[ ])))
-> Hash (cost=1.53..1.53 rows=53 width=8) (actual time=0.125..0.125 rows=63 loops=1)
- > Seq Scan on distroarchseries (cost=0.00..1.53 rows=53 width=8) (actual time=0.038..0.073 rows=63 loops=1) 24..28960. 24 rows=4805 width=4) (actual time=57806. 577..57806. 577 rows=29971 loops=1)
-> Unique (cost=28888. 17..28912. 19 rows=4805 width=4) (actual time=57744. 078..57784. 116 rows=29971 loops=1)
- > Sort (cost=28888. 17..28900. 18 rows=4805 width=4) (actual time=57744. 074..57756. 782 rows=29971 loops=1)
Sort Key: sourcepackagere lease.id
Sort Method: quicksort Memory: 1215kB
-> Nested Loop (cost=0. 00..28594. 33 rows=4805 width=4) (actual time=13. 409..57697. 954 rows=29971 loops=1)
-> Seq Scan on sourcepackagename (cost=0.00..383.52 rows=424 width=4) (actual time=0.162..11.187 rows=469 loops=1)
Filter: (name ~~ '%gnome-%'::text)
-> Index Scan using sourcepackagere lease_sourcepac kagename_ idx on sourcepackagere lease (cost=0.00..66.31 rows=18 width=8) (actual time=1.944..122.933 rows=64 loops=469)
Index Cond: (sourcepackager elease. sourcepackagena me = sourcepackagena me.id) _build_ _idx on buildqueue (cost=0.00..0.37 rows=1 width=4) (never executed)
Index Cond: (buildqueue.build = build.id)
-> Nested Loop (cost=29022.
-> Hash Join (cost=29022.
Hash Cond: (build.
-> Hash Join (cost=2.33..7510.91 rows=25 width=8) (actual time=5173.
-> Hash (cost=28960.
-> Index Scan using buildqueue_
Total runtime: 64320.229 ms
(32 rows)