Re: GIST optimization to limit calls to operator on sub nodes

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Emre Hasegeli <emre(at)hasegeli(dot)com>
Cc: Pujol Mathieu <mathieu(dot)pujol(at)realfusio(dot)com>, PostgreSQL Performance <pgsql-performance(at)postgresql(dot)org>
Subject: Re: GIST optimization to limit calls to operator on sub nodes
Date: 2014-06-29 20:30:22
Message-ID: 4113.1404073822@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-performance

Emre Hasegeli <emre(at)hasegeli(dot)com> writes:
> Pujol Mathieu <mathieu(dot)pujol(at)realfusio(dot)com>:
>> I made my own index to handle specific data and operators. It works
>> pretty fine but I wonder if it was possible to optimize it.
>> When I run my operator on a GIST node (in the method
>> gist_range_consistent) it returns "NotConsistent" /
>> "MaybeConsistent" / "FullyConsistent".
>> NotConsistent -> means that all subnodes could be ignored,
>> gist_range_consistent return false
>> MaybeConsistent -> means that at least one subnode/leaf will be
>> consistent, gist_range_consistent return true
>> FullyConsistent -> means that all subnodes/leaves will be
>> consistent, gist_range_consistent return true
>>
>> So like with the "recheck flag" I would like to know if there is a
>> way to notify postgres that it is not necessary to rerun my operator
>> on subnodes, to speedup the search.

> I do not think it is possible at the moment. The GiST framework can
> be extended to support this use case. I am not sure about the
> speedup. Most of the consistent functions do not seem very expensive
> compared to other operations of the GiST framework. I would be
> happy to test it, if you would implement.

I don't actually understand what's being requested here that the
NotConsistent case doesn't already cover.

regards, tom lane

In response to

Responses

Browse pgsql-performance by date

  From Date Subject
Next Message Heikki Linnakangas 2014-06-30 07:05:48 Re: Postgres Replaying WAL slowly
Previous Message Emre Hasegeli 2014-06-29 20:14:19 Re: GIST optimization to limit calls to operator on sub nodes