add 'tahoe mirror' command, use backupdb #597
Labels
No Label
0.2.0
0.3.0
0.4.0
0.5.0
0.5.1
0.6.0
0.6.1
0.7.0
0.8.0
0.9.0
1.0.0
1.1.0
1.10.0
1.10.1
1.10.2
1.10a2
1.11.0
1.12.0
1.12.1
1.13.0
1.14.0
1.15.0
1.15.1
1.2.0
1.3.0
1.4.1
1.5.0
1.6.0
1.6.1
1.7.0
1.7.1
1.7β
1.8.0
1.8.1
1.8.2
1.8.3
1.8β
1.9.0
1.9.0-s3branch
1.9.0a1
1.9.0a2
1.9.0b1
1.9.1
1.9.2
1.9.2a1
LeastAuthority.com automation
blocker
cannot reproduce
cloud-branch
code
code-dirnodes
code-encoding
code-frontend
code-frontend-cli
code-frontend-ftp-sftp
code-frontend-magic-folder
code-frontend-web
code-mutable
code-network
code-nodeadmin
code-peerselection
code-storage
contrib
critical
defect
dev-infrastructure
documentation
duplicate
enhancement
fixed
invalid
major
minor
n/a
normal
operational
packaging
somebody else's problem
supercritical
task
trivial
unknown
was already fixed
website
wontfix
worksforme
No Milestone
No Assignees
2 Participants
Notifications
Due Date
No due date set.
Reference: tahoe-lafs/trac-2024-07-25#597
Loading…
Reference in New Issue
No description provided.
Delete Branch "%!s(<nil>)"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
It would be nice to have a CLI tool which does a minimum-effort copy, from
local disk into a Tahoe directory. This tool should behave like "rsync -a
--delete": when done, the target directory should look exactly like the local
disk's directory. By running the tool on a periodic basis, the Tahoe
directory will contain a single most-recent-version backup of the local disk.
tahoe mirror ~/music tahoe:my-music
To make this as fast as possible, the default mode will use two assumptions:
last invocation of 'tahoe mirror'
Both assumptions can be disabled with argv flags, at the expense of doing
more work. If both assumptions are accepted, then a null backup should
require no network traffic and no file reads (only directory reads).
This command would use the 'backupdb', stored in
~/.tahoe/private/backupdb
, as discussed in this thread:http://allmydata.org/pipermail/tahoe-dev/2008-May/000620.html . The backupdb
would allow the client to quickly determine which files and directories have
already been copied.
The proposed "tahoe backup" command (#598) would use the same backupdb.
so, it looks like #598 ("tahoe backup": versioned shared backups) is more
interesting right now, so I'll be working on it instead of "tahoe sync". To
checkpoint my work so far: here's my pseudocode, and the stub of the CLI
code.
Attachment 597-tahoesync-stub.diff (2966 bytes) added
starting point, just a stub of the CLI command
after some discussion, we decided that "tahoe mirror" was a better name for this than "tahoe sync". "sync" implies bidirectionality, whereas "mirror" has a definite real-world side and looking-glass-world side.
So this ticket is about "tahoe mirror", which does whatever is necessary to make a target directory look like a source directory, without modifying the source directory. The "tahoe sync" idea (which makes the directories look the same, but is allowed to modify both directories) has been moved to #601.
oops, forgot to modify the ticket description
add 'tahoe sync' command, use backupdbto add 'tahoe mirror' command, use backupdbWarner, isn't this ticket about the functionality already provided by 'tahoe backup' #598?
Wouldn't be good to close this one?
stockrt: nope, "tahoe backup" is defined to create successive timestamped snapshots, whereas "tahoe mirror" is defined to create/modify a single snapshot.
After you've used "tahoe backup ... alias:Backups" daily for a few days, you'll have:
After you've used "tahoe mirror ... alias:Backups" daily for a few days (or a month, or just once), you'll have:
If you used "tahoe backup ... alias:Backups" and then ignored the Backups/Archives/ directory, you'd get the same thing as you'd get with "tahoe mirror ... alias:Backups/Latest". But someone who wants just the latest copy would 1) be annoyed by the old archives piling up and 2) would be annoyed by the extra "Latest/" subdirectory that they didn't ask for. That's why it seems like a separate command would be useful. (but, not as useful as "tahoe backup", which is why "tahoe mirror" got de-prioritized).