Re: Remove xmin and cmin from frozen tuples
Alvaro Herrera <alvherre@alvh.no-ip.org>
From: Alvaro Herrera <alvherre@alvh.no-ip.org>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: "Jim C. Nasby" <jnasby@pervasive.com>, Bruce Momjian <pgman@candle.pha.pa.us>, ITAGAKI Takahiro <itagaki.takahiro@lab.ntt.co.jp>, pgsql-hackers@postgresql.org, mkoi-pg@aon.at
Date: 2005-09-07T17:30:07Z
Lists: pgsql-hackers
On Wed, Sep 07, 2005 at 01:20:27PM -0400, Tom Lane wrote: > Anyway the fundamental insight has been completely lost here. The > original point was that cmin and cmax are only interesting within the > originating transaction, and not to anyone else, and thus perhaps don't > need to be kept in permanent storage; while xmin/xmax are different > animals because they *are* of interest to other transactions. I'm curious to know how can you store the cmin/cmax pair completely out of the tuple. It's easy to see how to store a single identifier in each tuple that would be an index to a structure in local memory. However, to eliminate both you'd have to keep a list of all tuples you have created or obsoleted, with the cmin and cmax of each. This seems like an awful amount of memory. -- Alvaro Herrera -- Valdivia, Chile Architect, www.EnterpriseDB.com "I can't go to a restaurant and order food because I keep looking at the fonts on the menu. Five minutes later I realize that it's also talking about food" (Donald Knuth)