sorry for this monologue-thread, but...

Nico Sabbi wrote:

[snip]

If it can help,  seems that the largest value I can store in a blob field
without triggering that error is 192 characters long.


I just read the restrictions on Innodb tables, and I'm not convinced
that what is going on is expected.
Quoting from here http://dev.mysql.com/doc/mysql/en/innodb-restrictions.html

#

The maximum row length, except for |VARCHAR|, |BLOB| and |TEXT| columns, is slightly less than half of a database page. That is, the maximum row length is about 8000 bytes. |LONGBLOB| and |LONGTEXT| columns must be less than 4GB, and the total row length, including also |BLOB| and |TEXT| columns, must be less than 4GB. |InnoDB| stores the first 768 bytes of a |VARCHAR|, |BLOB|, or |TEXT| column in the row, and the rest into separate pages.

#


that clearly states that varchar(255) fields should be excluded from the restrictions, shouldn't they? Yet, my tables is made of 104 varchar(255) fields (I know it's bad, but unfortunately it's a structure I can't change), a dozen blobs and 8 other fields (date and int),
so it seems that Innodb _is_ including varchar() fields in the restriction.

If needed I can provide the whole table structure.


BTW, why introducing a restriction that wasn't present in 4.0 ?

Thanks,
Nico



--
Nico Sabbi - Officine Digitali - Bologna
Tel. 051 - 4187565



--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:    http://lists.mysql.com/[EMAIL PROTECTED]

Reply via email to