Commit 2512430
ci: enable parallel testing on the Linux jobs
The comment said parallel testing somehow caused GitHub Actions to kill the runner. The cause was the pgproto3 tests
that encode a maximum size (~1GB) message. Under the race detector the shadow memory multiplies that allocation, and
running the two tests in parallel peaked at 26.7GB of RSS versus 14.4GB serially. A runner has 16GB, so parallel testing
was fatal and serial testing was merely close enough to fail intermittently.
Those tests no longer run under the race detector, so the suite now peaks near 1GB whether or not tests run in parallel.
Measured on 4 pinned CPUs against PostgreSQL 18, with the race detector: 72s serial versus 26s parallel, with pgconn
going from 70.5s to 21.4s and pgxpool from 28.5s to 9.4s. Connections peaked at 48 of max_connections=100, and seven
consecutive runs (including three squeezed onto 2 CPUs) were clean.
Parallel testing is left disabled on Windows for now. That is the slower runner and the only one that has produced
timing sensitive failures, so it is better to let the Linux jobs prove the change first.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>1 parent 332af64 commit 2512430
1 file changed
Lines changed: 8 additions & 3 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
115 | 115 | | |
116 | 116 | | |
117 | 117 | | |
118 | | - | |
119 | | - | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
120 | 123 | | |
121 | 124 | | |
122 | 125 | | |
| |||
162 | 165 | | |
163 | 166 | | |
164 | 167 | | |
165 | | - | |
| 168 | + | |
| 169 | + | |
| 170 | + | |
166 | 171 | | |
167 | 172 | | |
168 | 173 | | |
| |||
0 commit comments