When inserting a new row using a PreparedStatement into a table with an auto incremented ID, the connector returns a negative ID if the actual generated ID is greater than 32767.
I've nailed this down to this method: org.mariadb.jdbc.internal.util.buffer.Buffer.getLengthEncodedBinary()
In version 1.3.7, where this still works, the method contains this snippet:
In version 1.4.2, where it's broken, it looks like this:
I think this bug is insanely critical.