Replace time_t with pg_time_t (same values, but always int64) in on-disk

Tom Lane <tgl@sss.pgh.pa.us>

Commit: cd004067742ee16ee63e55abfb4acbd5f09fbaab
Author: Tom Lane <tgl@sss.pgh.pa.us>
Date: 2008-02-17T02:09:32Z
Releases: 8.4.0
Replace time_t with pg_time_t (same values, but always int64) in on-disk
data structures and backend internal APIs.  This solves problems we've seen
recently with inconsistent layout of pg_control between machines that have
32-bit time_t and those that have already migrated to 64-bit time_t.  Also,
we can get out from under the problem that Windows' Unix-API emulation is not
consistent about the width of time_t.

There are a few remaining places where local time_t variables are used to hold
the current or recent result of time(NULL).  I didn't bother changing these
since they do not affect any cross-module APIs and surely all platforms will
have 64-bit time_t before overflow becomes an actual risk.  time_t should
be avoided for anything visible to extension modules, however.

Files