Subject | RE: [IBO] IOBQuery |
---|---|
Author | Jason Wharton |
Post date | 2005-03-08T15:34:59Z |
> Thanks exactly what I wanted to hear.However, this may not be...
Keep in mind you should not have a query open any longer than necessary in
this circumstance. When you have a large dataset and the query has only
fetched a portion of it then a cursor must be maintained on the server to
keep the queue of records ready for when the fetches come. This cursor on
the server does use resources and it also requires the physical transaction
on the server be maintained to preserve the cursor as well, thus you are
forcing a transaction handle to remain issued on the client until that
dataset is either closed or all the records are fetched in full.
What IBO does with a dataset where all records are not fetched is it starts
using idle cycles and fetches in records feeling for the end of the dataset
in hopes that it can keep the OAT to advance and keep up. Thus, you could
actually have it such that your datasets start scooping up lots of virtual
ram and your users may notice these blips when records are being fetched in
if their PC's are low-end machines.
Jason Wharton