From f614233bd42f6e2ecabc32fd374d44ca68f09e30 Mon Sep 17 00:00:00 2001 From: PhatPhuckDave Date: Mon, 5 Jan 2026 12:08:49 +0100 Subject: [PATCH] Fix up the database --- db.go | 11 +++++++---- main.go | 6 ++++++ 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/db.go b/db.go index f74a412..74fc644 100644 --- a/db.go +++ b/db.go @@ -19,10 +19,13 @@ type DBWrapper struct { var db *DBWrapper func GetDB() (DB, error) { + if db != nil { + return db, nil + } var err error - dbFile := filepath.Join("data.sqlite") - db, err := gorm.Open(sqlite.Open(dbFile), &gorm.Config{ + dbFile := filepath.Join("sqlite-latest.sqlite") + gdb, err := gorm.Open(sqlite.Open(dbFile), &gorm.Config{ // SkipDefaultTransaction: true, PrepareStmt: true, // Logger: gormlogger.Default.LogMode(gormlogger.Silent), @@ -31,11 +34,11 @@ func GetDB() (DB, error) { return nil, err } - return &DBWrapper{db: db}, nil + db := &DBWrapper{db: gdb} + return db, nil } -// Just a wrapper func (db *DBWrapper) Raw(sql string, args ...any) *gorm.DB { return db.db.Raw(sql, args...) } diff --git a/main.go b/main.go index d8832c4..10c482f 100644 --- a/main.go +++ b/main.go @@ -9,6 +9,12 @@ import ( func main() { flag.Parse() logger.InitFlag() + db, err := GetDB() + if err != nil { + logger.Error("Failed to get database: %v", err) + return + } + db.DB().AutoMigrate(&Killmail{}, &Attacker{}, &Victim{}, &Item{}, &Position{}) file := "data/killmails-2025-01-01.tar.bz2" killmails := make(chan Killmail)