Re: A couple of patches for PostgreSQL 64bit support

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Koichi Suzuki <koichi(at)intellilink(dot)co(dot)jp>
Cc: pgsql-patches(at)postgresql(dot)org, Satoshi Nagayasu <nagayasus(at)nttdata(dot)co(dot)jp>, ikubo(at)intellilink(dot)co(dot)jp, yasunaga <yasunaga(dot)hisato(at)soft(dot)fujitsu(dot)com>, Bruce Momjian <root(at)candle(dot)pha(dot)pa(dot)us>, Jan Wieck <JanWieck(at)Yahoo(dot)com>, sakata(dot)tetsuo(at)lab(dot)ntt(dot)co(dot)jp, "T(dot)Honishi" <honishi(dot)takashi(at)lab(dot)ntt(dot)co(dot)jp>
Subject: Re: A couple of patches for PostgreSQL 64bit support
Date: 2005-08-20 23:40:02
Message-ID: 17064.1124581202@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers pgsql-patches

Koichi Suzuki <koichi(at)intellilink(dot)co(dot)jp> writes:
> Here're a couple of patches for PostgreSQL 64bit support. There're just
> two extension to 64bit, size of shared memory and transaction ID.

I've applied the part of this that seemed reasonably noncontroversial,
namely the fixes to do shared memory size calculation in size_t
arithmetic instead of int arithmetic. (While at it, I extended the Size
convention to all the shared memory sizing routines, not just buffers,
and added code to detect overflows in the calculations. That way we
don't need a "64 bit" configure switch.) While I still remain
unconvinced that there's any real-world need for more than 2Gb of
shared_buffers, this change certainly makes the code more robust against
configuration errors, and it has essentially zero cost (except maybe a
few more milliseconds during postmaster start).

On the other hand, I think the 64-bit XID idea needs considerably more
work before being proposed again. That would incur serious costs due
to the expansion of tuple headers, and there's no evidence that the
distributed cost would be bought back by avoiding one vacuum pass every
billion transactions. (Your description of the patch claimed that
vacuuming requires shutting down the database, which is simply wrong.)
Also, as previously noted, you can't just whack the size of XID around
without considering side-effects on CID, OID, Datum, etc.

regards, tom lane

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2005-08-20 23:48:49 Re: prevent encoding conversion recursive error
Previous Message Bruce Momjian 2005-08-20 23:09:20 Re: prevent encoding conversion recursive error

Browse pgsql-patches by date

  From Date Subject
Next Message Tom Lane 2005-08-20 23:48:49 Re: prevent encoding conversion recursive error
Previous Message Bruce Momjian 2005-08-20 23:09:20 Re: prevent encoding conversion recursive error