Subject | Re: [firebird-support] What implementation restriction was exceeded exactly? |
---|---|
Author | Ann Harrison |
Post date | 2011-08-31T14:36:13Z |
On Wed, Aug 31, 2011 at 9:19 AM, Kjell Rilbe <kjell.rilbe@...> wrote:
that exceeds the size allowed by the internal block allocation code - 32K, I
think. The specific block type is almost certainly a CSB, compiler scratch
block. And, in response to your second question, there isn't a fixed
number of conditions permitted - the types and sizes of the terms matter,
and maybe also the lengths of the names.
The workaround for your particular query is to build up IN lists and OR them
together.
Good luck
Ann
> I know the SQL below is somewhat silly, but ignoring that, why did itAs the error says, your query produces an intermediate compilation block
> give me this error:
>
> Error executing query: Dynamic SQL Error
> SQL error code = -204
> Implementation limit exceeded
> block size exceeds implementation restriction
>
> The SQL is "only" about 7 kbyte and the "or-list" contains far fewer
> than the 1499 items that's maximum for "in-lists". So what
> implementation restriction was exceeded, exactly?
that exceeds the size allowed by the internal block allocation code - 32K, I
think. The specific block type is almost certainly a CSB, compiler scratch
block. And, in response to your second question, there isn't a fixed
number of conditions permitted - the types and sizes of the terms matter,
and maybe also the lengths of the names.
The workaround for your particular query is to build up IN lists and OR them
together.
Good luck
Ann
>[Non-text portions of this message have been removed]