Re: [Fwd: Re: [PATCHES] 64-bit CommandIds]

Decibel! <decibel@decibel.org>

From: Decibel! <decibel@decibel.org>
To: Heikki Linnakangas <heikki@enterprisedb.com>
Cc: "Gregory Stark" <stark@enterprisedb.com>, "Zoltan Boszormenyi" <zb@cybertec.at>, "Bruce Momjian" <bruce@momjian.us>, "Hans-Juergen Schoenig" <hs@cybertec.at>, "PG Hackers" <pgsql-hackers@postgresql.org>
Date: 2008-03-20T15:59:13Z
Lists: pgsql-hackers
On Mar 10, 2008, at 12:06 PM, Heikki Linnakangas wrote:
> Gregory Stark wrote:
>> I don't understand. The patch only affects configuration and SQL  
>> data type
>> code. It doesn't actually store the 64-bit commandid anywhere  
>> which would be
>> the actual hard part.
>
> Sure it does, this is the significant part of the patch:
>
> *** pgsql.orig/src/include/c.h	2008-03-02 13:44:45.000000000 +0100
> --- pgsql-cid64/src/include/c.h	2008-03-04 21:05:23.000000000 +0100
> *************** typedef TransactionId MultiXactId;
> *** 382,388 ****
> --- 382,392 ----
>
>   typedef uint32 MultiXactOffset;
>
> + #ifdef USE_64BIT_COMMANDID
> + typedef uint64 CommandId;
> + #else
>   typedef uint32 CommandId;
> + #endif
>
>   #define FirstCommandId	((CommandId) 0)
>
> CommandId type is used in htup.h and elsewhere, which changes the  
> on-disk format.

If we're going to make this a ./configure option, ISTM we should do  
the same with XID size as well. I know there are high-velocity  
databases that could use that.
-- 
Decibel!, aka Jim C. Nasby, Database Architect  decibel@decibel.org
Give your computer some brain candy! www.distributed.net Team #1828