Widen lossy and exact page counters for Bitmap Heap Scan
David Rowley <drowley@postgresql.org>
Widen lossy and exact page counters for Bitmap Heap Scan Both of these counters were using the "long" data type. On MSVC that's a 32-bit type. On modern hardware, I was able to demonstrate that we can wrap those counters with a query that only takes 15 minutes to run. This issue may manifest itself either by not showing the values of the counters because they've wrapped and are less than zero, resulting in them being filtered by the > 0 checks in show_tidbitmap_info(), or bogus numbers being displayed which are modulus 2^32 of the actual number. Widen these counters to uint64. Discussion: https://postgr.es/m/CAApHDvpS_97TU+jWPc=T83WPp7vJa1dTw3mojEtAVEZOWh9bjQ@mail.gmail.com
Files
| Path | Change | +/− |
|---|---|---|
| src/backend/commands/explain.c | modified | +6 −6 |
| src/include/nodes/execnodes.h | modified | +2 −2 |
Discussion
- Parallel Bitmap Heap Scan reports per-worker stats in EXPLAIN ANALYZE 30 messages · 2023-01-20 → 2026-04-16