Re: Searching GIN-index (FTS) and sort by timestamp-column

From: Evgeniy Shishkin <itparanoia(at)gmail(dot)com>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: Andreas Joseph Krogh <andreas(at)visena(dot)com>, pgsql-performance <pgsql-performance(at)postgresql(dot)org>
Subject: Re: Searching GIN-index (FTS) and sort by timestamp-column
Date: 2016-03-16 15:04:08
Message-ID: 9D98454D-D4E5-457F-8F5C-F49526BFA9FA@gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-performance


> On 16 Mar 2016, at 17:52, Evgeniy Shishkin <itparanoia(at)gmail(dot)com> wrote:
>
>
>> On 16 Mar 2016, at 16:37, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
>>
>> Andreas Joseph Krogh <andreas(at)visena(dot)com> writes:
>>> 1. Why isnt' folder_id part of the index-cond?
>>
>> Because a GIN index is useless for sorting.
>
> I don't see how gin inability to return sorted data relates to index condition.
> In fact i tried to reproduce the example,
> and if i change folder_id to int from bigint, then index condition with folder_id is used
>
> Index Cond: ((fts_all @@ '''hi'''::tsquery) AND (folder_id = 1))
>

Looks like documentation http://www.postgresql.org/docs/9.5/static/btree-gin.html
is lying about supporting int8 type

>
>>
>>> 2. Is there a way to make it use the (same) index to sort by
>>> received_timestamp?
>>
>> No.
>>
>>> 3. Using a GIN-index, is there a way to use the index at all for sorting?
>>
>> No.
>>
>>> 4. It doesn't seem like ts_rank uses the index for sorting either.
>>
>> Same reason.
>>
>> regards, tom lane
>>
>>
>> --
>> Sent via pgsql-performance mailing list (pgsql-performance(at)postgresql(dot)org)
>> To make changes to your subscription:
>> http://www.postgresql.org/mailpref/pgsql-performance
>

In response to

Responses

Browse pgsql-performance by date

  From Date Subject
Next Message Evgeniy Shishkin 2016-03-16 15:07:56 Re: Searching GIN-index (FTS) and sort by timestamp-column
Previous Message Evgeniy Shishkin 2016-03-16 14:52:40 Re: Searching GIN-index (FTS) and sort by timestamp-column