| 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: | Whole Thread | Raw Message | 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
| 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 |