Record each snapshot's uncompressed size when its backup runs (closes #360)
check / check (push) Canceled after 0s
check / check (push) Canceled after 0s
snapshot list summed the chunks a snapshot reaches through its file rows in the local index. A file's row is shared by every snapshot that lists it and rewritten when the file changes, so backing up a changed file changed every older snapshot's UNCOMPRESSED SIZE. The backup now takes that total when it records the snapshot's stats, into a new snapshots column, uncompressed_chunk_size, and snapshot list reads the column, as it already does for new_chunk_size. Model: opus-5-5
This commit was merged in pull request #366.
This commit is contained in:
1 parent
fb8abcd049
commit
3361e9ebd9
6 files changed
+120
-25
No files matched your search
@@ -483,13 +483,14 @@ func TestListSnapshots_UnreadableManifestDoesNotHideOthers(t *testing.T) {
|
||||
//
|
||||
//nolint:tagliatelle // snake_case is the established output format
|
||||
type listJSONRow struct {
|
||||
ID string `json:"id"`
|
||||
RemoteKey string `json:"remote_key"`
|
||||
Timestamp string `json:"timestamp"`
|
||||
CompressedSize int64 `json:"compressed_size"`
|
||||
NewChunkSize int64 `json:"new_chunk_size"`
|
||||
LocallyTracked bool `json:"locally_tracked"`
|
||||
RemotePresent *bool `json:"remote_present"`
|
||||
ID string `json:"id"`
|
||||
RemoteKey string `json:"remote_key"`
|
||||
Timestamp string `json:"timestamp"`
|
||||
CompressedSize int64 `json:"compressed_size"`
|
||||
UncompressedSize int64 `json:"uncompressed_size"`
|
||||
NewChunkSize int64 `json:"new_chunk_size"`
|
||||
LocallyTracked bool `json:"locally_tracked"`
|
||||
RemotePresent *bool `json:"remote_present"`
|
||||
}
|
||||
|
||||
// decodeListJSON parses the command's stdout, which must contain
|
||||
|
||||
Reference in new issue
Block a user