On Tue, Dec 14, 2010 at 4:24 PM, Heikki Linnakangas
<heikki.linnakan...@enterprisedb.com> wrote:
> Hmm, the first idea that comes to mind is to use a counter like the
> GetXLogRecPtrForTemp() counter I used for temp tables, but global, in shared
> memory. However, that's a bit problematic because if we store a value from
> that counter to LSN, it's possible that the counter overtakes the XLOG
> insert location, and you start to get xlog flush errors. We could avoid that
> if we added a new field to the GiST page header, and used that to store the
> value in the parent page instead of the LSN.

That doesn't seem ideal, either, because now you're eating up some
number of bytes per page in every GIST index just on the off chance
that one of them is unlogged.  Unless there's a way to do it only for
unlogged GIST indexes, but it seems like that could be messy.

-- 
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company

-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to