Paging
Page Limit and Start
This defines the name of the CGI parameters which should be interpreted as providing server-side page requests. Different RIA frameworks use different defaults. For example, the ExtJS PagingBar widget uses limit
and start
.
Whatever parameters are configured for these values (including defaults) you should make sure that your queries do not attempt to use CGI parameters with the same name in their fetch queries, otherwise you will find data being unexpectedly page-sliced.
If CGI parameters of the specified name are found in the CGI fetch request, then Jarvis will do the following:
- Extract ALL records from the database query.
- Slice out and return only those rows specified by the page parameters. E.g
start = 50
,limit = 25
means return rows with zero-based indexes 50-74. - Return
fetched
as the total number of all rows read from the database query. - Return
returned
as the number of data rows from the sliced page. - Return only the actual data rows from the sliced page.
Fetching all rows on the server does incur overhead between Jarvis and the database. However, it has the advantage that we can tell the client exactly how many rows it is paging among.