Commit 0f26025
committed
Stabilize regression tests across PostgreSQL 17–19
Extend portable_explain_analyze() to normalise additional sources of
version-specific output variation:
- Strip "Index Searches: N" lines introduced in PG 18 so that a single
expected file covers both PG 17 and PG 18+. This also lets us drop
expected/join_filtering_1.out entirely, leaving one canonical file.
- Normalise "actual rows=N.00" to "actual rows=N". PG 18 started
printing row counts with two decimal places inside EXPLAIN ANALYZE
output; the normalisation hides this from all callers of the helper.
- Normalise "Heap Fetches: N" to mask the non-deterministic value that
depends on visibility-map state at test time.
Switch subplan.sql to route both EXPLAIN calls through
portable_explain_analyze() so that the normalisation rules apply there
too. Add "AND query LIKE 'EXPLAIN%'" to the tracking-result query so
that only the inner EXPLAIN query appears in pg_track_optimizer(), not
the portable_explain_analyze() wrapper itself.
Update expected output files accordingly:
- expected/subplan.out – PG 19+ (SubPlan expr_1 naming)
- expected/subplan_1.out – PG 17–18 (SubPlan 1 naming)
- expected/subplan_2.out – deleted; PG 16 is no longer supported
- expected/join_filtering_1.out – deleted; consolidated into one file
- expected/pg_track_optimizer.out / _1.out – updated for the
portable_explain_analyze() change in the verify_test block
Add a "Regression Test Expected Output Files" section to README.md
documenting which file covers which PostgreSQL version and why.1 parent 4422777 commit 0f26025
10 files changed
Lines changed: 67 additions & 410 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
313 | 313 | | |
314 | 314 | | |
315 | 315 | | |
| 316 | + | |
| 317 | + | |
| 318 | + | |
| 319 | + | |
| 320 | + | |
| 321 | + | |
| 322 | + | |
| 323 | + | |
| 324 | + | |
| 325 | + | |
| 326 | + | |
| 327 | + | |
| 328 | + | |
| 329 | + | |
| 330 | + | |
| 331 | + | |
316 | 332 | | |
317 | 333 | | |
318 | 334 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
11 | 11 | | |
12 | 12 | | |
13 | 13 | | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
14 | 18 | | |
15 | 19 | | |
16 | 20 | | |
| |||
157 | 161 | | |
158 | 162 | | |
159 | 163 | | |
160 | | - | |
161 | 164 | | |
162 | 165 | | |
163 | 166 | | |
164 | 167 | | |
165 | | - | |
| 168 | + | |
166 | 169 | | |
167 | 170 | | |
168 | 171 | | |
| |||
This file was deleted.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
146 | 146 | | |
147 | 147 | | |
148 | 148 | | |
149 | | - | |
150 | | - | |
| 149 | + | |
151 | 150 | | |
152 | 151 | | |
153 | 152 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
138 | 138 | | |
139 | 139 | | |
140 | 140 | | |
141 | | - | |
142 | | - | |
143 | | - | |
| 141 | + | |
| 142 | + | |
144 | 143 | | |
145 | 144 | | |
146 | 145 | | |
147 | 146 | | |
148 | 147 | | |
149 | | - | |
| 148 | + | |
150 | 149 | | |
151 | 150 | | |
152 | 151 | | |
| |||
155 | 154 | | |
156 | 155 | | |
157 | 156 | | |
158 | | - | |
159 | | - | |
160 | | - | |
161 | | - | |
162 | | - | |
| 157 | + | |
| 158 | + | |
| 159 | + | |
| 160 | + | |
| 161 | + | |
163 | 162 | | |
164 | 163 | | |
165 | 164 | | |
| |||
176 | 175 | | |
177 | 176 | | |
178 | 177 | | |
179 | | - | |
| 178 | + | |
180 | 179 | | |
181 | 180 | | |
182 | 181 | | |
0 commit comments