you are right!
The available languages are stored in a serialized variable in the table tiki-preferences that limits the variable value to 250 characters.
I don't think it makes sense to enlarge the preference value in the db structure.
Is the fix to use something else that "serialize" that uses not so many characters?
A quick fix is to check the value set in the db is not bigger than 250. I will do it
... you can always take away some languages by deleting the directory lang/xx if you dont' want xx (the method is described in http://doc.tikiwiki.org/tiki-index.php?page=Internationalization+Admin