[progress Communities] [progress Openedge Abl] Forum Post: Re: Oe 11.5.1: Telerik...

  • Thread starter Thread starter Laura Stern
  • Start date Start date
Status
Not open for further replies.
L

Laura Stern

Guest
Re I/O on the db table after scrolling, etc. Yes, sorry, my last sentence was probably not accurate. I believe the control doesn't cache records. It keeps asking the BindingSource for data each time it wants data from a row, even if it has read that row before. This is typical of how all controls work with the BindingSource. The control really can't cache all the data if the # of records is large. Yes, there could be complicated caching schemes, but that also adds time and complexity and they've had no reason to do that thus far. Of course things are much faster when the data is stored in a .NET DataTable. That is basically just a 2-dimensional array. On the other hand, when accessing data from a Progress DB/TT, first of all it is random access. We are not going next, next, next. We are being asked to get data from a particular row, so we first need to position to that row in the query. Then we fetch the data (which may require I/O) and that data then needs to get marshalled from unmanaged to managed code. I am sort of surprised however that it is so slow with only 20,000 records (substantial, but not huge). But with sorting, the same record tends to get read many, many times, depending of course on how many swaps and compares it takes to do the sort. In any case, we are aware of the issue. I know you already have a case open with Telerik. But even if we can improve it, it will never be as fast as binding to a .NET DataTable.

Continue reading...
 
Status
Not open for further replies.
Back
Top