for Config.cacheStore store PreparedStmtDB key (#4149)

This commit is contained in:
heige 2021-03-07 10:57:22 +08:00 committed by GitHub
parent 495ec4bd87
commit bc347758e5
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 5 additions and 2 deletions

View File

@ -12,6 +12,9 @@ import (
"gorm.io/gorm/schema" "gorm.io/gorm/schema"
) )
// for Config.cacheStore store PreparedStmtDB key
const preparedStmtDBKey = "preparedStmt"
// Config GORM config // Config GORM config
type Config struct { type Config struct {
// GORM perform single create, update, delete operations in transactions by default to ensure database data integrity // GORM perform single create, update, delete operations in transactions by default to ensure database data integrity
@ -161,7 +164,7 @@ func Open(dialector Dialector, opts ...Option) (db *DB, err error) {
Mux: &sync.RWMutex{}, Mux: &sync.RWMutex{},
PreparedSQL: make([]string, 0, 100), PreparedSQL: make([]string, 0, 100),
} }
db.cacheStore.Store("preparedStmt", preparedStmt) db.cacheStore.Store(preparedStmtDBKey, preparedStmt)
if config.PrepareStmt { if config.PrepareStmt {
db.ConnPool = preparedStmt db.ConnPool = preparedStmt
@ -224,7 +227,7 @@ func (db *DB) Session(config *Session) *DB {
} }
if config.PrepareStmt { if config.PrepareStmt {
if v, ok := db.cacheStore.Load("preparedStmt"); ok { if v, ok := db.cacheStore.Load(preparedStmtDBKey); ok {
preparedStmt := v.(*PreparedStmtDB) preparedStmt := v.(*PreparedStmtDB)
tx.Statement.ConnPool = &PreparedStmtDB{ tx.Statement.ConnPool = &PreparedStmtDB{
ConnPool: db.Config.ConnPool, ConnPool: db.Config.ConnPool,