1
0
Fork 0

Fix single-node upgrade test

master
Philip O'Toole 1 year ago
parent 207533a685
commit 47e9bbde49

@ -62,7 +62,6 @@ func Upgrade(old, new string, logger *log.Logger) error {
} }
// Start the upgrade process. // Start the upgrade process.
logger.Printf("upgrading snapshot directory %s to %s", old, new)
if err := os.MkdirAll(newTmpDir, 0755); err != nil { if err := os.MkdirAll(newTmpDir, 0755); err != nil {
return fmt.Errorf("failed to create temporary snapshot directory %s: %s", newTmpDir, err) return fmt.Errorf("failed to create temporary snapshot directory %s: %s", newTmpDir, err)
} }
@ -137,6 +136,7 @@ func Upgrade(old, new string, logger *log.Logger) error {
if err := removeDirSync(old); err != nil { if err := removeDirSync(old); err != nil {
return fmt.Errorf("failed to remove old snapshot directory %s: %s", old, err) return fmt.Errorf("failed to remove old snapshot directory %s: %s", old, err)
} }
logger.Printf("upgraded snapshot directory %s to %s", old, new)
return nil return nil
} }

@ -367,8 +367,15 @@ func (s *Store) Open() (retErr error) {
config := s.raftConfig() config := s.raftConfig()
config.LocalID = raft.ServerID(s.raftID) config.LocalID = raft.ServerID(s.raftID)
// Upgrade any pre-existing snapshots.
oldSnapshotDir := filepath.Join(s.raftDir, "snapshots")
snapshotDir := filepath.Join(s.raftDir, "rsnapshots")
if err := snapshot.Upgrade(oldSnapshotDir, snapshotDir, s.logger); err != nil {
return fmt.Errorf("failed to upgrade snapshots: %s", err)
}
// Create store for the Snapshots. // Create store for the Snapshots.
snapshotStore, err := snapshot.NewStore(filepath.Join(s.raftDir, "rsnapshots")) snapshotStore, err := snapshot.NewStore(filepath.Join(snapshotDir))
if err != nil { if err != nil {
return fmt.Errorf("failed to create snapshot store: %s", err) return fmt.Errorf("failed to create snapshot store: %s", err)
} }

Loading…
Cancel
Save