Data question for large lists with pagination. Specifically from an Endpoints WCF service broker based SmartObject populating a List view with pagination enabled.
How are items stored or queried for large (thousands of items) lists? Are all items queried at once and stored in memory, is the K2 database utilized for pagination, or is all the data pushed to the client and pagination is handled client side?
Data Retrieval Mechanisms
When the data sets are retrieved, the following applies:
The data returned is not stored by the K2 Server, but for all SmartObjects the entire result returned is in SQL Server. The results are returned via a data provider in predefined pages. The paging is determined by the code implementation. For native integrated services (SQL Service, SmartBox, Workflow) the results are already in SQL Server and a SQL query is sent to the broker to retrieve the results.
Paging is not implemented on the ServiceObject side but is leveraged from the SmartObject. The final result set is always in SQL Server and for non-native integrated services the results (DataTable) are bulk inserted into a temporary table located in SQL Server.