May I give you a general suggestion?
By default, MySQL/MariaDB tends to hide problems. Your case is an obvious example: as far as I understand your application doesn't check for warnings, everything seems to work, but data are truncated and dynamic columns are invalid.
I generally suggest to use a strict SQL_MODE. In your case, with STRICT_TRANS_TABLES and/or STRICT_ALL_TABLES, the insertion would fail with an error - and you would notice the problem. And even if your applications doesn't report the error, you could find it using SQL_ERRLOG.
Regards
Federico
--------------------------------------------
Dom 1/3/15, Tom Worster