Обсуждение: Index-only scans with btree_gist

Поиск
Список
Период
Сортировка

Index-only scans with btree_gist

От
Heikki Linnakangas
Дата:
I've pushed Anastasia's patch to support index-only scans with GiST, and
it's time to add opclasses support for all the opclasses that are not
lossy. I think at least all the btree_gist opclasses need to be
supported, it would be pretty surprising if they didn't support
index-only scans, while some more complex opclasses did.

Attached is a WIP patch for that. It covers all the varlen types that
btree_gist supports, and int2, int4 and oid. The rest of the fixed-width
types should be just a matter of copy-pasting. I'll continue adding
those, but wanted to let people know I'm working on this.

- Heikki

Вложения

Re: Index-only scans with btree_gist

От
Andreas Karlsson
Дата:
On 03/26/2015 10:31 PM, Heikki Linnakangas wrote:
> I've pushed Anastasia's patch to support index-only scans with GiST, and
> it's time to add opclasses support for all the opclasses that are not
> lossy. I think at least all the btree_gist opclasses need to be
> supported, it would be pretty surprising if they didn't support
> index-only scans, while some more complex opclasses did.
>
> Attached is a WIP patch for that. It covers all the varlen types that
> btree_gist supports, and int2, int4 and oid. The rest of the fixed-width
> types should be just a matter of copy-pasting. I'll continue adding
> those, but wanted to let people know I'm working on this.

Would it also be worth doing the same for the inet_ops class for
inet/cidr? I have hacked a quick WIP patch which I believe should work,
but have not looked into the index only scan code enough to be sure.

--
Andreas Karlsson

Вложения

Re: Index-only scans with btree_gist

От
Heikki Linnakangas
Дата:
On 03/28/2015 01:14 AM, Andreas Karlsson wrote:
> On 03/26/2015 10:31 PM, Heikki Linnakangas wrote:
>> I've pushed Anastasia's patch to support index-only scans with GiST, and
>> it's time to add opclasses support for all the opclasses that are not
>> lossy. I think at least all the btree_gist opclasses need to be
>> supported, it would be pretty surprising if they didn't support
>> index-only scans, while some more complex opclasses did.
>>
>> Attached is a WIP patch for that. It covers all the varlen types that
>> btree_gist supports, and int2, int4 and oid. The rest of the fixed-width
>> types should be just a matter of copy-pasting. I'll continue adding
>> those, but wanted to let people know I'm working on this.
>
> Would it also be worth doing the same for the inet_ops class for
> inet/cidr? I have hacked a quick WIP patch which I believe should work,
> but have not looked into the index only scan code enough to be sure.

Looks good to me. Committed, thanks.

- Heikki



Re: Index-only scans with btree_gist

От
Andreas Karlsson
Дата:
On 03/28/2015 02:12 PM, Heikki Linnakangas wrote:
> Looks good to me. Committed, thanks.

Thanks! Do you know if it is possible to add index-only scan support to 
range indexes? I have never looked at those and do not know if they are 
lossy.

Andreas



Re: Index-only scans with btree_gist

От
Andreas Karlsson
Дата:
On 03/28/2015 09:36 PM, Andreas Karlsson wrote:
> Thanks! Do you know if it is possible to add index-only scan support to
> range indexes? I have never looked at those and do not know if they are
> lossy.

Seems like range types are not compressed at all so implementing
index-only scans was trivial. A patch is attached.

--
Andreas Karlsson

Вложения

Re: Index-only scans with btree_gist

От
Andreas Karlsson
Дата:
On 03/29/2015 03:25 AM, Andreas Karlsson wrote:
> On 03/28/2015 09:36 PM, Andreas Karlsson wrote:
>> Thanks! Do you know if it is possible to add index-only scan support to
>> range indexes? I have never looked at those and do not know if they are
>> lossy.
>
> Seems like range types are not compressed at all so implementing
> index-only scans was trivial. A patch is attached.

Noticed a couple of typos, so to avoid having them sneak into the code
here is a version without them.

--
Andreas Karlsson

Вложения

Re: Index-only scans with btree_gist

От
Heikki Linnakangas
Дата:
On 03/29/2015 04:30 AM, Andreas Karlsson wrote:
> On 03/29/2015 03:25 AM, Andreas Karlsson wrote:
>> On 03/28/2015 09:36 PM, Andreas Karlsson wrote:
>>> Thanks! Do you know if it is possible to add index-only scan support to
>>> range indexes? I have never looked at those and do not know if they are
>>> lossy.
>>
>> Seems like range types are not compressed at all so implementing
>> index-only scans was trivial. A patch is attached.
>
> Noticed a couple of typos, so to avoid having them sneak into the code
> here is a version without them.

Thanks, pushed.

- Heikki