diff --git a/CHANGELOG.d/20260815T191744--clear-common-for-broken-snapshots__fixed.md b/CHANGELOG.d/20260815T191744--clear-common-for-broken-snapshots__fixed.md new file mode 100644 index 0000000..20c2f45 --- /dev/null +++ b/CHANGELOG.d/20260815T191744--clear-common-for-broken-snapshots__fixed.md @@ -0,0 +1,4 @@ + + +### Fixed +- Common status not reset after removing broken snapshot, results in `snapshot exists` error. [#55](https://github.com/plattfot/baksnapper/issues/55) diff --git a/CHANGELOG.d/20260815T193954--add-list-command__added.md b/CHANGELOG.d/20260815T193954--add-list-command__added.md index c4c7ac0..e563ac5 100644 --- a/CHANGELOG.d/20260815T193954--add-list-command__added.md +++ b/CHANGELOG.d/20260815T193954--add-list-command__added.md @@ -1,2 +1,4 @@ + + ### Added - `--list` command. diff --git a/baksnapper.sh b/baksnapper.sh index f88359f..8b3e434 100755 --- a/baksnapper.sh +++ b/baksnapper.sh @@ -752,6 +752,7 @@ function cleanup-broken-snapshots { if $receiver incomplete-snapshot "$dest_root" "$snapshot" then $receiver remove-broken-snapshot "$dest_root" "$snapshot" + unset "common[$snapshot]" fi done } diff --git a/meson.build b/meson.build index 976c05d..0c2621c 100644 --- a/meson.build +++ b/meson.build @@ -296,6 +296,22 @@ foreach test_entry: [ 'suite': ['backup'], 'env': test_env, }, + { + 'name': 'broken-last-snapshot', + 'runner-args': [ + '--sender', '0,1,6984,10288,11005,11457', + '--receiver', '1,6984:p=1,10288:p=6984,11005:p=10288,11457:p=11005:s=no-info', + '--expected', '1,6984:p=1,10288:p=6984,11005:p=10288,11457:p=11005', + ], + 'baksnapper-args': [ + baksnapper, + '--daemon', baksnapperd, '-v', + ], + 'configfile': 'default', + 'configfile-baksnapper-args': [], + 'suite': ['backup'], + 'env': test_env, + }, # DeNotebak { 'name': 'denotebak-default',