Compare commits
1 Commits
fix/issue-
...
9a6a8caff9
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
9a6a8caff9 |
@@ -51,13 +51,7 @@ func CompressStream(dst io.Writer, src io.Reader, compressionLevel int, recipien
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
return 0, "", fmt.Errorf("creating writer: %w", err)
|
return 0, "", fmt.Errorf("creating writer: %w", err)
|
||||||
}
|
}
|
||||||
|
defer func() { _ = w.Close() }()
|
||||||
closed := false
|
|
||||||
defer func() {
|
|
||||||
if !closed {
|
|
||||||
_ = w.Close()
|
|
||||||
}
|
|
||||||
}()
|
|
||||||
|
|
||||||
// Copy data
|
// Copy data
|
||||||
if _, err := io.Copy(w, src); err != nil {
|
if _, err := io.Copy(w, src); err != nil {
|
||||||
@@ -68,7 +62,6 @@ func CompressStream(dst io.Writer, src io.Reader, compressionLevel int, recipien
|
|||||||
if err := w.Close(); err != nil {
|
if err := w.Close(); err != nil {
|
||||||
return 0, "", fmt.Errorf("closing writer: %w", err)
|
return 0, "", fmt.Errorf("closing writer: %w", err)
|
||||||
}
|
}
|
||||||
closed = true
|
|
||||||
|
|
||||||
return w.BytesWritten(), hex.EncodeToString(w.Sum256()), nil
|
return w.BytesWritten(), hex.EncodeToString(w.Sum256()), nil
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1003,16 +1003,16 @@ func (v *Vaultik) deleteSnapshotFromLocalDB(snapshotID string) error {
|
|||||||
|
|
||||||
// Delete related records first to avoid foreign key constraints
|
// Delete related records first to avoid foreign key constraints
|
||||||
if err := v.Repositories.Snapshots.DeleteSnapshotFiles(v.ctx, snapshotID); err != nil {
|
if err := v.Repositories.Snapshots.DeleteSnapshotFiles(v.ctx, snapshotID); err != nil {
|
||||||
log.Error("Failed to delete snapshot files", "snapshot_id", snapshotID, "error", err)
|
return fmt.Errorf("deleting snapshot files for %s: %w", snapshotID, err)
|
||||||
}
|
}
|
||||||
if err := v.Repositories.Snapshots.DeleteSnapshotBlobs(v.ctx, snapshotID); err != nil {
|
if err := v.Repositories.Snapshots.DeleteSnapshotBlobs(v.ctx, snapshotID); err != nil {
|
||||||
log.Error("Failed to delete snapshot blobs", "snapshot_id", snapshotID, "error", err)
|
return fmt.Errorf("deleting snapshot blobs for %s: %w", snapshotID, err)
|
||||||
}
|
}
|
||||||
if err := v.Repositories.Snapshots.DeleteSnapshotUploads(v.ctx, snapshotID); err != nil {
|
if err := v.Repositories.Snapshots.DeleteSnapshotUploads(v.ctx, snapshotID); err != nil {
|
||||||
log.Error("Failed to delete snapshot uploads", "snapshot_id", snapshotID, "error", err)
|
return fmt.Errorf("deleting snapshot uploads for %s: %w", snapshotID, err)
|
||||||
}
|
}
|
||||||
if err := v.Repositories.Snapshots.Delete(v.ctx, snapshotID); err != nil {
|
if err := v.Repositories.Snapshots.Delete(v.ctx, snapshotID); err != nil {
|
||||||
log.Error("Failed to delete snapshot record", "snapshot_id", snapshotID, "error", err)
|
return fmt.Errorf("deleting snapshot record %s: %w", snapshotID, err)
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
|
|||||||
Reference in New Issue
Block a user