Earlier today I setup a new dev server for our project in a newer version of MYSQL and PHP (5.7 compared to 5.6 for mysql, 5.6 over 5.5 for php) I've discovered something odd.
Some of our inserts (through Kohana's ORM system) don't have entries for all the NOT NULL columns without default values. This strangely doesn't cause an error in the current development server, the row column is populated with an empty string. On the other hand, in the new server it causes an error (predictably).
The codebase is the exact same, using the Kohana framework version 3. Just to be clear I'm a new member of the team, I was in no way involved in the making of this.
Not ideal, but the entire application was developed without using strict mode on mysql. This makes it so omitted not null columns are given a default value like an empty string.