[ 
https://issues.apache.org/jira/browse/TAP5-902?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14048295#comment-14048295
 ] 

Howard M. Lewis Ship commented on TAP5-902:
-------------------------------------------

The issue is that prepare() needs to know the number of available rows in order 
to calculate values for startIndex and endIndex.  The two queries issue is 
unavoidable if we want to handle very large result sets.  

I'm sure a smart implementation could, for small result sets, do a single 
query, then provide a subset of the results.

> GridDataSource does not allow performing less than 2 queries if returning 
> results
> ---------------------------------------------------------------------------------
>
>                 Key: TAP5-902
>                 URL: https://issues.apache.org/jira/browse/TAP5-902
>             Project: Tapestry 5
>          Issue Type: Improvement
>          Components: tapestry-core
>    Affects Versions: 5.1.0.5
>            Reporter: Dan Adams
>            Assignee: Howard M. Lewis Ship
>
> By having getAvailableRows() and prepare() separate, any implementation is 
> forced to perform 2 queries. Many systems allow getting the results of a 
> query and the total count in one query so that you don't have to perform 2 
> queries. Getting around this requires some pretty gross hacks (unless you 
> just don't use grid at all which is unfortunate).



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to