From 1ebf0341dd42fde631eb791358ef70a3331f92fe Mon Sep 17 00:00:00 2001 From: Julien Dessaux Date: Fri, 18 Oct 2024 00:01:50 +0200 Subject: feat(tfstated): allow configuration of version history limit via environment variable --- pkg/database/db.go | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) (limited to 'pkg/database/db.go') diff --git a/pkg/database/db.go b/pkg/database/db.go index 2744570..38265ba 100644 --- a/pkg/database/db.go +++ b/pkg/database/db.go @@ -26,10 +26,11 @@ func initDB(ctx context.Context, url string) (*sql.DB, error) { } type DB struct { - ctx context.Context - dataEncryptionKey scrypto.AES256Key - readDB *sql.DB - writeDB *sql.DB + ctx context.Context + dataEncryptionKey scrypto.AES256Key + readDB *sql.DB + versionsHistoryLimit int + writeDB *sql.DB } func NewDB(ctx context.Context, url string) (*DB, error) { @@ -56,9 +57,10 @@ func NewDB(ctx context.Context, url string) (*DB, error) { writeDB.SetMaxOpenConns(1) db := DB{ - ctx: ctx, - readDB: readDB, - writeDB: writeDB, + ctx: ctx, + readDB: readDB, + versionsHistoryLimit: 64, + writeDB: writeDB, } if _, err = db.Exec("PRAGMA foreign_keys = ON"); err != nil { return nil, err @@ -101,3 +103,7 @@ func (db *DB) QueryRow(query string, args ...any) *sql.Row { func (db *DB) SetDataEncryptionKey(s string) error { return db.dataEncryptionKey.FromBase64(s) } + +func (db *DB) SetVersionsHistoryLimit(n int) { + db.versionsHistoryLimit = n +} -- cgit v1.2.3