diff --git a/src/database/sql/sql.go b/src/database/sql/sql.go index 0f5bbc01c9ec93..006fb5cb30c711 100644 --- a/src/database/sql/sql.go +++ b/src/database/sql/sql.go @@ -685,7 +685,11 @@ type dsnConnector struct { } func (t dsnConnector) Connect(_ context.Context) (driver.Conn, error) { - return t.driver.Open(t.dsn) + conn, err := t.driver.Open(t.dsn) + if err == driver.ErrBadConn { + return conn, fmt.Errorf("sql: driver Open() returned ErrBadConn. ErrBadConn should only be returned from existing connections") + } + return conn, err } func (t dsnConnector) Driver() driver.Driver {