On Fri, Oct 6, 2017 at 10:34 AM, Michael Paquier <michael.paqu...@gmail.com> wrote: > On Fri, Oct 6, 2017 at 11:22 PM, Tom Lane <t...@sss.pgh.pa.us> wrote: >> I'd say no: >> >> 1. You don't know the granularity of the filesystem's timestamps, at least >> not without making unportable assumptions. >> >> 2. There's no guarantee that the system clock can't be set backwards. >> >> 3. It's not uncommon for filesystems to have optimizations whereby they >> skip or delay some updates of file mtimes. (I think this is usually >> optional, but you couldn't know whether it's turned on.) >> >> #2 is probably the worst of these problems. > > Or upwards. A simple example of things depending on clock changes is > for example VM snapshotting. Any logic not depending on monotonic > timestamps, with things like clock_gettime(CLOCK_MONOTONIC) is a lot > of fun to investigate until you know that they are not using any > monotonic logic... So the answer is *no*, do not depend on FS-level > timestamps. The only sane method for Postgres is really to scan the > page header LSNs, and of course you already know that.
It might also be worth noting that the FSM is not WAL-logged, so it probably either doesn't have page LSNs or they are not meaningful. -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers