Changelog History
Page 6
-
v0.11.2 Changes
March 01, 2003π Fixed seg fault bug reported by a couple sparc/openbsd users. Thanks β to Dave Steinberg for giving me an account on his system for testing.
π Re-enabled --windows-mode and filename quoting.
π Fixed selection bug: In 0.11.1, files which were included in one backup would be automatically included in the next. Now you can include/exclude files session-by-session.
π Fixed ownership compare bug: In 0.11.1, backups where the destination side was not root would preserve ownership information by recording it π in the metadata file. However, mere ownership changes would not π trigger creation of new increments. This has been fixed.
β Added the --no-inode-compare switch. You probably don't need to use it though.
If a special file cannot be created on the destination side, a 0 length regular file will be written instead as a placeholder. π (Restores should work fine because of the metadata file.)
Yet another error handling strategy (hopefully this is the last one for a while, because this stuff isn't very exciting, and takes a long time to write):
All recoverable errors are classified into one of three groups: ListErrors, UpdateErrors, and SpecialFileErrors. rdiff-backup's reaction to each error is more formally defined (see the error policy page, currently at http://rdiff-backup.stanford.edu/error_policy.html). rdiff-backup makes no attempt to recover or clean up after unrecoverable errors. However, it now uses fsync() to increment the destination directory in a reversable way. If there is an error, the next backup will regress the destination directory into its state before the aborted backup. The above process can be done without a backup with the --check-destination-dir option.
π Improved error logging. Instead of the old haphazard reporting method, which sometimes didn't indicate the file an error occurred on, now all recoverable errors are reported in a standard format and also written to the error_log..data file in the rdiff-backup-data directory. Thanks to Dean Gaudet and others for repeatedly bugging me about this.
-
v0.11.1 Changes
December 31, 2002β Warning Various features have been removed from this version, so β¬οΈ this is not a safe upgrade. Also this version has less error checking, and, if it crashes, this version may be more prone to leave the destination directory in an inconsistent state. I plan to look at these issues in the next version. Also, this version is quite different from previous ones, so you cannot run version 0.11.1 on one end of a connection and any previous version on the other side.
π The following features have been removed:
--mirror-only option: If you just want to mirror something, use rsync. (Or you could use rdiff-backup and then just delete the rdiff-backup-data directory, and then update the root mtime.) --change-source-perms option: This feature was pretty complicated to implement, and if something happened to rdiff-backup during a transfer, the old permissions could not be restored. All "resume" related functionality, like --checkpoint-interval: This was complicated to implement, and didn't seem to work all that well. Directory statistics file: Although the session statistics file is still generated, the directory statistics file no longer is, because the new code structure makes it less inconvenient. The various --exclude and --include options no longer work when restoring. This may be added later if there is demand. --windows-mode and filename quoting doesn't work. There have been several requests for this in the past, so it will probably be re-added in the next version.
π¨ Extensive refactoring. A lot of rdiff-backup's code was structured as if it were still in one file, so it didn't make enough use of Python's module system.
π Now rdiff-backup writes metadata (uid, gid, mtime, etc.) to a compressed text file in the rdiff-backup-data directory. Here are some ramifications:
A user does not need root access on the destination side to record file ownership information. Some files may be recognized as not having changed based on this metadata, so it may not be necessary to traverse the whole mirror directory. This can reduce file access on the destination side. Even when the --no-hard-links option is given when backing up, link relationships can be restored properly. However, if this option is given, mirror files will not be linked together. Special file types like device and sockets which cannot be created on the remote side for some reason can still be backed up and restored properly.
π Fixed bug with the --{include|exclude}-globbing-filelist options (reported by Claus Herwig).
β Added --list-changed-since option to list the files changed since the given date, and added Bud Bruegger's patch to that. The format and information this option provides will probably change in the near future.
π Restoring is now pipelined for better high latency performance, and unchanged files in the target directory will not be recopied.
-
v0.11.0 Changes
October 05, 2002If get a socket error from trying to create a socket whose name is too long, just skip file instead of exiting with error (bug report by Ivo De Decker).
β Added --exclude-special-files switch, which excludes fifos, symlinks, sockets, and device files.
π --windows-mode is now short for --windows-time-format --chars-to-quote A-Z: --no-hard-links --exclude-special-files. Thanks to Paul-Erik π TΓΆrrΓΆnen for some helpful windows info.
Multiple --include and --exclude statements can now be given in a π single file. See the documentation on --{include|exclude}-globbing-filelist. Thanks to Henrik Lewander for π» pointing out that command line length could otherwise be a problem.
π Fixed bug in filelist processing that ignored leading or trailing whitespace in filelists. Now filenames with, for instance, trailing spaces can be used in filelists. Filelists which took advantage of this bug for formatting may have to be edited.
Applied major/minor patch contributed by David S. rdiff-backup should now correctly copy device files on platforms such as NetBSD.
βͺ It is now possible to restore from a read-only filesystem (before π² rdiff-backup would fail when trying to open log file). Thanks to Gregor Zattler for bug report.
π Fixed bug that prevented certain restores when the source directory was specified with a trailing backslash.
β Added a bit more logging so it should be apparent which file was being π¨ processed when an error occurs (thanks to Gerd Knops for suggestion).
π Fixed bug when using --chars-to-quote and directory deleted that has quoted characters in it.
-
v0.10.1 Changes
September 16, 2002rdiff-backup should now correctly handle files larger than 2GB. Thanks to Russ Allbery for telling me how to do this.
-
v0.10.0 Changes
September 10, 2002π Fixed bug, probably introduced in 0.9.3, which prevented restores from a local source to a remote destination. Reported by Phillip Eby.
π Fixed another bug reported by Phillip Eby, where restores would fail if rdiff-backup had only been run once and no increments were available.
A few man page additions regarding restoring, statistics, and β --test-server (thanks to Gregor Zattler, Christopher Schanzle, and Tobias Polzin for suggestions).
π Fixed comparison bug where rdiff-backup would unnecessarily report a directory as changed when its source size differed from its mirror size. Thanks to Tim Allen for report.
-
v0.9.5 Changes
August 09, 2002π Fixed --verbosity option (now both -v and --verbosity work). Thanks to Chris Dumont for report.
****** IMPORTANT ****** Fixed serious permissions bug found by Robert Weber. Previous versions in the 0.9.x branch would throw away high bit permissions (like the setuid and setuid bits). This would be especially bad when running with the --change-source-perms operation. β¬οΈ Anyone running 0.9.0 - 0.9.4 should upgrade immediately.
Complain about --change-source-perms when running as root, as this option should not be necessary then.
π Fixed bug with --windows-mode. Thanks to Chris Grindstaff for report.
-
v0.9.4 Changes
July 24, 2002Man page now correctly included in rpm.
To prevent confusion, rdiff-backup script does not have exec permissions until it is installed (thanks Jason Piterak).
Sockets are now replicated. Why not? (Suggestion by Mickey Everts)
Bad resuming information (because, say, it is left over from a previous version) should no longer cause exit, except when --resume is specified.
π Better error handling in certain cases when errors occur in file reads (thanks to John Goerzen for report).
-
v0.9.3 Changes
July 15, 2002β Added --sleep-ratio option after hearing that rdiff-backup was too hard on hard disks (thanks to Steve Alexander for the suggestion). Quick example: --sleep-ratio 0.25 makes rdiff-backup sleep about 25% of the time. Maybe this will help on bandwidth usage also.
π Fixed -m/--mirror-only option.
β Added --exclude-other-filesystems option. Thanks to Paul Wouters for the suggestion.
β Added convenience field TotalDestinationSizeChange (total change in destination directory - mirror change + increments change) to session_statistics file.
π Handle a particular situation better where a file changes in a certain way while rdiff-backup is processing it. Before rdiff-backup would just crash; now it skips the file. Thanks to Scott Bender for the bug report.
π A couple interface fixes to --remove-older-than.
β Added some security features to the protocol, so rdiff-backup will now π only allow commands from remote connections. The extra security will be enabled automatically on the client (it knows what to expect), but β‘οΈ the extra switches --restrict, --restrict-update-only, and --restrict-read-only have been added for use with --server.
-
v0.9.2 Changes
June 27, 2002Interface directly with librsync(.a|.so) instead of running "rdiff" π» command line utility. This can significant save fork()ing time when π¨ processing lots of smallish files that have changed. Also, rdiff is no longer required to be in the PATH.
Further speed optimizations, mostly reducing CPU consumption when scanning through unchanged files.
π Fixed Path bug which could caused globbing and regexp include/exclude statements to malfunction when the base of the source directory was "/" (root of filesystem). Thanks to Vlastimil Adamovsky for noting this bug.
β Added quoting for spaces in directory_statistics file, hopefully π making it easier to parse.
-
v0.9.1 Changes
June 19, 2002π Fixed some bad C. Besides being unportable and leaking memory, it may have lead to someone's backup directory getting deleted (?).
π Tweaked some error recovery code to make it more like 0.8.0.
π Improved the installation a bit.