Re: Bitmap Indexes patch (was Re: Bitmap Indexes: request for feedback)

From: Simon Riggs <simon(at)2ndQuadrant(dot)com>
To: Greg Stark <stark(at)enterprisedb(dot)com>
Cc: Gianni Ciolli <gianni(dot)ciolli(at)2ndquadrant(dot)it>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>, Gabriele Bartolini <gabriele(dot)bartolini(at)2ndquadrant(dot)it>
Subject: Re: Bitmap Indexes patch (was Re: Bitmap Indexes: request for feedback)
Date: 2008-11-03 23:28:35
Message-ID: 1225754915.3971.1008.camel@ebony.2ndQuadrant
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers


On Mon, 2008-11-03 at 17:37 -0500, Greg Stark wrote:

> Secondly the locking seems to be a bit overoptimistic. I'm pretty sure
> you have to take an exclusive lock on an index page any time you make
> any data modifications in index pages -- even if you're just setting a
> bit and not moving any data around. If two processes set two bits in
> the same word one can get lost in the race condition.

I looked at that aspect of the patch specifically a few weeks back while
checking for possible issues with Hot Standby. IIRC the patch is fairly
careful with locking and uses Exclusive locks extensively throughout. I
looked at both the theory and the implementation. Unless Gianni changed
something in that regard recently, I don't understand that comment at
all. Probably need to provide specific examples of your concerns.

> There are a lot of comments in the code which imply that vacuuming is
> not implemented but in fact from what I can see it is -- sort of. It
> does rewrite the bitmap in bmbulkdelete but it doesn't have to rebuild
> the index from scratch. Are the comments out of date or am i
> misunderstanding them or the code? How complete is the vacuum
> implementation?

As I understood it, complete. I think the objective was minimal change
away from Gavin's original. But it sounds like you found some out of
date comments.

Extensive docs have been added as a README, mainly because it was pretty
hard to understand without them.

--
Simon Riggs www.2ndQuadrant.com
PostgreSQL Training, Services and Support

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message imad 2008-11-03 23:30:33 Re: Get Date value from Datum
Previous Message Zhe He 2008-11-03 23:19:05 Get Date value from Datum