Skip site navigation (1) Skip section navigation (2)

Re: [PATCHES] GIN improvements

From: Teodor Sigaev <teodor(at)sigaev(dot)ru>
To: Jeff Davis <pgsql(at)j-davis(dot)com>
Cc: Heikki Linnakangas <heikki(dot)linnakangas(at)enterprisedb(dot)com>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Pgsql Hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: [PATCHES] GIN improvements
Date: 2009-01-21 12:06:44
Message-ID: (view raw, whole thread or download thread mbox)
Lists: pgsql-hackerspgsql-patches
>> - after limit is reached, force cleanup of pending list by calling 
>> gininsertcleanup. Not very good, because users sometimes will see a huge 
>> execution time of simple insert. Although users who runs a huge update should be 
>> satisfied.
>> I have difficulties in a choice of way. Seems to me, the better will be second 
>> way: if user gets very long time of insertion then (auto)vacuum of his 
>> installation should tweaked.
> I agree that the second solution sounds better to me.

Done. Now GIN counts number of pending tuples and pages and stores they on 
metapage. Index cleanup could start during normal insertion in two cases:
- number of pending tuples is too high to keep guaranteed non-lossy tidbitmap
- pending page's content doesn't fit into work_mem.

BTW, gincostestimate could use that information for cost estimation, but is 
index opening and metapge reading in amcostestimate acceptable?

Teodor Sigaev                                   E-mail: teodor(at)sigaev(dot)ru

Attachment: fast_insert_gin-0.23.gz
Description: application/x-tar (24.3 KB)

In response to


pgsql-hackers by date

Next:From: Magnus HaganderDate: 2009-01-21 12:35:53
Subject: Re: Re: [COMMITTERS] pgsql: Explicitly bind gettext() to the UTF8 locale when in use.
Previous:From: Heikki LinnakangasDate: 2009-01-21 12:05:44
Subject: Re: rmgr hooks (v2)

pgsql-patches by date

Next:From: Jeff DavisDate: 2009-01-21 18:07:51
Subject: Re: [PATCHES] GIN improvements
Previous:From: Bryce NesbittDate: 2009-01-21 00:35:36
Subject: Re: New pg_dump patch, --no-stats flag, disables sending to statistics collector

Privacy Policy | About PostgreSQL
Copyright © 1996-2017 The PostgreSQL Global Development Group