Implementation limit exceeded

I have a very wired problem that I had been discussed in private with @Christian_Schmitz and till now I didn’t find the solution, so I will appreciate any idea that any of you could give me.

I use FirebirdSQL and MBS SQLPlugin
I have a table with seven varchar fields of 1000 chars maximun size each.
Using a simple query like
SELECT * FROM MyTable WHERE ID = 1
in order to get all the 7 fields of the row 1
and running it in my XOJO App using the MBS SQLPlugin
I get the following error:
block size exceeds implementation restriction
Implementation limit exceeded
SQL error code = -204
Dynamic SQL Error

Running same query with the same database but using SQLMaestro (one of many of the available Firebird Database Managers) I get the expected response, that means a recordset with 1 row with the content of the seven fields.

Changing the query for the following one:
SELECT field1, field2, field3 FROM MyTable WHERE ID = 1
Error disappears and I also get a recordset with 1 row with three fields

But changing to this oder query:
SELECT field1, field2, field3, field4, field5, field6, filed7 FROM MyTable WHERE ID = 1
Error appears again.

I changed the structure of the table in order to find more info to explain this behavior, so I maintained the names and the number of fields of the table but I used field types varchar(100) instead of the original varchar(1000)

With this table structure query runs OK in my Xojo App using MBS SQLPlugin

My intuition tells me that it is not a database problem and that the problem is been generated at Xojo level or at MBS plugin level.

Any idea ?

Thanks !!!
Mariano

1 Like

Thanks. I saw that before, but I still have no idea how Mariano triggers this here.
And no idea what the other app does differently.

Any chance of a CString with a missing \0 terminator anywhere?

Yeah it is weird, 7 CHAR(1000) in UTF8 should be like 28KB :thinking:

Did he sent you the table and the data to verify it is not more than 64KB ?