Every use of this table has a WHERE or ON which invokes at least one
of these conditions. So put only those rows into the table.
This provides a significant speedup (which I haven't properly
measured).
No overall functional change.
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
v2: New patch.
WHERE t.job = ?
AND t.flight = ?
- AND t.name LIKE '%buildjob'
+ AND t.name LIKE '%buildjob' AND
+(@{ $qtxt_common_rev_ok->('b') } OR
+ @{ $qtxt_common_tree_ok->('b') })
AND b.flight = (CASE WHEN t.val NOT LIKE '%.%'
THEN t.flight
ELSE cast(split_part(t.val, '.', 1) AS int)
job AS job
FROM runvars
WHERE job = ?
- AND flight = ?
+ AND flight = ? AND
+(@{ $qtxt_common_rev_ok->('runvars') } OR
+ @{ $qtxt_common_tree_ok->('runvars') })
END
my $qtxt_common_results = <<END;