Hi, after using tr:table since a long time for rendering paged datasets, I'm lost at understanding how the collection model works. I use my own collection model, and I recently discovered that for each page methods setRowIndex/isRowAvailable are called to check for row existence of future pages. Nearly 30 calls are performed this way to check rows (_MAX_VISIBLE_OPTIONS row blocks). While picking up rows from a database, this behavior turned out to be a true disaster in terms of performance. My strategy was to load pages of records around each setRowIndex: e.g. assuming rowsPerPage = 10, I cache 10 rows around the requested rowIndex. By after the above requests, is appears that the entire record set is loaded upon SelectRangeChoiceBarRenderer needs just to setup paging widgets ! The issue here is that the collection implementation cannot discriminate whether setRowIndex is called to fill in the choice bar or to render row contents, otherwise in the former case I might load single rows, not pages.
Any help is appreciated.

-- Renzo


Reply via email to