incremental adding unchanged files

Asked by Keith Cornwell

I ran a full backup to an external USB disk, which completed with no errors, using the following command:
duplicity --verbosity info --name opus-shared --volsize 100 --asynchronous-upload /filestore01/Shared file:///mnt/external/backup-Shared
Backup stats are listed below.

As a quick check I ran list-current-files and counted the output lines. I only counted a little more than 75k even though the backup stats said it had backup up 211859 files.

I then ran a verify which reported no problem and that I had 211859 in the archive.

When I then run an incremental backup, using the same command as above, it starts adding files that are already in the backup but are unchanged since the full.

From the full:
--------------[ Backup Statistics ]--------------
StartTime 1351285999.09 (Fri Oct 26 17:13:19 2012)
EndTime 1351348930.92 (Sat Oct 27 10:42:10 2012)
ElapsedTime 62931.82 (17 hours 28 minutes 51.82 seconds)
SourceFiles 211859
SourceFileSize 432591340309 (403 GB)
NewFiles 211859
NewFileSize 432591340309 (403 GB)
DeletedFiles 0
ChangedFiles 0
ChangedFileSize 0 (0 bytes)
ChangedDeltaSize 0 (0 bytes)
DeltaEntries 211859
RawDeltaSize 432546152833 (403 GB)
TotalDestinationSizeChange 411491174082 (383 GB)
Errors 0
-------------------------------------------------

From the verify:
-------------------------------------------------
Local and Remote metadata are synchronized, no sync needed.
Last full backup date: Fri Oct 26 17:13:19 2012
Verify complete: 211859 files compared, 0 differences found.
-------------------------------------------------

Question information

Language:
English Edit question
Status:
Answered
For:
Duplicity Edit question
Assignee:
No assignee Edit question
Last query:
Last reply:
Revision history for this message
edso (ed.so) said :
#1

first and foremost, please state your duplicity, python and os version.

secondly, you can run duplicity with '--dry-run' and maximum verbosity '-v9' and somewhere it should tell you why it thinks a specific file needs to be backed up again.

wrt. to the filecount:
i have no clue.. maybe it lists only files but counts folders as well? you may want investigate with a small test set and compare list-current-files with the actual restored content. usually duplicity does not backup more than necessary or forgets data. would be bad mo for a backup software anyway.

..ede/duply.net

Revision history for this message
Keith Cornwell (jkc) said :
#2

Oops.
duplicity 0.6.19
Python 2.7.3
ubuntu server 12.04

With --dry-run it has no problem. I tried it with -v9 and again with -v4. As long as --dry-run is there it tries to only back up a few files that have changed. If I remove --dry-run it adds 1000s of files that haven't changed.

It's only on this large backup that this problem occurs. I have 3 smaller backups (~7GB) that have no problems. 2 to the same external drive and one to S3.

Keith

Revision history for this message
edso (ed.so) said :
#3

On 05.11.2012 00:11, Keith Cornwell wrote:
> Question #212772 on Duplicity changed:
> https://answers.launchpad.net/duplicity/+question/212772
>
> Status: Needs information => Open
>
> Keith Cornwell gave more information on the question:
> Oops.
> duplicity 0.6.19
> Python 2.7.3
> ubuntu server 12.04
>
> With --dry-run it has no problem. I tried it with -v9 and again with
> -v4. As long as --dry-run is there it tries to only back up a few files
> that have changed. If I remove --dry-run it adds 1000s of files that
> haven't changed.
>
> It's only on this large backup that this problem occurs. I have 3
> smaller backups (~7GB) that have no problems. 2 to the same external
> drive and one to S3.
>

first.. try the new 0.6.20 it's much more performant on ubuntu.

secondly..
never heard of an issue like that. please do both runs with/without '--dry-run' in debug verbosity and copy

- the complete output
- the command line used on top

into a log file per run and pastebin those. obfuscate private data in it that you do not want other to see first!

post the links here so i can have a look at those.

..ede/duply.net

Revision history for this message
Keith Cornwell (jkc) said :
#4

Upgraded to 0.6.20

Before running another incremental. I ran a cleanup.
duplicity cleanup --force file:///mnt/external/backup-Shared

Then I ran this:
duplicity --dry-run --verbosity debug --name opus-shared --volsize 100 --asynchronous-upload /filestore01/Shared file:///mnt/external/backup-Shared

But this time it gets confused about the full that it's working against and decides to do another full.
No backup chains with active signatures found
No orphaned or incomplete backup sets found.
No signatures found, switching to full backup.

Here's the pastebin of the log file:
http://paste.ubuntu.com/1337731/

Thank you for looking at this.
Keith

Revision history for this message
edso (ed.so) said :
#5

On 06.11.2012 18:06, Keith Cornwell wrote:
> Question #212772 on Duplicity changed:
> https://answers.launchpad.net/duplicity/+question/212772
>
> Keith Cornwell posted a new comment:
> Upgraded to 0.6.20
>
> Before running another incremental. I ran a cleanup.
> duplicity cleanup --force file:///mnt/external/backup-Shared
>
> Then I ran this:
> duplicity --dry-run --verbosity debug --name opus-shared --volsize 100 --asynchronous-upload /filestore01/Shared file:///mnt/external/backup-Shared
>
> But this time it gets confused about the full that it's working against and decides to do another full.
> No backup chains with active signatures found
> No orphaned or incomplete backup sets found.
> No signatures found, switching to full backup.
>
> Here's the pastebin of the log file:
> http://paste.ubuntu.com/1337731/
>

the below could explain why it ignores your previous full...

6183 File duplicity-full-signatures.20121026T211319Z.sigtar.gpg is not part of a known set; creating new set
6184 Ignoring file (rejected by backup set) 'duplicity-full-signatures.20121026T211319Z.sigtar.gpg'

anyway, it is not guaranteed that newer version /always/ work perfectly with backup sets created with previous versions. the easiest way out of it is probably:

- install the duplicity version used previously in parallel (see here under TIP http://duply.net/?title=Duply-documentation )
- check that your old backup chain verify's ok with it
- do a new full with 0.6.20 to a new repository folder
- do incrementals on it and observe if the error persists

if it does, sent the two outputs i mentioned above... ede/duply.net

Revision history for this message
Keith Cornwell (jkc) said :
#6

duplicity support

duplicity 0.6.20

Deleted contents of target, /tmp and .cache/duplicity/backup-name

Ran full with no errors.
duplicity --verbosity info --name opus-shared --volsize 200 --asynchronous-upload /filestore01/Shared file:///mnt/external/backup-Shared
logfile: http://paste.ubuntu.com/1347967/

Ran duplicity verify -v9 file:///mnt/external/backup-Shared /filestore01/Shared
Verify complete: 211964 files compared, 0 differences found.
logfile: http://paste.ubuntu.com/1347975/

Ran duplicity list-current-files -v9 file:///mnt/external/backup-Shared/
logfile: http://paste.ubuntu.com/1347894/
These lines show up again:
28 File duplicity-full.20121107T172254Z.vol163.difftar.gpg is not part of a known set; creating new set
182 File duplicity-full-signatures.20121107T172254Z.sigtar.gpg is not part of a known set; creating new set
183 Ignoring file (rejected by backup set) 'duplicity-full-signatures.20121107T172254Z.sigtar.gpg'

As before the list-current-files only lists 75770 files instead of 211964.

Ran duplicity --dry-run --verbosity debug --name opus-shared --volsize 200 --asynchronous-upload /filestore01/Shared file:///mnt/external/backup-Shared
logfile: http://paste.ubuntu.com/1348014/ I included the lines where it started to Add the unchanged files.
As before it wanted to add unchanged files to the archive.
 egrep '^A ' logfile | wc -l
yielded 135872 files it wanted to add.

Revision history for this message
edso (ed.so) said :
#7

thanks for the pastings...

the output of the full suggests that all files ended in the backup..

DeltaEntries 211964
RawDeltaSize 432621374933 (403 GB)

listing and incremental though seem to unable to find/list them

Comparing ('BACKUP_PHOTOS_ALL_MACHINES', 'MB10 - Done', 'Game 4 at Newton Co Done', 'Sarah', 'No - Not Now', 'SSGm4_0279.JPG') and None
Getting delta of (('BACKUP_PHOTOS_ALL_MACHINES', 'MB10 - Done', 'Game 4 at Newton Co Done', 'Sarah', 'No - Not Now', 'SSGm4_0279.JPG') /filestore01/Shared/BACKUP_PHOTOS_ALL_MACHINES/MB10 - Done/Game 4 at Newton Co Done/Sarah/No - Not Now/SSGm4_0279.JPG reg) and None
A BACKUP_PHOTOS_ALL_MACHINES/MB10 - Done/Game 4 at Newton Co Done/Sarah/No - Not Now/SSGm4_0279.JPG

a compare to _None_ means it is not in the backup. may i ask you to post an unencrypted sigtar of your backup?
you can either manually decrypt 'duplicity-full-signatures.20121107T172254Z.sigtar.gpg' or simply do a full backup w/o any encryption '--no-encryption'.

so far i'd assume duplicity fails somehow because of all the spaces in the path.

..ede/duply.net

Revision history for this message
Keith Cornwell (jkc) said :
#8

The sigtar is 2.1GB, so I'm not sure how to post it.

I did try to untar it and have a look. The tar failed part way with:
tar: Skipping to next header
tar: Exiting with failure status due to previous errors

Revision history for this message
edso (ed.so) said :
#9

is it a sigtar.gpg or gzipped one?

in case it is unencrypted/unzipped already .. it should be a plain text file afair .. you could simply compress it and it should be much smaller.. then upload it to mediafire or some other filehoster

..ede/duply.net

Revision history for this message
Keith Cornwell (jkc) said :
#10

Ok. I'll compress it first.

But the one I have won't untar. It's damaged somehow.
Is there a way to regen a sigtar without doing a backup? It's takes 17 hours for the backup.

Revision history for this message
edso (ed.so) said :
#11

On 12.11.2012 19:35, Keith Cornwell wrote:
> Question #212772 on Duplicity changed:
> https://answers.launchpad.net/duplicity/+question/212772
>
> Keith Cornwell posted a new comment:
> Ok. I'll compress it first.
>
> But the one I have won't untar. It's damaged somehow.

where did you get it from. what's the files name? is it unencrypted?

> Is there a way to regen a sigtar without doing a backup? It's takes 17 hours for the backup.

not to my knowledge.. sigtars are generated during backup only.

..ede/duply.net

Revision history for this message
Kenneth Loafman (kenneth-loafman) said :
#12

What filesystem types are the source and destination. Is it possible that
one of them does not have largefile support, e.g. files over 2GB?

On Mon, Nov 12, 2012 at 1:26 PM, edso
<email address hidden>wrote:

> Question #212772 on Duplicity changed:
> https://answers.launchpad.net/duplicity/+question/212772
>
> edso proposed the following answer:
> On 12.11.2012 19:35, Keith Cornwell wrote:
> > Question #212772 on Duplicity changed:
> > https://answers.launchpad.net/duplicity/+question/212772
> >
> > Keith Cornwell posted a new comment:
> > Ok. I'll compress it first.
> >
> > But the one I have won't untar. It's damaged somehow.
>
> where did you get it from. what's the files name? is it unencrypted?
>
> > Is there a way to regen a sigtar without doing a backup? It's takes 17
> hours for the backup.
>
> not to my knowledge.. sigtars are generated during backup only.
>
> ..ede/duply.net
>
> --
> You received this question notification because you are a member of
> duplicity-team, which is an answer contact for Duplicity.
>
> _______________________________________________
> Mailing list: https://launchpad.net/~duplicity-team
> Post to : <email address hidden>
> Unsubscribe : https://launchpad.net/~duplicity-team
> More help : https://help.launchpad.net/ListHelp
>

Revision history for this message
Keith Cornwell (jkc) said :
#13

duplicity-full-signatures.20121107T172254Z.sigtar generated by:
gpg -d /mnt/external/backup-Shared/duplicity-full-signatures.20121107T172254Z.sigtar.gpg >duplicity-full-signatures.20121107T172254Z.sigtar

Both source and target are ext4 with mount options noatime,nodiratime.
Source fs is on a RAID1(md) pair of internal drives and the target is a 1TB external USB drive.

Revision history for this message
edso (ed.so) said :
#14

ok, it's not plain text, but created with python tarfile somehow. never dug into this area of duplicity so far.

https://gist.github.com/2001367
has a routine to list it's contents and sort it by size.. check for yourself or put the sigtar somewhere for me to check it's entries..

..ede

Can you help with this problem?

Provide an answer of your own, or ask Keith Cornwell for more information if necessary.

To post a message you must log in.