diff --git a/api/database/boltdb/db.go b/api/database/boltdb/db.go index 62aa8f3a6..39305e5cf 100644 --- a/api/database/boltdb/db.go +++ b/api/database/boltdb/db.go @@ -144,6 +144,8 @@ func (connection *DbConnection) Open() error { // Close closes the BoltDB database. // Safe to being called multiple times. func (connection *DbConnection) Close() error { + log.Info().Msg("closing PortainerDB") + if connection.DB != nil { return connection.DB.Close() } diff --git a/api/datastore/backup.go b/api/datastore/backup.go index 0a18346b4..5c198f775 100644 --- a/api/datastore/backup.go +++ b/api/datastore/backup.go @@ -43,11 +43,12 @@ func (store *Store) Restore() error { } func (store *Store) RestoreFromFile(backupFilename string) error { + store.Close() if err := store.fileService.Copy(backupFilename, store.connection.GetDatabaseFilePath(), true); err != nil { return fmt.Errorf("unable to restore backup file %q. err: %w", backupFilename, err) } - log.Info().Str("from", store.connection.GetDatabaseFilePath()).Str("to", backupFilename).Msgf("database restored") + log.Info().Str("from", backupFilename).Str("to", store.connection.GetDatabaseFilePath()).Msgf("database restored") _, err := store.Open() if err != nil { @@ -61,7 +62,7 @@ func (store *Store) RestoreFromFile(backupFilename string) error { } editionLabel := portainer.SoftwareEdition(version.Edition).GetEditionLabel() - log.Info().Str("version", version.SchemaVersion).Msgf("Restored database version: Portainer %s %s ", editionLabel, version.SchemaVersion) + log.Info().Msgf("Restored database version: Portainer %s %s", editionLabel, version.SchemaVersion) return nil }