[ 
https://issues.apache.org/jira/browse/IGNITE-12189?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Yuriy Shuliha  updated IGNITE-12189:
------------------------------------
    Release Note: 
Added 'limit' as parameter for TextQuery constructor and builder.
Use 'limit' to set response size to avoid fetching of all the documents that 
match the query string. If its value is 0 or less, considered to be no limit.
Existing constructors without 'limit' parameter did not change functionality 
and create TextQuery object with 'limit' = 0. 

> Implement correct limit for TextQuery
> -------------------------------------
>
>                 Key: IGNITE-12189
>                 URL: https://issues.apache.org/jira/browse/IGNITE-12189
>             Project: Ignite
>          Issue Type: Improvement
>          Components: general
>            Reporter: Yuriy Shuliha 
>            Assignee: Yuriy Shuliha 
>            Priority: Major
>             Fix For: 2.8
>
>          Time Spent: 11h
>  Remaining Estimate: 0h
>
> PROBLEM
> For now each server-node returns all response records to the client-node and 
> it may contain ~thousands, ~hundred thousands records.
>  Event if we need only first 10-100. Again, all the results are added to 
> queue in _*GridCacheQueryFutureAdapter*_ in arbitrary order by pages.
>  There are no any means to deliver deterministic result.
> SOLUTION
>  Implement _*limit*_ as parameter for _*TextQuery*_ and 
> _*GridCacheQueryRequest*_ 
>  It should be passed as limit  parameter in Lucene's  
> _*IndexSearcher.search()*_ in _*GridLuceneIndex*_.
> For distributed queries _*limit*_ will also trim response queue when merging 
> results.
> Type: long
>  Special value: : 0 -> No limit (Integer.MAX_VALUE);



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to