Bug 1491168 - Traceback when verifying backup
Summary: Traceback when verifying backup
Keywords:
Status: CLOSED EOL
Alias: None
Product: Fedora
Classification: Fedora
Component: duplicity
Version: 27
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Gwyn Ciesla
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2017-09-13 08:39 UTC by Tim Waugh
Modified: 2018-11-30 20:59 UTC (History)
12 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2018-11-30 20:59:41 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Tim Waugh 2017-09-13 08:39:22 UTC
Description of problem:
When using deja-dup to create a backup, at the "Verifying" step I saw this error reported:

Traceback (most recent call last):
  File "/usr/bin/duplicity", line 1540, in <module>
    with_tempdir(main)
  File "/usr/bin/duplicity", line 1534, in with_tempdir
    fn()
  File "/usr/bin/duplicity", line 1385, in main
    do_backup(action)
  File "/usr/bin/duplicity", line 1462, in do_backup
    restore(col_stats)
  File "/usr/bin/duplicity", line 728, in restore
    restore_get_patched_rop_iter(col_stats)):
  File "/usr/lib64/python2.7/site-packages/duplicity/patchdir.py", line 558, in Write_ROPaths
    for ropath in rop_iter:
  File "/usr/lib64/python2.7/site-packages/duplicity/patchdir.py", line 521, in integrate_patch_iters
    for patch_seq in collated:
  File "/usr/lib64/python2.7/site-packages/duplicity/patchdir.py", line 389, in yield_tuples
    setrorps(overflow, elems)
  File "/usr/lib64/python2.7/site-packages/duplicity/patchdir.py", line 378, in setrorps
    elems[i] = iter_list[i].next()
  File "/usr/lib64/python2.7/site-packages/duplicity/patchdir.py", line 107, in filter_path_iter
    for path in path_iter:
  File "/usr/lib64/python2.7/site-packages/duplicity/patchdir.py", line 121, in difftar2path_iter
    tarinfo_list = [tar_iter.next()]
  File "/usr/lib64/python2.7/site-packages/duplicity/patchdir.py", line 339, in next
    self.set_tarfile()
  File "/usr/lib64/python2.7/site-packages/duplicity/patchdir.py", line 333, in set_tarfile
    self.current_fp = self.fileobj_iter.next()
  File "/usr/bin/duplicity", line 765, in get_fileobj_iter
    manifest.volume_info_dict[vol_num])
  File "/usr/bin/duplicity", line 808, in restore_get_enc_fileobj
    fileobj = tdp.filtered_open_with_delete("rb")
  File "/usr/lib64/python2.7/site-packages/duplicity/dup_temp.py", line 120, in filtered_open_with_delete
    fh = FileobjHooked(path.DupPath.filtered_open(self, mode))
  File "/usr/lib64/python2.7/site-packages/duplicity/path.py", line 779, in filtered_open
    return gpg.GPGFile(False, self, gpg_profile)
  File "/usr/lib64/python2.7/site-packages/duplicity/gpg.py", line 217, in __init__
    'logger': self.logger_fp})
  File "/usr/lib64/python2.7/site-packages/duplicity/gpginterface.py", line 374, in run
    create_fhs, attach_fhs)
  File "/usr/lib64/python2.7/site-packages/duplicity/gpginterface.py", line 420, in _attach_fork_exec
    process.thread.start()
  File "/usr/lib64/python2.7/threading.py", line 739, in start
    _start_new_thread(self.__bootstrap, ())
error: can't start new thread

The running processes at that point are:

 3677 tty2     SLl+   7:27 deja-dup --backup --auto
 5333 ?        Ssl    1:02  \_ python2 /usr/bin/duplicity restore --gio --file-to-restore=home/twaugh/.cache/deja-dup/metadata --force sftp://tim@snoopy/mnt/backup/deja-dup-tim-river /home/twaugh/.cache/deja-dup/metadata --verbosity=9 --gpg-options=--no-use-agent --archive-dir=/home/twaugh/.cache/deja-dup --tempdir=/home/twaugh/.cache/deja-dup/tmp --log-fd=20
 6115 ?        SL     0:00      \_ gpg --status-fd 13 --passphrase-fd 22 --logger-fd 11 --batch --no-tty --no-secmem-warning --no-use-agent --decrypt
 6117 ?        SL     0:00      \_ gpg --status-fd 22 --passphrase-fd 26 --logger-fd 14 --batch --no-tty --no-secmem-warning --no-use-agent --decrypt
 6119 ?        SL     0:00      \_ gpg --status-fd 26 --passphrase-fd 30 --logger-fd 23 --batch --no-tty --no-secmem-warning --no-use-agent --decrypt
 6122 ?        SL     0:00      \_ gpg --status-fd 30 --passphrase-fd 34 --logger-fd 27 --batch --no-tty --no-secmem-warning --no-use-agent --decrypt
 6124 ?        SL     0:00      \_ gpg --status-fd 34 --passphrase-fd 38 --logger-fd 31 --batch --no-tty --no-secmem-warning --no-use-agent --decrypt
 6126 ?        SL     0:00      \_ gpg --status-fd 38 --passphrase-fd 42 --logger-fd 35 --batch --no-tty --no-secmem-warning --no-use-agent --decrypt
 6128 ?        SL     0:00      \_ gpg --status-fd 42 --passphrase-fd 46 --logger-fd 39 --batch --no-tty --no-secmem-warning --no-use-agent --decrypt
 6130 ?        SL     0:00      \_ gpg --status-fd 46 --passphrase-fd 50 --logger-fd 43 --batch --no-tty --no-secmem-warning --no-use-agent --decrypt
 6132 ?        SL     0:00      \_ gpg --status-fd 50 --passphrase-fd 54 --logger-fd 47 --batch --no-tty --no-secmem-warning --no-use-agent --decrypt


Version-Release number of selected component (if applicable):
deja-dup-35.6-1.fc26.x86_64
duplicity-0.7.13.1-2.fc26.x86_64

How reproducible:
Don't know.

Additional info:
I have not seen this before, but have been using deja-dup for several years.

Comment 1 Tim Waugh 2017-09-14 08:42:18 UTC
Happened again today.

Comment 2 mcisho 2017-09-30 10:23:24 UTC
Fresh install of F26 at the end of August since when automatic backup has failed regularly with the same error reported above.

Currently using:
deja-dup.x86_64  36.1-1.fc26
duplicity.x86_64  0.7.13.1-2.fc26

Doing a 'Back Up Now...' is usually successful.

Comment 3 Berwyn Powell 2017-10-10 07:56:06 UTC
Getting the same error here. Fedora 26 fails when doing a scheduled backup, I've only had this issue for the last few scheduled backups as it was working fine before then.

Traceback (most recent call last):
  File "/usr/bin/duplicity", line 1548, in <module>
    with_tempdir(main)
  File "/usr/bin/duplicity", line 1534, in with_tempdir
    fn()
  File "/usr/bin/duplicity", line 1383, in main
    do_backup(action)
  File "/usr/bin/duplicity", line 1462, in do_backup
    restore(col_stats)
  File "/usr/bin/duplicity", line 729, in restore
    restore_get_patched_rop_iter(col_stats)):
  File "/usr/lib64/python2.7/site-packages/duplicity/patchdir.py", line 558, in Write_ROPaths
    for ropath in rop_iter:
  File "/usr/lib64/python2.7/site-packages/duplicity/patchdir.py", line 521, in integrate_patch_iters
    for patch_seq in collated:
  File "/usr/lib64/python2.7/site-packages/duplicity/patchdir.py", line 389, in yield_tuples
    setrorps(overflow, elems)
  File "/usr/lib64/python2.7/site-packages/duplicity/patchdir.py", line 378, in setrorps
    elems[i] = iter_list[i].next()
  File "/usr/lib64/python2.7/site-packages/duplicity/patchdir.py", line 107, in filter_path_iter
    for path in path_iter:
  File "/usr/lib64/python2.7/site-packages/duplicity/patchdir.py", line 121, in difftar2path_iter
    tarinfo_list = [tar_iter.next()]
  File "/usr/lib64/python2.7/site-packages/duplicity/patchdir.py", line 339, in next
    self.set_tarfile()
  File "/usr/lib64/python2.7/site-packages/duplicity/patchdir.py", line 333, in set_tarfile
    self.current_fp = self.fileobj_iter.next()
  File "/usr/bin/duplicity", line 766, in get_fileobj_iter
    manifest.volume_info_dict[vol_num])
  File "/usr/bin/duplicity", line 809, in restore_get_enc_fileobj
    fileobj = tdp.filtered_open_with_delete("rb")
  File "/usr/lib64/python2.7/site-packages/duplicity/dup_temp.py", line 120, in filtered_open_with_delete
    fh = FileobjHooked(path.DupPath.filtered_open(self, mode))
  File "/usr/lib64/python2.7/site-packages/duplicity/path.py", line 779, in filtered_open
    return gpg.GPGFile(False, self, gpg_profile)
  File "/usr/lib64/python2.7/site-packages/duplicity/gpg.py", line 217, in __init__
    'logger': self.logger_fp})
  File "/usr/lib64/python2.7/site-packages/duplicity/gpginterface.py", line 374, in run
    create_fhs, attach_fhs)
  File "/usr/lib64/python2.7/site-packages/duplicity/gpginterface.py", line 420, in _attach_fork_exec
    process.thread.start()
  File "/usr/lib64/python2.7/threading.py", line 739, in start
    _start_new_thread(self.__bootstrap, ())
error: can't start new thread

Comment 4 Steve 2017-10-17 05:52:40 UTC
Same error:

duplicity-0.7.14-2.fc26.x86_64
deja-dup-36.2-1.fc26.x86_64

Comment 5 Sébastien Lerique 2017-10-21 08:33:08 UTC
Also here, on up-to-date Arch Linux:

duplicity 0.7.14-1
deja-dup 36.2-1

Comment 6 Heiko Adams 2017-10-22 10:13:53 UTC
Same error with Fedora 27

$  rpm -q deja-dup duplicity
deja-dup-36.2-1.fc27.x86_64
duplicity-0.7.14-1.fc27.x86_64

Comment 7 Tim Waugh 2017-10-26 08:18:49 UTC
Similar error I also sometimes see:

Traceback (most recent call last):
  File "/usr/bin/duplicity", line 1548, in <module>
    with_tempdir(main)
  File "/usr/bin/duplicity", line 1534, in with_tempdir
    fn()
  File "/usr/bin/duplicity", line 1383, in main
    do_backup(action)
  File "/usr/bin/duplicity", line 1409, in do_backup
    action).set_values()
  File "/usr/lib64/python2.7/site-packages/duplicity/collections.py", line 718, in set_values
    self.get_backup_chains(partials + backend_filename_list)
  File "/usr/lib64/python2.7/site-packages/duplicity/collections.py", line 844, in get_backup_chains
    add_to_sets(f)
  File "/usr/lib64/python2.7/site-packages/duplicity/collections.py", line 832, in add_to_sets
    if set.add_filename(filename):
  File "/usr/lib64/python2.7/site-packages/duplicity/collections.py", line 102, in add_filename
    self.set_manifest(filename)
  File "/usr/lib64/python2.7/site-packages/duplicity/collections.py", line 153, in set_manifest
    self.set_files_changed()
  File "/usr/lib64/python2.7/site-packages/duplicity/collections.py", line 129, in set_files_changed
    mf = self.get_manifest()
  File "/usr/lib64/python2.7/site-packages/duplicity/collections.py", line 254, in get_manifest
    return self.get_local_manifest()
  File "/usr/lib64/python2.7/site-packages/duplicity/collections.py", line 233, in get_local_manifest
    return manifest.Manifest().from_string(manifest_buffer)
  File "/usr/lib64/python2.7/site-packages/duplicity/manifest.py", line 218, in from_string
    for match in vi_iterator:
MemoryError

Comment 8 Jason Elwell 2017-10-30 13:17:48 UTC
Getting the same errors as Tim and Berwyn: 'error: can't start new thread'.  Running KDE as desktop environment.  Just for laughs, see also: Ubuntu launchpad bug ID: 1727653

$ uname -a 
Linux localhost 4.13.9-200.fc26.x86_64 #1 SMP Mon Oct 23 13:52:45 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
$ rpm -qa |grep dup
deja-dup-nautilus-36.2-1.fc26.x86_64
duplicity-0.7.14-2.fc26.x86_64
deja-dup-36.2-1.fc26.x86_64

Problem was _not_ recreated by running 'deja-dup --backup --auto'

Comment 9 Steve 2017-11-03 04:30:45 UTC
Hello, nobody cares?

Same bug on:

duplicity-0.7.14-2.fc26.x86_64
deja-dup-36.3-1.fc26.x86_64

Comment 10 Steve 2017-11-18 06:19:47 UTC
Same bug in Fedora 27. 

duplicity-0.7.15-1.fc27.x86_64
deja-dup-36.3-1.fc27.x86_64

Tim Waugh, can You please change the Version to 27 since i can't do that?

Comment 11 Tim Waugh 2017-11-20 09:36:50 UTC
I still see the "error: can't start new thread" traceback (this bug) sometimes, but not "MemoryError" (bug #1492288).

Comment 12 Tim Waugh 2017-12-01 09:21:31 UTC
Still seen with:

duplicity-0.7.15-1.fc27.x86_64
deja-dup-37.0-1.fc27.x86_64

Comment 13 John Stracke 2018-02-16 02:45:03 UTC
I see this consistently, every time Fedora 27 does a backup.

duplicity-0.7.16-1.fc27.x86_64
deja-dup-37.1-1.fc27.x86_64

Comment 14 Gwyn Ciesla 2018-02-26 19:29:14 UTC
Please see if the 0.7.17 build of duplicity, in koji, helps.

Comment 15 Tim Waugh 2018-03-01 09:57:56 UTC
I still see this issue with:

duplicity-0.7.17-2.fc27.x86_64
deja-dup-37.1-1.fc27.x86_64

Comment 16 Herbert 2018-05-11 06:40:32 UTC
Today I got the following error when updating:

# dnf update -y
Last metadata expiration check: 0:00:20 ago on Fri 11 May 2018 08:32:08 AM CEST.
Dependencies resolved.

 Problem 1: cannot install the best update candidate for package deja-dup-37.1-1.fc26.x86_64
  - nothing provides python2-gobject-base needed by deja-dup-37.1-4.fc26.x86_64
 Problem 2: cannot install the best update candidate for package duplicity-0.7.16-1.fc26.x86_64
  - nothing provides python2-dropbox needed by duplicity-0.7.17-2.fc26.x86_64
 Problem 3: package deja-dup-nautilus-37.1-4.fc26.x86_64 requires deja-dup(x86-64) = 37.1-4.fc26, but none of the providers can be installed
  - cannot install the best update candidate for package deja-dup-nautilus-37.1-1.fc26.x86_64
  - nothing provides python2-gobject-base needed by deja-dup-37.1-4.fc26.x86_64
==========================================================================================================================================================================================================================================
 Package                                                        Arch                                                Version                                                    Repository                                            Size
==========================================================================================================================================================================================================================================
Skipping packages with broken dependencies:
 deja-dup                                                       x86_64                                              37.1-4.fc26                                                updates                                              1.0 M
 deja-dup-nautilus                                              x86_64                                              37.1-4.fc26                                                updates                                               24 k
 duplicity                                                      x86_64                                              0.7.17-2.fc26                                              updates                                              557 k

Transaction Summary
==========================================================================================================================================================================================================================================
Skip  3 Packages

Nothing to do.
Complete!


# rpm -qa | grep dup
duplicity-0.7.16-1.fc26.x86_64
deja-dup-37.1-1.fc26.x86_64
deja-dup-nautilus-37.1-1.fc26.x86_64

Comment 17 John Stracke 2018-06-17 10:20:15 UTC
I finally got around to trying the backup, and it worked this time.

$ rpm -q -a | grep dup
deja-dup-nautilus-38.0-1.fc27.x86_64
deja-dup-38.0-1.fc27.x86_64
duplicity-0.7.17-2.fc27.x86_64

Thanks!

Comment 18 Ben Cotton 2018-11-27 15:09:56 UTC
This message is a reminder that Fedora 27 is nearing its end of life.
On 2018-Nov-30  Fedora will stop maintaining and issuing updates for
Fedora 27. It is Fedora's policy to close all bug reports from releases
that are no longer maintained. At that time this bug will be closed as
EOL if it remains open with a Fedora  'version' of '27'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version' 
to a later Fedora version.

Thank you for reporting this issue and we are sorry that we were not 
able to fix it before Fedora 27 is end of life. If you would still like 
to see this bug fixed and are able to reproduce it against a later version 
of Fedora, you are encouraged  change the 'version' to a later Fedora 
version prior this bug is closed as described in the policy above.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events. Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.

Comment 19 Ben Cotton 2018-11-30 20:59:41 UTC
Fedora 27 changed to end-of-life (EOL) status on 2018-11-30. Fedora 27 is
no longer maintained, which means that it will not receive any further
security or bug fix updates. As a result we are closing this bug.

If you can reproduce this bug against a currently maintained version of
Fedora please feel free to reopen this bug against that version. If you
are unable to reopen this bug, please file a new report against the
current release. If you experience problems, please add a comment to this
bug.

Thank you for reporting this bug and we are sorry it could not be fixed.


Note You need to log in before you can comment on or make changes to this bug.