Subject Re: Size of Optimiser Block Exceeded - ISC Error Message
Author moorefg
Thanks Helen.

We are using Firebird 1.5 though the issue has been with Firebird
1.0 as
well.

We do not use blob parameters.

Using IB Objects we do use the embedded Select and we have a
suspicion that
this may be an issue.

Otherwise our queries are pretty simple - Mostly Master - Detail.
The most
complex may have links between four tables.

The common embedded select takes the following form.

Select field1,
(Select Surname || ', ' Title || ' ' || Initials from
people
where policy.customerid = customer.customerid) as Member_Name
,Field2
,Field3 etc

Any further assistance would be gratefully received as we have a
great
application spoilt by this issue.

Francis


--- In firebird-support@yahoogroups.com, Helen Borrie <helebor@t...>
wrote:
> At 12:35 AM 13/05/2004 +0000, you wrote:
> >I have been having issues with our application and the Size of
> >Optimiser Block Exceeded error message for quite a while.
> >
> >I have been unable to obtain any pointers as to how to increase
the
> >Optimiser Block or to configure queries in such a way as it is
> >avoided.
> >
> >We have checked the Plan for all queries and have established
> >indexes for all key fields.
> >
> >We are using IBObjects.
>
> The interface is immaterial, since it has to do with the size of
the query
> that the server is being requested to perform. IBO runs queries at
startup
> time to bring the metadata over to the cache but each of those is
typically
> very small and doesn't pass any parameters larger than 31 bytes.
>
> What we really need to know is what database and version you are
using.
>
>
> >Can anyone give some pointers as to what what/where the optimiser
> >block is and how to mitigate this error message.
>
> It is caused by a single query that resolves to more than 64Kb of
blr
> code. Given that blr is more compact than SQL, it's signalling a
pretty
> massive query. Can you be more precise about the conditions under
which it
> happens?
>
> Where you are going to "overflow" the 64 Kb limit very easily is
where you
> are passing very large strings in replaceable parameters. For
example,
> passing huge strings as inputs to text blobs. If this is your
scenario,
> your solution with IBO is simple. Don't pass huge strings to
blobs. IBO
> has stellar support for passing blob parameters.
>
> /heLen
>
>
>
>
>
> >Thank you
> >
> >Francis Moore
> >
> >
> >
> >
> >
> >Yahoo! Groups Links
> >
> >
> >
> >