aboutsummaryrefslogtreecommitdiff
path: root/common/sql.go
diff options
context:
space:
mode:
authorNeil Alexander <neilalexander@users.noreply.github.com>2020-05-01 13:34:53 +0100
committerGitHub <noreply@github.com>2020-05-01 13:34:53 +0100
commitf7cfa758864cc9849ce8b0539895283417b75eb0 (patch)
treefd75b5363172dacd7eab3b47c9a3ab1b7c4721bb /common/sql.go
parent908108c23e47df5fbf0d6629b676e105abd2a564 (diff)
Limit database connections (#980, #564) (#998)
* Limit database connections (#564) - Add new options to the config file database: max_open_conns: 100 max_idle_conns: 2 conn_max_lifetime: -1 - Implement connection parameter setup on the *DB (database/sql) in internal/sqlutil/trace.go:Open() - Propagate the values in the form of DbProperties interface via all the Open() and NewDatabase() functions Signed-off-by: Tomas Jirka <tomas.jirka@email.cz> * Fix wasm builds * Remove file accidentally added from working tree Co-authored-by: Tomas Jirka <tomas.jirka@email.cz>
Diffstat (limited to 'common/sql.go')
-rw-r--r--common/sql.go8
1 files changed, 8 insertions, 0 deletions
diff --git a/common/sql.go b/common/sql.go
index f50a5896..e93ff1c2 100644
--- a/common/sql.go
+++ b/common/sql.go
@@ -18,6 +18,7 @@ import (
"database/sql"
"fmt"
"runtime"
+ "time"
)
// A Transaction is something that can be committed or rolledback.
@@ -99,3 +100,10 @@ func SQLiteDriverName() string {
}
return "sqlite3"
}
+
+// DbProperties functions return properties used by database/sql/DB
+type DbProperties interface {
+ MaxIdleConns() int
+ MaxOpenConns() int
+ ConnMaxLifetime() time.Duration
+}