Subject Slow blob retrieval over network
Author Don Schoeman
Hi Everyone,

I have a friend who is trying to load some binary data from a blob field
in a Firebird 2.0 DB. Here is the line of code that causes a problem:

(RB_Query.FieldByName('DATA_FIELD') as
TIB_ColumnBinary).AssignTo(RB_Stream);

He says that when accessing a local DB he gets around 2000 rows per
second but when pulling this over a 100MB LAN from a different server he
only gets around 1.5 rows per second, and the problem is at the above
mentioned line.

The blob consists of about 450 bytes and is created as a SUBTYPE 0 blob.
He is using Delphi 7 and an old version of IBO (version 4.3.Aa).

Any ideas would be greatly appreciated as I ran out of ideas on how to
help him, i.e., disabling the cursor through a TIB_SessionProps, not to
use TIB_Query.RecordCount together with a FOR loop, not using
Application.ProcessMessages within the loop, etc.

Kind Regards,
Don Schoeman