Subject Re: [firebird-support] Block size exceeds implementation restriction exception for varchar(31000)
Author Stefan Heymann
> I want to alter an existing stored procedure with varchar
> parameters having length of 31000. Whenever I try to execute this query I get an exception of

> “Invalid token. Invalid request BLR at offset 102. Implementation limit exceeded. Block size exceeds implementation restriction.”

> How to remove this restriction….is there any way ?

You very probably use UTF8 has the character set. So your 31000
characters become (times 4) 124000 bytes, which is too large. You
can probably shrink your values by using substring() and cast().

When I migrated my app to UTF8 I had to do things like

select cast (substring (opav2.text_value from 1 for 50) as varchar (50)) from ...

in order to get down to sizes that Firebird can handle.