From 5f300756b8876bb9a4bdbec694330d73ff34782c Mon Sep 17 00:00:00 2001 From: george Date: Sun, 10 Apr 2022 02:22:26 +0800 Subject: [PATCH] update --- gorm.go | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/gorm.go b/gorm.go index 81a4768f..558247aa 100644 --- a/gorm.go +++ b/gorm.go @@ -210,13 +210,20 @@ func Open(dialector Dialector, opts ...Option) (db *DB, err error) { } func (db *DB) Close() error { - sdb, isSdb := db.ConnPool.(*sql.DB) - stmt, isStmt := db.ConnPool.(*PreparedStmtDB) + + db.cacheStore.Delete(preparedStmtDBKey) + return close(db.ConnPool) + +} + +func close(cp ConnPool) error { + sdb, isSdb := cp.(*sql.DB) + stmt, isStmt := cp.(*PreparedStmtDB) + switch { case isSdb: return sdb.Close() case isStmt: - db.cacheStore.Delete(preparedStmtDBKey) for _, v := range stmt.Stmts { v.Close() } @@ -227,7 +234,6 @@ func (db *DB) Close() error { return sdb.Close() } return nil - } // Session create new db session