4 ms·
SQLite has an official tool for this, fwiw: https://www.sqlite.org/rsync.html https://www.sqlite.org/rsync.html It works at the page level: > The protocol is
by conradev 1y ago
SQLite has an official tool for this, fwiw: https://www.sqlite.org/rsync.html https://www.sqlite.org/rsync.html
It works at the page level:
> The protocol is for the replica to send a cryptographic hash of each of its pages over to the origin side, then the origin sends back the complete content of any page for which the hash does not match.
- CBLT 1y agoYeah, but unfortunately the SQLite team doesn't include that tool with their "autotools" tarball, which is what most distros (and brew) use to package SQLite. The only way to use the tool is to compile it yourself.
- dgfitz 1y agoRealistically, are you using SQLite if you can’t compile and source control your rev of the codebase? Is that really a big deal?
- rcxdude 1y agoYes, it's extremely common to be using it and not even be compiling anything yourself, let alone C or any support libraries.
- CBLT 1y ago`sqlite3_rsync` must be installed on the remote host too, so now you're cross-compiling for all the hosts you manage. It also must be installed into the PATH the ssh uses, which for a number of operating systems doesn't include /usr/local/bin. So I guess you're now placing your sshd config under configuration management to allow that. These tasks aren't that challenging but they sure are a yak shave.
- conradev 1y agoYeah, that’s a bummer. It does appear to be in nixpkgs, though: nix-shell -p sqlite-rsync