Re: DISTINCT with btree skip scan - Mailing list pgsql-hackers

From Vik Fearing
Subject Re: DISTINCT with btree skip scan
Date
Msg-id 53B74EC9.6060909@dalibo.com
Whole thread Raw
In response to DISTINCT with btree skip scan  (Thomas Munro <munro@ip9.org>)
Responses Re: DISTINCT with btree skip scan  (Thomas Munro <munro@ip9.org>)
List pgsql-hackers
On 07/05/2014 02:17 AM, Thomas Munro wrote:
> As an exercise I hacked up the simplest code I could think of that would
> demonstrate a faster DISTINCT based on skipping ahead to the next
> distinct value in an index-only scan. Please see the attached (extremely
> buggy) patch, and the example session below.  (It's against my natural
> instinct to send such half-baked early hacking phase code to the list,
> but thought it would make sense to demo the concept and then seek
> advice, warnings, cease and desist notices etc before pressing on down
> that route!)  I would be most grateful for any feedback you might have.

This is called a Loose Index Scan in our wiki[1] which I believe is
based on the terminology used for the same feature in MySQL although I
haven't and shan't check.

This is a feature I would really like to have.

Your benchmarks look promising but unfortunately it blows up for me so I
can't really test it.  I have not yet read the patch nor debugged to see
why, but please do keep up work on this.  People more expert than I can
tell you whether you're implementing it the right way.

[1] http://wiki.postgresql.org/wiki/Loose_indexscan
-- 
Vik



pgsql-hackers by date:

Previous
From: Thomas Munro
Date:
Subject: DISTINCT with btree skip scan
Next
From: Vik Fearing
Date:
Subject: Re: Aggregate function API versus grouping sets