Subject Re: [IBO] IB_Connection.Params and prepare-Speed
Author Geoff Worboys
> Try a quick experiment in the code.
> In the IBA_Connection.IMP file put a line of code for
> each of the stringlists created setting sorted to true.
> I believe if they are sorted then it will use the binary
> search when looking up property values.

Just to add my 2c to this...

You may not remember Jason, but a very long time ago I actually did an
experiment with extending TIB_StringList to use a special hash value
comparison. (Hash calculated just once, and can be used many times.)

I have quite extensive Fields* lists and thought this might improve
prepare times. As it turned out the effect was detectable but not
significant. IOW I dont think these lists are actually a significant
part of the delay. Other factors, such as how often the lists are
referred to, the delays waiting for the server responses and the sheer
volume of code needing to be executed to complete a prepare are more
likely problems.

I have managed to make my application acceptable by reducing the
number of prepares that have to be openned at one time...

* I setup the forms with a pagecontrol, in general each page
relates to only a few queries. Those queries are only prepared and
activated when the page is made visible.

* I use my TIB_LookupEnh control exclusively. This control is
setup so that it only activates the lookup dataset when actually
needed to perform a lookup. This has significant impact both on
opening a form with many lookups AND when scrolling the list.

* I check problem forms for prepares that appear to be taking too
long. Sometimes it can help to rearrange or split joined datasets
into separate queries.


Geoff Worboys
Telesis Computing