rdiff-backup-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Numerical result out of range in rdb 2.2.6?


From: Eric L.
Subject: Re: Numerical result out of range in rdb 2.2.6?
Date: Tue, 18 Jun 2024 13:00:32 +0200
User-agent: Roundcube Webmail/1.3.7

Hi Derek,

I won't be very helpful but the issue appears within the open function of Python, so not in the code of rdiff-backup (which doesn't mean that we can't do anything about it, just that it is more difficult to troubleshoot).

From the look of it and knowing what I know about Android and MTP, I guess an issue with either a user/group ID, time stamp or access rights, or even the file descriptor. Android looks like POSIX but it doesn't comply to it so you might have hit one of those corner cases (why now and not before, no clue). I could also imagine that you have an issue with the MTP file system giving up on rdiff-backup opening and closing files with high frequency. MTP isn't known to be the most performant thing in the world, to say the least.

Two more or less helpful hints:

1. solving the issue would probably require reproducing it with Python code to understand the exact cause, before I would be potentially able to find a workaround 2. as an alternative to MTP (urk!), I've been playing with rdiff-backup on my smart-phone with SSH using Termux. I wouldn't say that it was production grade, but it worked (I didn't pursue the idea because I didn't need it, I was just playing around).

KR, Eric

On 14.06.2024 16:26, Derek Atkins wrote:
Hi,

I've recently been attempting to backup my phone using rdiff backup. Last backup was successful 3 months ago (yeah, yeah, I know -- I should backup
more often).

I use mtpfs-simple to mount the phone as a file system on my Fedora-38
system and use rdiff-backup (rdiff-backup-2.2.6-3.fc38.x86_64) to sync it
to my laptop.  However, lately RDB has been barfing during the backup.
The exact file where it errors out changes from attempt to attempt, but
the error always appears to be the same:

WARNING: Exception '[Errno 34] Numerical result out of range:
b'/path/to/file'' raised of class '<class 'OSError'>':
File "/usr/lib64/python3.11/site-packages/rdiff_backup/robust.py", line
94, in check_common_error
    return function(*args)
           ^^^^^^^^^^^^^^^
File "/usr/lib64/python3.11/site-packages/rdiff_backup/rpath.py", line
1129, in open
    return open(self.path, mode)
           ^^^^^^^^^^^^^^^^^^^^^

Traceback (most recent call last):
  File "/usr/bin/rdiff-backup", line 33, in <module>
    sys.exit(load_entry_point('rdiff-backup==2.2.6', 'console_scripts',
'rdiff-backup')())

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib64/python3.11/site-packages/rdiffbackup/run.py", line 35,
in main
    sys.exit(main_run(sys.argv[1:]))
             ^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib64/python3.11/site-packages/rdiffbackup/run.py", line 108,
in main_run
    ret_val |= conn_act.run()
               ^^^^^^^^^^^^^^
  File
"/usr/lib64/python3.11/site-packages/rdiffbackup/actions/backup.py",
line 154, in run
    backup.mirror_and_increment_compat200(
File "/usr/lib64/python3.11/site-packages/rdiff_backup/backup.py", line
53, in mirror_and_increment_compat200
    DestS.patch_and_increment(dest_rpath, source_diffiter, inc_rpath)
File "/usr/lib64/python3.11/site-packages/rdiff_backup/backup.py", line
208, in patch_and_increment
    for diff in rorpiter.FillInIter(source_diffiter, dest_rpath):
  File "/usr/lib64/python3.11/site-packages/rdiff_backup/rorpiter.py",
line 406, in FillInIter
    for rp in rpiter:
File "/usr/lib64/python3.11/site-packages/rdiff_backup/backup.py", line
134, in get_diffs
    attach_snapshot(diff_rorp, src_rp)
File "/usr/lib64/python3.11/site-packages/rdiff_backup/backup.py", line
96, in attach_snapshot
    fileobj = robust.check_common_error(
              ^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib64/python3.11/site-packages/rdiff_backup/robust.py", line
94, in check_common_error
    return function(*args)
           ^^^^^^^^^^^^^^^
File "/usr/lib64/python3.11/site-packages/rdiff_backup/rpath.py", line
1129, in open
    return open(self.path, mode)
           ^^^^^^^^^^^^^^^^^^^^^
OSError: [Errno 34] Numerical result out of range: b'/path/to/file'


The command-line is:

rdiff-backup --exclude-globbing-filelist /path/of/my-excludes
/path/to/source-dir /path/of/backup-dir


Any ideas?

Version 2.2.6 is the latest version available on F38.

-derek




reply via email to

[Prev in Thread] Current Thread [Next in Thread]