From 4b2a6263547363c43dba9c320c077ad295caaf4d Mon Sep 17 00:00:00 2001 From: Jerry Kurian Date: Thu, 28 Jun 2018 09:45:20 -0400 Subject: add MaxLifetimeconns to server (#9004) Update e.json string names and remove console log reorder variables update db.setConnMaxLifetime to take in *settings.MaxLifetimeConns Add MaxLifetimeConns to test Update variable names like MaxLifetimeConns to ConnMaxLifetimeMilliseconds Update time passed to SetConnMaxLifetime Revert "Update time passed to SetConnMaxLifetime" This reverts commit dc1c1b6d5a6404d4ee11c65d4756c19f9316794f. update en.json Update supplier_test.go and docker.go ConnMaxLifetimeMilliseconds to 3600000 --- store/sqlstore/supplier.go | 3 +-- store/sqlstore/supplier_test.go | 32 ++++++++++++++++++-------------- store/storetest/docker.go | 20 +++++++++++--------- 3 files changed, 30 insertions(+), 25 deletions(-) (limited to 'store') diff --git a/store/sqlstore/supplier.go b/store/sqlstore/supplier.go index 1e6bdcba1..6c49d91fb 100644 --- a/store/sqlstore/supplier.go +++ b/store/sqlstore/supplier.go @@ -28,7 +28,6 @@ import ( const ( INDEX_TYPE_FULL_TEXT = "full_text" INDEX_TYPE_DEFAULT = "default" - MAX_DB_CONN_LIFETIME = 60 DB_PING_ATTEMPTS = 18 DB_PING_TIMEOUT_SECS = 10 ) @@ -218,7 +217,7 @@ func setupConnection(con_type string, dataSource string, settings *model.SqlSett db.SetMaxIdleConns(*settings.MaxIdleConns) db.SetMaxOpenConns(*settings.MaxOpenConns) - db.SetConnMaxLifetime(time.Duration(MAX_DB_CONN_LIFETIME) * time.Minute) + db.SetConnMaxLifetime(time.Duration(*settings.ConnMaxLifetimeMilliseconds) * time.Millisecond) var dbmap *gorp.DbMap diff --git a/store/sqlstore/supplier_test.go b/store/sqlstore/supplier_test.go index 5aacfbe6a..3835bd01f 100644 --- a/store/sqlstore/supplier_test.go +++ b/store/sqlstore/supplier_test.go @@ -73,17 +73,19 @@ func TestGetReplica(t *testing.T) { driverName := model.DATABASE_DRIVER_SQLITE dataSource := ":memory:" maxIdleConns := 1 + connMaxLifetimeMilliseconds := 3600000 maxOpenConns := 1 queryTimeout := 5 settings := model.SqlSettings{ - DriverName: &driverName, - DataSource: &dataSource, - MaxIdleConns: &maxIdleConns, - MaxOpenConns: &maxOpenConns, - QueryTimeout: &queryTimeout, - DataSourceReplicas: testCase.DataSourceReplicas, - DataSourceSearchReplicas: testCase.DataSourceSearchReplicas, + DriverName: &driverName, + DataSource: &dataSource, + MaxIdleConns: &maxIdleConns, + ConnMaxLifetimeMilliseconds: &connMaxLifetimeMilliseconds, + MaxOpenConns: &maxOpenConns, + QueryTimeout: &queryTimeout, + DataSourceReplicas: testCase.DataSourceReplicas, + DataSourceSearchReplicas: testCase.DataSourceSearchReplicas, } supplier := sqlstore.NewSqlSupplier(settings, nil) @@ -209,17 +211,19 @@ func TestGetAllConns(t *testing.T) { driverName := model.DATABASE_DRIVER_SQLITE dataSource := ":memory:" maxIdleConns := 1 + connMaxLifetimeMilliseconds := 3600000 maxOpenConns := 1 queryTimeout := 5 settings := model.SqlSettings{ - DriverName: &driverName, - DataSource: &dataSource, - MaxIdleConns: &maxIdleConns, - MaxOpenConns: &maxOpenConns, - QueryTimeout: &queryTimeout, - DataSourceReplicas: testCase.DataSourceReplicas, - DataSourceSearchReplicas: testCase.DataSourceSearchReplicas, + DriverName: &driverName, + DataSource: &dataSource, + MaxIdleConns: &maxIdleConns, + ConnMaxLifetimeMilliseconds: &connMaxLifetimeMilliseconds, + MaxOpenConns: &maxOpenConns, + QueryTimeout: &queryTimeout, + DataSourceReplicas: testCase.DataSourceReplicas, + DataSourceSearchReplicas: testCase.DataSourceSearchReplicas, } supplier := sqlstore.NewSqlSupplier(settings, nil) diff --git a/store/storetest/docker.go b/store/storetest/docker.go index f3830a6fe..f5b8807d0 100644 --- a/store/storetest/docker.go +++ b/store/storetest/docker.go @@ -76,17 +76,19 @@ func NewPostgreSQLContainer() (*RunningContainer, *model.SqlSettings, error) { func databaseSettings(driver, dataSource string) *model.SqlSettings { settings := &model.SqlSettings{ - DriverName: &driver, - DataSource: &dataSource, - DataSourceReplicas: []string{}, - DataSourceSearchReplicas: []string{}, - MaxIdleConns: new(int), - MaxOpenConns: new(int), - Trace: false, - AtRestEncryptKey: model.NewRandomString(32), - QueryTimeout: new(int), + DriverName: &driver, + DataSource: &dataSource, + DataSourceReplicas: []string{}, + DataSourceSearchReplicas: []string{}, + MaxIdleConns: new(int), + ConnMaxLifetimeMilliseconds: new(int), + MaxOpenConns: new(int), + Trace: false, + AtRestEncryptKey: model.NewRandomString(32), + QueryTimeout: new(int), } *settings.MaxIdleConns = 10 + *settings.ConnMaxLifetimeMilliseconds = 3600000 *settings.MaxOpenConns = 100 *settings.QueryTimeout = 10 return settings -- cgit v1.2.3-1-g7c22