OIDs

Started by Philip Reimeralmost 24 years ago3 messagesgeneral
Jump to latest
#1Philip Reimer
phre@wi.uni-muenster.de

Hi everyone.
I have a simple question which I couldn't find an answer to in any of the
PostgreSQL documentations. How long is an OID in bits? Or otherwise, is
there a limit to OIDs, how big is the biggest OID?
Thanks,
Philip

#2Joe Conway
mail@joeconway.com
In reply to: Philip Reimer (#1)
Re: OIDs

Philip Reimer wrote:

Hi everyone.
I have a simple question which I couldn't find an answer to in any of the
PostgreSQL documentations. How long is an OID in bits? Or otherwise, is
there a limit to OIDs, how big is the biggest OID?
Thanks,
Philip

From ~/pgsql/src/include/postgres_ext.h:
<snip>

/*
* Object ID is a fundamental type in Postgres.
*/
typedef unsigned int Oid;

#define InvalidOid ((Oid) 0)

#define OID_MAX UINT_MAX
/* you will need to include <limits.h> to use the above #define */

</snip>

So, it depends on the size of unsigned int on your platform.
HTH,

Joe

#3Michael Loftis
mloftis@wgops.com
In reply to: Philip Reimer (#1)
Re: OIDs

In general, 32-bits. Does depend on how big an unsigned int happens to
be on your particular platform. They can roll around back to the start
also so aren't a very good idea to use for uniqueness if you've got a
lot of rows you want tracked by oid...

Philip Reimer wrote:

Show quoted text

Hi everyone.
I have a simple question which I couldn't find an answer to in any of the
PostgreSQL documentations. How long is an OID in bits? Or otherwise, is
there a limit to OIDs, how big is the biggest OID?
Thanks,
Philip

---------------------------(end of broadcast)---------------------------
TIP 4: Don't 'kill -9' the postmaster