fix(db): use a normal pgx.Conn first
This commit is contained in:
@ -37,6 +37,7 @@ import (
|
||||
"git.vinchent.xyz/vinchent/howmuch/internal/pkg/log"
|
||||
"git.vinchent.xyz/vinchent/howmuch/pkg/version/verflag"
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/jackc/pgx/v5"
|
||||
"github.com/spf13/cobra"
|
||||
"github.com/spf13/viper"
|
||||
"golang.org/x/net/context"
|
||||
@ -105,24 +106,27 @@ func run() error {
|
||||
}
|
||||
|
||||
// Init DB
|
||||
dbPool, err := datastore.NewDB(
|
||||
fmt.Sprintf(
|
||||
"host=%s port=%d dbname=%s user=%s password=%s sslmode=%s",
|
||||
viper.GetString("db.host"),
|
||||
viper.GetInt("db.port"),
|
||||
viper.GetString("db.database"),
|
||||
viper.GetString("db.username"),
|
||||
viper.GetString("db.password"),
|
||||
viper.GetString("db.sslmode"),
|
||||
),
|
||||
dbConfString := fmt.Sprintf(
|
||||
"host=%s port=%d dbname=%s user=%s password=%s sslmode=%s",
|
||||
viper.GetString("db.host"),
|
||||
viper.GetInt("db.port"),
|
||||
viper.GetString("db.database"),
|
||||
viper.GetString("db.username"),
|
||||
viper.GetString("db.password"),
|
||||
viper.GetString("db.sslmode"),
|
||||
)
|
||||
dbConf, err := pgx.ParseConfig(dbConfString)
|
||||
if err != nil {
|
||||
log.FatalLog("DB connection config failure", "err", err, "cfg string", dbConfString)
|
||||
}
|
||||
dbConn, err := datastore.NewDB(dbConf)
|
||||
if err != nil {
|
||||
log.FatalLog("DB connection failure", "err", err)
|
||||
}
|
||||
defer dbPool.Close()
|
||||
defer dbConn.Close(context.Background())
|
||||
|
||||
// Register the core service
|
||||
r := registry.NewRegistry(dbPool)
|
||||
r := registry.NewRegistry(dbConn)
|
||||
|
||||
engine := gin.Default()
|
||||
|
||||
|
@ -25,12 +25,12 @@ package datastore
|
||||
import (
|
||||
"context"
|
||||
|
||||
"github.com/jackc/pgx/v5/pgxpool"
|
||||
"github.com/jackc/pgx/v5"
|
||||
)
|
||||
|
||||
// NewDB creates a new database for the application
|
||||
func NewDB(dsn string) (*pgxpool.Pool, error) {
|
||||
conn, err := pgxpool.New(context.Background(), dsn)
|
||||
func NewDB(connConfig *pgx.ConnConfig) (*pgx.Conn, error) {
|
||||
conn, err := pgx.ConnectConfig(context.Background(), connConfig)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
Reference in New Issue
Block a user