feat: orm suppert SetConnMaxIdleTime (#5580)
This commit is contained in:
parent
426aad68dc
commit
30278539a6
@ -289,6 +289,7 @@ type alias struct {
|
|||||||
MaxIdleConns int
|
MaxIdleConns int
|
||||||
MaxOpenConns int
|
MaxOpenConns int
|
||||||
ConnMaxLifetime time.Duration
|
ConnMaxLifetime time.Duration
|
||||||
|
ConnMaxIdletime time.Duration
|
||||||
StmtCacheSize int
|
StmtCacheSize int
|
||||||
DB *DB
|
DB *DB
|
||||||
DbBaser dbBaser
|
DbBaser dbBaser
|
||||||
@ -447,6 +448,11 @@ func (al *alias) SetConnMaxLifetime(lifeTime time.Duration) {
|
|||||||
al.DB.DB.SetConnMaxLifetime(lifeTime)
|
al.DB.DB.SetConnMaxLifetime(lifeTime)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (al *alias) SetConnMaxIdleTime(idleTime time.Duration) {
|
||||||
|
al.ConnMaxIdletime = idleTime
|
||||||
|
al.DB.DB.SetConnMaxIdleTime(idleTime)
|
||||||
|
}
|
||||||
|
|
||||||
// AddAliasWthDB add a aliasName for the drivename
|
// AddAliasWthDB add a aliasName for the drivename
|
||||||
func AddAliasWthDB(aliasName, driverName string, db *sql.DB, params ...DBOption) error {
|
func AddAliasWthDB(aliasName, driverName string, db *sql.DB, params ...DBOption) error {
|
||||||
_, err := addAliasWthDB(aliasName, driverName, db, params...)
|
_, err := addAliasWthDB(aliasName, driverName, db, params...)
|
||||||
@ -591,6 +597,13 @@ func ConnMaxLifetime(v time.Duration) DBOption {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// ConnMaxIdletime return a hint about ConnMaxIdletime
|
||||||
|
func ConnMaxIdletime(v time.Duration) DBOption {
|
||||||
|
return func(al *alias) {
|
||||||
|
al.SetConnMaxIdleTime(v)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// MaxStmtCacheSize return a hint about MaxStmtCacheSize
|
// MaxStmtCacheSize return a hint about MaxStmtCacheSize
|
||||||
func MaxStmtCacheSize(v int) DBOption {
|
func MaxStmtCacheSize(v int) DBOption {
|
||||||
return func(al *alias) {
|
return func(al *alias) {
|
||||||
|
|||||||
@ -25,7 +25,8 @@ func TestRegisterDataBase(t *testing.T) {
|
|||||||
err := RegisterDataBase("test-params", DBARGS.Driver, DBARGS.Source,
|
err := RegisterDataBase("test-params", DBARGS.Driver, DBARGS.Source,
|
||||||
MaxIdleConnections(20),
|
MaxIdleConnections(20),
|
||||||
MaxOpenConnections(300),
|
MaxOpenConnections(300),
|
||||||
ConnMaxLifetime(time.Minute))
|
ConnMaxLifetime(time.Minute),
|
||||||
|
ConnMaxIdletime(time.Minute))
|
||||||
assert.Nil(t, err)
|
assert.Nil(t, err)
|
||||||
|
|
||||||
al := getDbAlias("test-params")
|
al := getDbAlias("test-params")
|
||||||
@ -33,6 +34,7 @@ func TestRegisterDataBase(t *testing.T) {
|
|||||||
assert.Equal(t, al.MaxIdleConns, 20)
|
assert.Equal(t, al.MaxIdleConns, 20)
|
||||||
assert.Equal(t, al.MaxOpenConns, 300)
|
assert.Equal(t, al.MaxOpenConns, 300)
|
||||||
assert.Equal(t, al.ConnMaxLifetime, time.Minute)
|
assert.Equal(t, al.ConnMaxLifetime, time.Minute)
|
||||||
|
assert.Equal(t, al.ConnMaxIdletime, time.Minute)
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestRegisterDataBaseMaxStmtCacheSizeNegative1(t *testing.T) {
|
func TestRegisterDataBaseMaxStmtCacheSizeNegative1(t *testing.T) {
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user