On 2013-01-15 20:58:00 +0200, Heikki Linnakangas wrote: > On 15.01.2013 20:48, Tom Lane wrote: > >Robert Haas<robertmh...@gmail.com> writes: > >>On Tue, Jan 15, 2013 at 1:10 PM, Heikki Linnakangas > >><hlinnakan...@vmware.com> wrote: > >>>Could we stash the counter e.g. in the root page of the index? > > > >>That would require maintaining a counter per table rather than a > >>single global counter, which would be bad because then we'd need to > >>store one counter in shared memory for every table, rather than just > >>one, period, which runs up against the fixed sizing of shared memory. > > > >I think what Heikki had in mind was that the copy in the index would be > >the authoritative one, not some image in shared memory. This'd imply > >dirtying the root page on every insert, as well as increased contention > >for the root page, so it might have performance problems. > > Not every insert, just every split. Which might still be a performance > problem, but an order of magnitude smaller.
I might be dense here and I don't really know that code, but if its only splits why not do an XLogInsert(XLOG_GIST_NSN) or something there? Inventing some other form of logging just because its an unlogged table seems like reinventing the wheel. Greetings, Andres Freund -- Andres Freund http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Training & Services -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers