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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> On 16 Mar 2016, at 18:04, Evgeniy Shishkin <itparanoia@xxxxxxxxx> wrote:
> 
>> 
>> On 16 Mar 2016, at 17:52, Evgeniy Shishkin <itparanoia@xxxxxxxxx> wrote:
>> 
>> 
>>> On 16 Mar 2016, at 16:37, Tom Lane <tgl@xxxxxxxxxxxxx> wrote:
>>> 
>>> Andreas Joseph Krogh <andreas@xxxxxxxxxx> 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
> 

Uh, it works if i cast to bigint explicitly
      WHERE  del.fts_all @@ to_tsquery('simple', 'hi')
      AND del.folder_id = 1::bigint;
results in 
         Index Cond: ((folder_id = '1'::bigint) AND (fts_all @@ '''hi'''::tsquery))

>> 
>>> 
>>>> 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@xxxxxxxxxxxxxx)
>>> To make changes to your subscription:
>>> http://www.postgresql.org/mailpref/pgsql-performance



-- 
Sent via pgsql-performance mailing list (pgsql-performance@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-performance




[Postgresql General]     [Postgresql PHP]     [PHP Users]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Yosemite]

  Powered by Linux