Skip to content

Commit 70dcae2

Browse files
authored
Skip lock error while migration (#25)
1 parent 16944a7 commit 70dcae2

File tree

1 file changed

+10
-2
lines changed

1 file changed

+10
-2
lines changed

main.go

+10-2
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ import (
1111
"github.com/RealImage/QLedger/middlewares"
1212
"github.com/julienschmidt/httprouter"
1313
"github.com/mattes/migrate"
14+
"github.com/mattes/migrate/database"
1415
"github.com/mattes/migrate/database/postgres"
1516
_ "github.com/mattes/migrate/source/file"
1617
)
@@ -100,8 +101,15 @@ func migrateDB(db *sql.DB) {
100101
}
101102
log.Println("Current schema version:", version)
102103
err = m.Up()
103-
if err != nil && err != migrate.ErrNoChange && err != migrate.ErrLocked {
104-
log.Panic("Error while migration:", err)
104+
if err != nil {
105+
switch err {
106+
case migrate.ErrNoChange:
107+
log.Println("No changes to migrate")
108+
case migrate.ErrLocked, database.ErrLocked:
109+
log.Println("Database locked. Skipping migration assuming another instance working on it")
110+
default:
111+
log.Panic("Error while migration:", err)
112+
}
105113
}
106114
version, dirty, err = m.Version()
107115
if err != nil {

0 commit comments

Comments
 (0)