Details
-
Bug
-
Status: Closed (View Workflow)
-
Major
-
Resolution: Fixed
-
2.6.2, 2.7.1
-
None
Description
If java.io.NotSerializableException is thrown as a result of incorrect data bind to a prepared statement parameter, JDBC driver closes the connection.
Instead, it should treat java.io.NotSerializableException differently similar to how it is handling MaxAllowedPacketException.
NotSerializableException is a transient exception that can be handled without having to close the connection.
this can only occur when using setObject​(int parameterIndex, Object x) and object type cannot be identified.
Best implementation for this specific case would have to throw an exception immediately, but for compatibility sake with previous version (and at some point compatibility with mysql driver) driver serialize object. Handling NotSerializableException to throw exception without discarding connection seems appropriate.
Be aware that in future 3.x version, serialization won't be handle, throwing an exception immediatly on setObject().