Skip to content

Commit

Permalink
fix synchronization of snapshots across repos
Browse files Browse the repository at this point in the history
  • Loading branch information
poolpOrg committed Feb 2, 2025
1 parent f175ee2 commit 31925c7
Showing 1 changed file with 2 additions and 12 deletions.
14 changes: 2 additions & 12 deletions cmd/plakar/subcommands/sync/sync.go
Original file line number Diff line number Diff line change
Expand Up @@ -188,12 +188,13 @@ func synchronize(srcRepository *repository.Repository, dstRepository *repository
}
defer srcSnapshot.Close()

dstSnapshot, err := snapshot.Clone(dstRepository, snapshotID)
dstSnapshot, err := snapshot.New(dstRepository)
if err != nil {
return err
}
defer dstSnapshot.Close()

// overwrite header, we want to keep the original snapshot info
dstSnapshot.Header = srcSnapshot.Header

iter, err := srcSnapshot.ListChunks()
Expand Down Expand Up @@ -263,16 +264,5 @@ func synchronize(srcRepository *repository.Repository, dstRepository *repository
return nil
})

iter = srcSnapshot.ListDatas()
for dataID := range iter {
if !dstRepository.BlobExists(packfile.TYPE_DATA, dataID) {
dataData, err := srcSnapshot.GetBlob(packfile.TYPE_DATA, dataID)
if err != nil {
return err
}
dstSnapshot.PutBlob(packfile.TYPE_DATA, dataID, dataData)
}
}

return dstSnapshot.Commit()
}

0 comments on commit 31925c7

Please sign in to comment.