0
votes

I am working on the application where which we need to migrate from old notes application to xpages. So from the old application we have more than 2,00,000 Documents.

So in an xpages application we are loading these list of documents with the help of repeat control, So is there any optimized way to load data faster because loading this much amount of Documents take more than 5 min to load.

Some kind of sugestions would be really helpful.

The formula for the repeat control from which I loads data is from page data source dominoView. The page datasource is :>

enter image description here

And this data source is used in a repeat control to load dynamically as in image.

enter image description here

We also have pager and limited rows mentioned to repeat.

3
I would definitely avoid loading that many documents at a time if you can. What’s the use case for having 200,000 documents on screen at once? You can add a pager control to the repeat to page the documents up at say 30 at a time.Rob Mason
Yes you are right but we already have a pager with limit of 20 entries , but dont know it loads all the document at a time. And then also pager occurs.Ajit Hogade
I think the problem is not the repeat itself, but the way you get the collection. What is your repeat "value" formula?Frantisek Kossuth
Ok , i quicky edit my question and post some more details on the repeat formula . Please have a look and if its all going correct or not please.Ajit Hogade
any computation in the view selection formula and columns? avoid any computation at runtime. I mostly use repeat controls with arraylists of java objects or javasjonobjects then I can just inject the object values in the repeat control items. I do not have so large record sets but tens of thousands documents right fine, even on mobile via telephone provider.Patrick Kwinten

3 Answers

1
votes

You need to redesign your approach. For starters don't try to load documents, but load viewEntries. Scanning through a view is substantially faster than opening each document.

Secondly: I'd suggest you go for a client side (non repeat control) based approach: Use one of the datagrids that feed on Json with virtual loading. That should make a better user experience.

1
votes

The answer is in your screenshot: it shows that row's styleClass property calls rowData.getDocument(). That' a big no-no, especially if you use this trick in many places of the repeat content.

Update your view and put anything useful for page rendering to view's columns. That's what @stwissel said, anyway.

0
votes

You probably want to rethink your design. How can a user find something in 2M docs? Maybe put some other filters or searching in front of the repeat?