Implementation limit exceeded. Block size exceeds implementation restriction


This means that your SQL statement has breached the limit for SQL statement size. The limit is 64kB for statement text, 64kB for compiled BLR (see FAQ #187 to learn what BLR is) and 48kB for execution plan.

If your statement text size is under 64kB, there are some things to look for: If you use IN try converting it to EXISTS as IN gets converted to a lot of OR statements internally. If you are joining views who are UNIONs, plan could be huge and complex - try writing views that cover only those tables you really need for this particular query. If nothing helps, perhaps you can break it into several queries, or write a stored procedure to do some part of the job.


Do you find this FAQ incorrect or incomplete? Please e-mail us what needs to be changed. To ensure quality, each change is checked by our editors (and often tested on live Firebird databases), before it enters the main FAQ database. If you desire so, the changes will be credited to your name. To learn more, visit our add content page.

If you are a commercial tool maker and your tool features a great way to handle the issue written about in this FAQ, please check out our advertisement page.



All contents are copyright © 2007-2016 FirebirdFAQ.org unless otherwise stated in the text.


Links   Firebird   News   FlameRobin   Home Inventory powered by FB  
Add content   Advertise   About  

Categories
 Newbies
 SQL
 Installation and setup
 Backup and restore
 Performance
 Security
 Connectivity and API
 HOWTOs
 Errors and error codes
 Miscellaneous