I saw some regression in 1.2 Spark SQL due to our broadcast change which requires significantly more serialization. It would be good if when the JDBC server is running it automatically sets the serializer to Kryo and disables Kryo reference tracking.
Doing this while still honoring a user-provided serializer is tricky. I think the best way is to expose an internal (private) constructor to SparkConf that takes a set of lowest-precedence defaults. Those could get merged in with the lowest precedence before the config file is read.