]> git.donarmstrong.com Git - wannabuild.git/blobdiff - bin/wanna-build
workaround: makes --list=needs-build faster again while optimizing the queries
[wannabuild.git] / bin / wanna-build
index 9080dc7bf99b8842d390def9715ebde9168334ca..bfe8ac7dd5e2e8b475a22d6cd8a7a6df28408afa 100755 (executable)
@@ -2544,6 +2544,7 @@ sub get_all_source_info {
         my $q = "SELECT rel, priority, state_change, permbuildpri, section, buildpri, failed, state, binary_nmu_changelog, bd_problem, version, package, distribution, installed_version, notes, failed_category, builder, old_failed, previous_state, binary_nmu_version, depends, extract(days from date_trunc('days', now() - state_change)) as state_days"
 #            . ", (SELECT max(build_time) FROM ".pkg_history_table_name()." WHERE pkg_history.package = packages.package AND pkg_history.distribution = packages.distribution AND result = 'successful') AS successtime"
 #            . ", (SELECT max(build_time) FROM ".pkg_history_table_name()." WHERE pkg_history.package = packages.package AND pkg_history.distribution = packages.distribution ) AS anytime"
+            . ", successtime.build_time as successtime, anytime.build_time as anytime"
             . " FROM " .  table_name()
                 . " left join ( "
                   . "select distinct on (package, distribution) build_time, package, distribution from ".pkg_history_table_name()." where result = 'successful' order by package, distribution, timestamp "
@@ -2565,11 +2566,10 @@ sub get_all_source_info {
                push @args, uc($options{state});
        }
 
-       if ($options{user}) {
+       if ($options{user} && uc($options{state}) ne "NEEDS-BUILD") { # if it's NEEDS-BUILD, we don't look at users
                #this basically means "this user, or no user at all":
-               $q .= ' AND (builder = ? OR upper(state) = ?)';
+               $q .= " AND (builder = ? OR upper(state) = 'NEEDS-BUILD')";
                push @args, $options{user};
-               push @args, "NEEDS-BUILD";
        }
 
        if ($options{category}) {