On 07/31/2015 09:22 AM, Gurjeet Singh wrote:
> On Jul 30, 2015 2:23 PM, "Tom Lane" <tgl@sss.pgh.pa.us> wrote:
>> But the elephant in the room is on-disk compatibility. There is
>> absolutely no way that we can just change xmin/xmax to 64 bits without a
>> disk format break. However, if we do something like what Heikki is
>> suggesting, it's at least conceivable that we could convert incrementally
>> (ie, if you find a page with the old header format, assume all tuples in
>> it are part of epoch 0; and do not insert new tuples into it unless there
>> is room to convert the header to new format ... but I'm not sure what we
>> do about tuple deletion if the old page is totally full and we need to
>> write an xmax that's past 4G).
>
> Can we safely relegate the responsibility of tracking the per block epoch
> to a relation fork?
Sounds complicated and fragile. I would rather attack the page version
problem head on.
- Heikki