Performance regression when upgrading go-sql-driver/mysql to v1.6.0
We see:
- Higher CPU usage on our database
- Higher latency for certain SA RPCs, particularly for those that make multiple DB queries.
We suspect this commit in go-sql-driver/mysql v1.6.0 as the "root" cause: https://github.com/go-sql-driver/mysql/pull/1095
Or possibly this one: https://github.com/go-sql-driver/mysql/pull/1174
We have now upgraded to go-sql-driver/mysql v1.7.0 and have not observed a similar performance regression. We are not sure whether this is due to changes in v1.7.0 or due to our introduction of proxysql since the last time this upgrade was attempted. Regardless, this bug can be closed.
We believe we have solved the underlying issues, and this is now a prerequisite for https://github.com/letsencrypt/boulder/issues/7872, so we're going to pick this up again.