In pg_upgrade, copy fsm, vm, and extent files by checking for file
Bruce Momjian <bruce@momjian.us>
In pg_upgrade, copy fsm, vm, and extent files by checking for file existence via open(), rather than collecting a directory listing and looking up matching relfilenode files with sequential scans of the array. This speeds up pg_upgrade by 2x for a large number of tables, e.g. 16k. Per observation by Ants Aasma.
Files
| Path | Change | +/− |
|---|---|---|
| contrib/pg_upgrade/file.c | modified | +0 −55 |
| contrib/pg_upgrade/pg_upgrade.h | modified | +0 −2 |
| contrib/pg_upgrade/relfilenode.c | modified | +82 −126 |