improve SQL provider availability check adding a timeout

This commit is contained in:
Nicola Murino
2019-09-14 16:18:31 +02:00
parent 29aadbf3e3
commit 018b10808d
3 changed files with 8 additions and 6 deletions

View File

@@ -1,6 +1,7 @@
package dataprovider
import (
"context"
"database/sql"
"encoding/json"
"errors"
@@ -51,7 +52,9 @@ func sqlCommonValidateUserAndPubKey(username string, pubKey string, dbHandle *sq
}
func sqlCommonCheckAvailability(dbHandle *sql.DB) error {
return dbHandle.Ping()
ctx, cancel := context.WithTimeout(context.Background(), 10*time.Second)
defer cancel()
return dbHandle.PingContext(ctx)
}
func sqlCommonGetUserByID(ID int64, dbHandle *sql.DB) (User, error) {