> This implies they do wrap around. So they are reused? Chris said no, but
> you're saying yes.
>
> (Maybe they wrap around "by accident", by adding one to MAXINT, which will
> give zero on an unsigned int, I believe. Will the system choke on zero?
> Has anyone tested this wraparound?)
>
> I will not have 4 billion records in one table or even one database. But
> on a large server with many databases, it is conceivable to have 4 billion
> records on one machine. With a lot of insert/delete activity, over a few
> years, it is certainly conceivable to have 4 billion inserts. If the oids
> don't wrap, I have a problem. I can ignore it for a long time, but it
> will loom, like Y2K. :-)
>
> Even if they do wrap, if I have some old records lying around with a low
> OIDs, they will trip me up. Like you said, these are "the outer limits",
> but I'm thinking ahead.
>
> Someone suggested in private that I pg_dump/restore all my data to
> "repack" the oids which start around 1700 on a fresh database. Thanks for
> that idea. Also thanks, Tom, for the sanity check Re: terabytes of data
> with 4 billion records. It's still possible, especially in coming years.
> It would be a big feather in PG's cap to "fully support" 64-bit platforms
> such as IRIX and Solaris (finally) and, coming soon to a theater near you,
> Linux on IA-64.
>
I have added this to the FAQ. Seems people are concerned enough to
warrant it:
OIDs are stored as 4-byte integers, and will overflow
at 4 billion. No one has reported this every happening, and we plan to
have the limit removed before anyone does.<P>
--
Bruce Momjian | http://candle.pha.pa.us
pgman@candle.pha.pa.us | (610) 853-3000
+ If your life is a hard drive, | 830 Blythe Avenue
+ Christ can be your backup. | Drexel Hill, Pennsylvania 19026