Subject Re: [IBO] Speed up reading every row in an TIB_Cursor
Author Andreas Kanthak
Hi,

> Why do you need to bypass the whole purpose of IBOjects?
>
> The whole point of using IBO is that it internally buffers
> all of the information, and only loads those records
> required to display at that time.

This to explain would need a lot of words. Just to give you a clue:
This (the use of Interbase and IBO) is the first step to enhance
a part of our program. Since we are useing in this first step Interbase/Ibo "only"
as engine to replace a file-based class structure, its therefore easier to
use our old mechanism as to redesign all to use it with visible controls etc. (this avoiding to
redesign 30% of our software for this first shot).

> The fast fix would be to set AutoFetchAll on the cursor,
> then you are working with all the data already downloaded to
> your machine, but I would be looking to remove the need to
> do that at all!

AutoFetchAll seems not to work, when the IBO-Controls are used within a thread.
(The thread owns a TIB_Sessios, which itselfs owns a TIB_Connection, a TIB_Transaction and
a TIB_Cursor). The software seems to hang after a few rows are fecthed.

When I read in other Threads ([IBO] Newbie Question -- Inserts slow?),
that some are running updates/inserts with more then 320K records per minute,
which results in 5333 records per second (or ~43000 records in 8 seconds, which is my overall time),
then I see I am far away from that by reading (!) 3250 records a second (26000 records in 8 seconds overall).
So there is maybe something, i am doing wrong.

Any help with that?

Best wishes.