fix: avoid coroutine leaks when the dialecter initialization fails.

This commit is contained in:
Kevin Lin 2023-04-19 18:02:48 +08:00
parent e9637024d3
commit 3ec26ef442

View File

@ -179,6 +179,12 @@ func Open(dialector Dialector, opts ...Option) (db *DB, err error) {
if config.Dialector != nil {
err = config.Dialector.Initialize(db)
if err != nil {
if db, err := db.DB(); err == nil {
_ = db.Close()
}
}
}
preparedStmt := &PreparedStmtDB{