Debian Patches

Status for amanda/1:3.5.1-7

Patch Description Author Forwarded Bugs Origin Last update
28-protocol_check =================================================================== no
01-debian-fhs-dumpdates-path-doc make dumpdates path in docs match Debian configuration
===================================================================
Bdale Garbee <bdale@gag.com> no
02-debian-fhs-dumpdates-path-src make dumpdates path in docs match Debian configuration
===================================================================
Bdale Garbee <bdale@gag.com>, Jose M Calhariz <jose@calhariz.com> no
03-debian-fhs-dumpdates-path-examples make dumpdates path in docs match Debian configuration
===================================================================
Bdale Garbee <bdale@gag.com> no
fix-amserverconfig-path Fix amserverconfig path=================================================================== Bdale Garbee <bdale@gag.com> no
07-debian-change-from-amandabackup-to-backup-example Change user from amandabackup to backup
===================================================================
Bdale Garbee <bdale@gag.com>, Jose M Calhariz <jose@calhariz.com> no
08-debian-change-from-amandabackup-to-backup-src Change user from amandabackup to backup
===================================================================
Bdale Garbee <bdale@gag.com> no
09-debian-change-from-amandabackup-to-backup-doc Change user from amandabackup to backup
===================================================================
Bdale Garbee <bdale@gag.com> no
missing-libs-ftbfs.patch Add missing libs to link.
===================================================================
Daniel T Chen <crimsun@ubuntu.com> no 2014-08-16
fix-amserverconfig-template-path adjust template path to work with Debian
===================================================================
Bill Blough <devel@blough.us> invalid upstream
14-debian-fix-lintian-manpage-warnings-conffile.c Fix various lintian errors relating to man pages, including line breaks, non-standard FHS paths, etc.
===================================================================
Bill Blough <devel@blough.us> no
15-debian-fix-lintian-manpage-warnings-amanda.conf.5 Fix various lintian errors relating to man pages, including line breaks, non-standard FHS paths, etc.
===================================================================
Bill Blough <devel@blough.us> no
reproducible-build Bug#830725: amanda: please make the build reproducible=================================================================== reproducible-builds@lists.alioth.debian.org no
20-fix-robot.pm amanda-common: Amanda::Changer::robot::Interface::MTX calls confess but does not use Carp
===================================================================
Will Aoki <waoki@umnh.utah.edu> no
22-reproducible-build-fix-shell-capture Avoid using build-time shell in built scripts for reproducibility=================================================================== Robbie Harwood <rharwood@club.cc.cmu.edu> no
24-for-jose-server =================================================================== no
26-driver-fix-crash =================================================================== no
30-lexical Fix, lexical.pm last_use_label ignores "storage" field on tapelist
===================================================================
Jean-Louis Martineau <JMartineau@carbonite.com> no
32-fix-small-DLE Fix the update of internal database when DLE is very small
Okay, I believe I have tracked down this "info on small DLEs not saved"
bug...


Summary:

The short-ish summary is that in Amanda 3.4 and 3.5, any dump which ends
but being shorter than 1024 bytes long (after compression) is treated as
not having happened at all, as far as Amanda's recording of "info"
statistics goes.

This is most significant for full dumps (i.e. of very small partitions),
because it causes Amanda to think that DLE has never been dumped (or,
that the last time it was dumped was on the final run made using Amanda
3.3 or older), and thus it schedules that DLE for a full dump on every
run.

However, the bug actually also affects incremental dumps (as we
discussed in the above-quoted message) -- so DLEs that don't change much
on a particular day and thus end up with very tiny incrementals end up
recording those dumps as having taken place on 1969/12/31 rather than
the day they actually occurred.


Neither of the above situations is "fatal" as far as preventing Amanda
from actually backup up your data, but for people (such as Gene) who are
effected, a workaround workaround is simply to make sure that the dump
on a particular day is at least 1024 bytes.

For full dumps, you can do this just by creating a "dummy" file on the
otherwise-very-empty partition in question, using data that's already
compressed so that the dump file is still big enough after Amanda
compresses it. (In my tests, I just used the bytes off the front of the
amanda_3.4.2.orig.tar.gz file I happened to have sitting around.)

(For incrementals the trick is to make sure there is enough changing on
the partition that the incremental dump is over the cutoff size; the
best way to do that will depend on what data is on that partition, etc.)



Internal details and history:

The bug happens because the messages that the chunker and driver
processes use to communicate with each other specify the size of the
files transferred in integral units of "kb" (=1024 bytes), and thus the
size given for very small files is "0" -- but the code in the driver
that handles updating the info database has a specific check for
zero-length dumps and refuses to update the database in that case.
(This check is found in driverio.c:update_info_dumper() .)

It appears that the bug has existed since Amanda 3.4, when the old
chunker.c version of the chunker program was replaced with a new Perl
version.

Both server-src/chunker.c as found in Amanda 3.3 and server-src/dumper.c
as it exists in 3.5 take special care to round "kb" value passed for
files which are short-but-not-empty files up to "1" -- but that logic
was not implemented in the Perl chunker code when it was created..

(Interestingly, if I am reading the old chunker.c code correctly, it
used to round up not just very-small-but-not-empty files to 1 kb, but
actually rounded the kb figure up to count any trailing partial
kilobytes at the end of the file... while the new program seems to just
ignore those trailing partial kilobytes. Presumably this difference
simply doesn't matter -- except for the when the size is rounded down to
zero.)


Proposed patch:

This is where having an actual Amanda developer would be very handy...
but given that planner.c and old-chunker.c both have special handling
for small-but-not-empty files, I figured that adding a similar check to
the new Chunker implementation is probably the best fix for this
situation, and that hopefully doing so would be safe from unwanted
side-effects....

So, I edited the perl/Amanda/Chunker/Controller.pm to implement such a
check, as shown in the attached patch. I've been running with this
patch in place for a couple days now, and so far it seems to have
resolved the issue for me....


Nathan


===================================================================
Nathan Stratton Treadway <nathanst@ontko.com> no
34-fix-for-samba-on-deb10 Fix a problem found with samba on Debian 10 aka buster.
Found on mailing-lists amanda-users

May need patch 36-*

===================================================================
Diego Zuccato <diego.zuccato@unibo.it> no
36-fix-for-samba-on-deb10-part-2 Fix a problem found with samba on Debian 10 aka buster, part 2.
Found on mailing-list amanda-user:

Add the same pattern near line 757:
return if $line =~ /^Unable to initialize messaging context/;

(...)

===================================================================
Jean-Louis Martineau <JMartineau@carbonite.com> no
38-ftbfs-with-gcc-10 Fix FTBFS with GCC-10
Added missing 'extern' keyword and changed type to be consistent
with common-src/testutils.c


===================================================================
no

All known versions for source package 'amanda'

Links