Re: Pg_upgrade speed for many tables - Mailing list pgsql-hackers

From Tom Lane
Subject Re: Pg_upgrade speed for many tables
Date
Msg-id 28259.1352161346@sss.pgh.pa.us
Whole thread Raw
In response to Re: Pg_upgrade speed for many tables  (Bruce Momjian <bruce@momjian.us>)
List pgsql-hackers
Bruce Momjian <bruce@momjian.us> writes:
> That could generate a lot of WAL files if used regularly.  :-(  Does
> SELECT txid_current() generate WAL?  I think it does.

Well, it assigns a XID.  I'm not sure it'd be a good idea to assume that
the mere act of doing that, without actually writing anything to tables,
would result in a synchronous commit.  (For example, if the transaction
were to abort not commit, I'm pretty sure we'd not bother to fsync its
abort record.  There might be, today or in the future, a similar
optimization for successful xacts that created no WAL records.)

I thought the idea of creating a temp table was the most robust one.
A regular table would be even more certain to generate an fsync, but
it has the disadvantages that you can't easily guarantee no name
collision against a user table, nor guarantee that the table wouldn't
be left behind after a crash at the wrong instant.
        regards, tom lane



pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: alter table tablename add column - breaks pl/pgsql function returns tablename
Next
From: Josh Berkus
Date:
Subject: Re: Pg_upgrade speed for many tables