In pg_upgrade, copy fsm, vm, and extent files by checking for file

Bruce Momjian <bruce@momjian.us>

Commit: 29add0de4920e4f448a30bfc35798b939c211d97
Author: Bruce Momjian <bruce@momjian.us>
Date: 2012-11-14T22:32:07Z
Releases: 9.3.0
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

PathChange+/−
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