Browse Source

cmd/syncthing: Error handling on upgrade (#7497)

dat innocuous little colon
Jakob Borg 4 years ago
parent
commit
ea701a4e9e
1 changed files with 3 additions and 1 deletions
  1. 3 1
      cmd/syncthing/main.go

+ 3 - 1
cmd/syncthing/main.go

@@ -38,6 +38,7 @@ import (
 	"github.com/syncthing/syncthing/lib/build"
 	"github.com/syncthing/syncthing/lib/build"
 	"github.com/syncthing/syncthing/lib/config"
 	"github.com/syncthing/syncthing/lib/config"
 	"github.com/syncthing/syncthing/lib/db"
 	"github.com/syncthing/syncthing/lib/db"
+	"github.com/syncthing/syncthing/lib/db/backend"
 	"github.com/syncthing/syncthing/lib/dialer"
 	"github.com/syncthing/syncthing/lib/dialer"
 	"github.com/syncthing/syncthing/lib/events"
 	"github.com/syncthing/syncthing/lib/events"
 	"github.com/syncthing/syncthing/lib/fs"
 	"github.com/syncthing/syncthing/lib/fs"
@@ -392,7 +393,8 @@ func (options serveOptions) Run() error {
 		release, err := checkUpgrade()
 		release, err := checkUpgrade()
 		if err == nil {
 		if err == nil {
 			// Use leveldb database locks to protect against concurrent upgrades
 			// Use leveldb database locks to protect against concurrent upgrades
-			ldb, err := syncthing.OpenDBBackend(locations.Get(locations.Database), config.TuningAuto)
+			var ldb backend.Backend
+			ldb, err = syncthing.OpenDBBackend(locations.Get(locations.Database), config.TuningAuto)
 			if err != nil {
 			if err != nil {
 				err = upgradeViaRest()
 				err = upgradeViaRest()
 			} else {
 			} else {