Fix issues in pgarch's new directory-scanning logic.
Tom Lane <tgl@sss.pgh.pa.us>
Fix issues in pgarch's new directory-scanning logic. The arch_filenames[] array elements were one byte too small, so that a maximum-length filename would get corrupted if another entry were made after it. (Noted by Thomas Munro, fix by Nathan Bossart.) Move these arrays into a palloc'd struct, so that we aren't wasting a few kilobytes of static data in each non-archiver process. Add a binaryheap_reset() call to make it plain that we start the directory scan with an empty heap. I don't think there's any live bug of that sort, but it seems fragile, and this is very cheap insurance. Cleanup for commit beb4e9ba1, so no back-patch needed. Discussion: https://postgr.es/m/CA+hUKGLHAjHuKuwtzsW7uMJF4BVPcQRL-UMZG_HM-g0y7yLkUg@mail.gmail.com
Files
| Path | Change | +/− |
|---|---|---|
| src/backend/postmaster/pgarch.c | modified | +43 −27 |
Discussion
- Strange path from pgarch_readyXlog() 6 messages · 2021-12-29 → 2021-12-30