line |
true |
false |
branch |
60
|
211 |
923 |
if 0 < scalar @_ |
105
|
6 |
535 |
if ($use_type eq 'ModifyTable') { } |
|
32 |
503 |
elsif ($use_type eq 'Aggregate') { } |
107
|
6 |
0 |
if ($struct->{'Relation Name'}) |
109
|
0 |
6 |
if $struct->{'Alias'} and $struct->{'Alias'} ne $struct->{'Relation Name'} |
115
|
6 |
26 |
if $strategy eq "Hashed" |
116
|
3 |
29 |
if $strategy eq "Sorted" |
117
|
2 |
30 |
if $strategy eq "Mixed" |
119
|
6 |
535 |
if (($struct->{'Scan Direction'} || '') eq "Backward") |
136
|
0 |
541 |
if (defined $struct->{'Actual Startup Time'} and not $struct->{'Actual Loops'}) |
142
|
257 |
284 |
if ($struct->{'Node Type'} =~ /\A(?:Seq Scan|Bitmap Heap Scan)$/u) { } |
|
6 |
278 |
elsif ($struct->{'Node Type'} eq 'Function Scan') { } |
|
6 |
272 |
elsif ($struct->{'Node Type'} eq 'Bitmap Index Scan') { } |
|
24 |
248 |
elsif ($struct->{'Node Type'} =~ /\AIndex(?: Only)? Scan(?: Backward)?\z/u) { } |
|
9 |
239 |
elsif ($struct->{'Node Type'} eq 'CTE Scan') { } |
|
2 |
237 |
elsif ($struct->{'Node Type'} eq 'Subquery Scan') { } |
|
3 |
234 |
elsif ($struct->{'Node Type'} eq 'WorkTable Scan') { } |
199
|
9 |
532 |
if ($struct->{'Group Key'}) |
204
|
2 |
539 |
if ($struct->{'Grouping Sets'}) |
215
|
6 |
535 |
if $struct->{'Workers Planned'} |
216
|
6 |
535 |
if ($struct->{'Workers Launched'}) |
221
|
6 |
535 |
if ($struct->{'Recheck Cond'}) |
223
|
3 |
3 |
if ($struct->{'Rows Removed by Index Recheck'}) |
228
|
3 |
538 |
if ($struct->{'Join Filter'}) |
230
|
3 |
0 |
if ($struct->{'Rows Removed by Join Filter'}) |
235
|
19 |
522 |
if $struct->{'Index Cond'} |
237
|
205 |
336 |
if ($struct->{'Filter'}) |
239
|
205 |
0 |
if (defined $struct->{'Rows Removed by Filter'}) |
244
|
12 |
529 |
if ($struct->{'Node Type'} eq "Sort") |
245
|
9 |
3 |
if ("ARRAY" eq ref $struct->{'Sort Key'}) |
248
|
9 |
3 |
if ($struct->{'Sort Method'}) |
256
|
6 |
535 |
if $struct->{'Heap Fetches'} |
261
|
1076 |
6 |
unless $struct->{$key} |
264
|
6 |
535 |
if 0 < scalar @heap_blocks_info |
267
|
60 |
481 |
if $buffers |
269
|
3 |
538 |
if ($struct->{'Conflict Resolution'}) |
271
|
3 |
0 |
if ($struct->{'Conflict Arbiter Indexes'}) |
274
|
3 |
0 |
if ($struct->{'Conflict Filter'}) |
276
|
3 |
0 |
if (defined $struct->{'Rows Removed by Conflict Filter'}) |
282
|
3 |
538 |
if defined $struct->{'Tuples Inserted'} |
284
|
3 |
538 |
if defined $struct->{'Conflicting Tuples'} |
286
|
320 |
221 |
if ($struct->{'Plans'}) |
288
|
0 |
320 |
if ('HASH' eq ref $struct->{'Plans'}) { } |
297
|
15 |
315 |
if ($parent_relationship eq 'InitPlan') { } |
|
3 |
312 |
elsif ($parent_relationship eq 'SubPlan') { } |
298
|
9 |
6 |
if ($subplan->{'Subplan Name'} =~ / \A \s* CTE \s+ (\S+) \s* \z /msux) { } |
|
6 |
0 |
elsif ($subplan->{'Subplan Name'} =~ / \A InitPlan \s+ (\d+) \s+ \(returns \s+ ( .* )\) \z/msux) { } |