rdiffweb fails to start after a Fedora upgrade

15 views
Skip to first unread message

gary test2021

unread,
Dec 22, 2024, 12:55:07 AM12/22/24
to rdiffweb
Hello,

I had rdiff-backup 2.2.6 running on Fedora 39 installed with the "Option 2. PyPi repository" directions.   I created a service unit, and it was starting automatically.   It was working flawlessly.

I upgraded tonight to Fedora 41, and rdiffweb can no longer start, either as a service or from the command line.   I get a similar error on both.

Service error message
---------------------------------------------------------------------------------------------------------------
# systemctl status rdiffweb
× rdiffweb.service - Rdiffweb Server
     Loaded: loaded (/etc/systemd/system/rdiffweb.service; enabled; preset: disabled)
    Drop-In: /usr/lib/systemd/system/service.d
             └─10-timeout-abort.conf, 50-keep-warm.conf
     Active: failed (Result: exit-code) since Sat 2024-12-21 19:04:24 PST; 6min ago
   Duration: 2.643s
 Invocation: a5dc6af8367d4fb0bb7b12f91792c790
       Docs: https://rdiffweb.org/
    Process: 890 ExecStart=/usr/local/bin/rdiffweb (code=exited, status=1/FAILURE)
   Main PID: 890 (code=exited, status=1/FAILURE)
   Mem peak: 8.5M
        CPU: 118ms

Dec 21 19:04:22 fireplace systemd[1]: Started rdiffweb.service - Rdiffweb Server.
Dec 21 19:04:24 fireplace python3[890]: detected unhandled Python exception in '/usr/local/bin/rdiffweb'
Dec 21 19:04:24 fireplace rdiffweb[890]: Traceback (most recent call last):
Dec 21 19:04:24 fireplace rdiffweb[890]:   File "/usr/local/bin/rdiffweb", line 5, in <module>
Dec 21 19:04:24 fireplace rdiffweb[890]:     from rdiffweb.main import main
Dec 21 19:04:24 fireplace rdiffweb[890]: ModuleNotFoundError: No module named 'rdiffweb'
Dec 21 19:04:24 fireplace systemd[1]: rdiffweb.service: Main process exited, code=exited, status=1/FAILURE
Dec 21 19:04:24 fireplace systemd[1]: rdiffweb.service: Failed with result 'exit-code'.


Command line error message
---------------------------------------------------------------------------------------------------------------
# rdiffweb
Traceback (most recent call last):
  File "/usr/local/bin/rdiffweb", line 5, in <module>
    from rdiffweb.main import main
ModuleNotFoundError: No module named 'rdiffweb'
---------------------------------------------------------------------------------------------------------------

Fedora 39 had Python 3.12.1-2.fc39
Fedora 41 has Python 3.13.0-1.fc41

The upgrade moved the site packages to the correct location for 3.13.

# ls -1d /usr/lib64/python3*/site-packages/rdi*
/usr/lib64/python3.13/site-packages/rdiff_backup
/usr/lib64/python3.13/site-packages/rdiffbackup
/usr/lib64/python3.13/site-packages/rdiff_backup-2.2.6-py3.13.egg-info

Does anyone know how to resolve this?   I haven't tried reinstalling or upgrading the version yet.

Thank you.



gary test2021

unread,
Dec 22, 2024, 6:12:09 PM12/22/24
to rdiffweb
Ahh, I did some more work on this, and figured it out.   I've got it working now.   Additional details for anyone who is interested.

First, I was forgetting that rdiff-backup and rdiffweb are two separate software packages.

I reinstalled rdiffweb

# pip install rdiffweb

It still failed to start though, as it seems there's an undocumented dependency on pytz.

# systemctl status rdiffweb
× rdiffweb.service - Rdiffweb Server
     Loaded: loaded (/etc/systemd/system/rdiffweb.service; enabled; preset: disabled)
    Drop-In: /usr/lib/systemd/system/service.d
             └─10-timeout-abort.conf, 50-keep-warm.conf
     Active: failed (Result: exit-code) since Sun 2024-12-22 14:42:01 PST; 2s ago
   Duration: 1.274s
 Invocation: eabff22587c94cb696a6079bad30a047
       Docs: https://rdiffweb.org/
    Process: 5090 ExecStart=/usr/local/bin/rdiffweb (code=exited, status=1/FAILURE)
   Main PID: 5090 (code=exited, status=1/FAILURE)
   Mem peak: 27.9M
        CPU: 434ms

Dec 22 14:42:01 fireplace rdiffweb[5090]:     from rdiffweb.main import main
Dec 22 14:42:01 fireplace rdiffweb[5090]:   File "/usr/local/lib/python3.13/site-packages/rdiffweb/main.py", line 25, in <module>
Dec 22 14:42:01 fireplace rdiffweb[5090]:     from rdiffweb.core.librdiff import find_rdiff_backup
Dec 22 14:42:01 fireplace rdiffweb[5090]:   File "/usr/local/lib/python3.13/site-packages/rdiffweb/core/librdiff.py", line 36, in <module>
Dec 22 14:42:01 fireplace rdiffweb[5090]:     from rdiffweb.tools.i18n import gettext_lazy as _
Dec 22 14:42:01 fireplace rdiffweb[5090]:   File "/usr/local/lib/python3.13/site-packages/rdiffweb/tools/i18n.py", line 99, in <module>
Dec 22 14:42:01 fireplace rdiffweb[5090]:     import pytz
Dec 22 14:42:01 fireplace rdiffweb[5090]: ModuleNotFoundError: No module named 'pytz'
Dec 22 14:42:01 fireplace systemd[1]: rdiffweb.service: Main process exited, code=exited, status=1/FAILURE
Dec 22 14:42:01 fireplace systemd[1]: rdiffweb.service: Failed with result 'exit-code'.


I reinstalled pytz after that, and everything is working again.

# pip install pytz

Regards,
Gary

Patrik Dufresne

unread,
Jan 6, 2025, 10:11:17 AMJan 6
to rdiffweb
Hello Gary,

Thanks for pointing this out.

Indeed, there is a dependency to pytz. The dependency was not explicit and was fetched by another dependency (apscheduler). So it went unnoticed. But the recent version of apscheduler no longer depends on pytz. So that is why you are facing this issue.

Next version of rdiffweb will get it fixed.



--
You received this message because you are subscribed to the Google Groups "rdiffweb" group.
To unsubscribe from this group and stop receiving emails from it, send an email to rdiffweb+u...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/rdiffweb/5189ef47-8952-42a9-91e0-61776f1f9a3an%40googlegroups.com.


--

IKUS Software
Reply all
Reply to author
Forward
0 new messages