OID Implicit limit
Hi folks,
Reading the documentation, I see that OIDs are unique through the
whole database.
But since OIDs are int4, does that limit the number of rows I can
have in a database to 2^32 = 4 billion ?
Best Regards,
Howe
Reading the documentation, I see that OIDs are unique through
the
whole database.
But since OIDs are int4, does that limit the number of rows I
can
have in a database to 2^32 = 4 billion ?
Yep.
Thanks for the answer - although that concerns me a bit.
Maybe I could recompile it setting oid to int64 type...
If that really concerns you, then the rest of the hackers list I think would
be very interested in hearing of a real-world database with more than 4
billion rows/inserts/deletes.
Apparently it is somewhat more complicated than just 'recompiling as an
int64' to change this. I believe that patches are currently being made to
facilitate a future move towards 64bit OIDs, but I am not certain of the
status.
Chris
Import Notes
Reply to msg id not found: 005a01c06a23f47805c0b231b0c8@angla | Resolved by subject fallback
""Christopher Kings-Lynne"" <chriskl@familyhealth.com.au> wrote in message
news:NEBBIOAJBMEENKACLNPCIELGCCAA.chriskl@familyhealth.com.au...
Reading the documentation, I see that OIDs are unique through
the
whole database.
But since OIDs are int4, does that limit the number of rows Ican
have in a database to 2^32 = 4 billion ?
Yep.
Thanks for the answer - although that concerns me a bit.
Maybe I could recompile it setting oid to int64 type...If that really concerns you, then the rest of the hackers list I think
would
be very interested in hearing of a real-world database with more than 4
billion rows/inserts/deletes.Apparently it is somewhat more complicated than just 'recompiling as an
int64' to change this. I believe that patches are currently being made to
facilitate a future move towards 64bit OIDs, but I am not certain of the
status.Chris
It won't for sure have 4 billion records *at a time*. But will easyly
process (insert/small calculations/summarize/delete) up to 10 or
20 million records per day.
But not all records will be deleted; I'll run into key conflicts
if the oid sequence generator cross the 2^32 boundary. That is my problem.
But sure, that will take some time to happen (215 days for 20 millions
rows/day).
That means I'll have to be able to do 231,48148148 inserts per second plus
the time to delete and aggregate the data.
Apparently it is somewhat more complicated than just 'recompiling as an
int64' to change this. I believe that patches are currently
being made to
facilitate a future move towards 64bit OIDs, but I am not certain of the
status.
Well I hope until there I don't have the key conflicts I mentioned. It will
be hard to, anyway - but possible.
Best regards,
Howe
We have an FAQ item on this now under OID's.
[ Charset ISO-8859-1 unsupported, converting... ]
Reading the documentation, I see that OIDs are unique through
the
whole database.
But since OIDs are int4, does that limit the number of rows Ican
have in a database to 2^32 = 4 billion ?
Yep.
Thanks for the answer - although that concerns me a bit.
Maybe I could recompile it setting oid to int64 type...If that really concerns you, then the rest of the hackers list I think would
be very interested in hearing of a real-world database with more than 4
billion rows/inserts/deletes.Apparently it is somewhat more complicated than just 'recompiling as an
int64' to change this. I believe that patches are currently being made to
facilitate a future move towards 64bit OIDs, but I am not certain of the
status.Chris
--
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