Add write mutex and max connection lifetime (#1211)

This commit is contained in:
WithoutPants
2021-03-18 21:45:01 +11:00
committed by GitHub
parent 215737d6c5
commit d93011a828
2 changed files with 7 additions and 5 deletions

View File

@@ -5,6 +5,7 @@ import (
"errors"
"fmt"
"os"
"sync"
"time"
"github.com/fvbommel/sortorder"
@@ -20,6 +21,7 @@ import (
)
var DB *sqlx.DB
var WriteMu *sync.Mutex
var dbPath string
var appSchemaVersion uint = 19
var databaseSchemaVersion uint
@@ -63,6 +65,7 @@ func Initialize(databasePath string) bool {
const disableForeignKeys = false
DB = open(databasePath, disableForeignKeys)
WriteMu = &sync.Mutex{}
return false
}
@@ -77,6 +80,7 @@ func open(databasePath string, disableForeignKeys bool) *sqlx.DB {
conn, err := sqlx.Open(sqlite3Driver, url)
conn.SetMaxOpenConns(25)
conn.SetMaxIdleConns(4)
conn.SetConnMaxLifetime(30 * time.Second)
if err != nil {
logger.Fatalf("db.Open(): %q\n", err)
}