Deep merging issue on Ubuntu ARM64 22.04 #622
Labels
No Label
bug
data loss
design finalized
good first issue
new feature area
question / support
security
waiting for response
No Milestone
No Assignees
3 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: borgmatic-collective/borgmatic#622
Loading…
Reference in New Issue
No description provided.
Delete Branch "%!s(<nil>)"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Hi
What I'm trying to do and why
I try to use deep merging configuration. Deploying same installation and configurations on different OS but not working on Ubuntu.
No issue without deep merge.
Steps to reproduce (if a bug)
2 yaml files
test.yml
andcommon.yml
with very basic configurationActual behavior (if a bug)
With previous configuration, trying to list,create,... crash
Expected behavior (if a bug)
Listing repository or create new backup
Without using deep merging it's working well
Other notes / implementation ideas
Environment
borgmatic version: [version here]
borgmatic installation method: [e.g., Debian package, Docker container, etc.]
Pip
Borg version: [version here]
Python version: [version here]
operating system and version: [OS here]
Same configuration files, using same version of borgmatic/borg on Debian and Archlinux are ok.
Thanks for the detailed issue report! Looking at the error message, my guess is that the version of
ruamel.yaml
you're using doesn't work with borgmatic. You can find the version installed via:pip show ruamel.yaml | grep ^Version
I think
ruamel.yaml
is installed as a dependancies via pip, sadly it's latestBelow a list of all pip packages in my venv
Can't understand / reproduce what's wrong....Attach a requirements.txt
That's odd.. I'm using the same version of
ruamel.yaml
locally but I'm not getting any errors with includes. Someone else is getting the same error as you using Python 3.11, but you're on 3.10 (as am I). Let me look into this and see if I can manage to reproduce the issue.Unfortunately, I still haven't been able to reproduce this. What I tried was running an Ubuntu 22.04 Docker image, creating a venv inside of it, and then installing the packages from your
requirements.txt
(and the system packages necessary for them to build). Upon running borgmatic with your sample configuration (changed to use a local repository), it runs just fine without error!Is there anything else particular about your Ubuntu system that might be relevant to this issue? And are you sure the reported version of
ruamel.yaml
, for instance, is the version inside of your venv instead of a package installed at the system level?Thanks for your patience here.
Thanks, I have try to pop a new vm with same configuration and can't reproduce too. Yes
runamel.yaml
is in my venv.I'll try to remove every irrelevant python package at system level to see if it helps. One thing I didn't mention
(not sure it's relevant): it's an arm64 systemI've found a way to reproduce it ! Using a docker ubuntu:22.04 arm64 image (I'm using an oracle cloud instance)
Awesome, thank you! I'll see if I can get access to an arm64 machine and give that a shot. I may also have an alternate approach to integrating the includes with
ruamel.yaml
that may work better.Finally got a repro, and I have a fix in hand, too! I'll do some additional testing and let you know when it's integrated.
Deep merging issue on Ubuntu 22.04to Deep merging issue on Ubuntu ARM64 22.04Awesome, excellent work.Will be happy to test.
Okay, this should be fixed in master and will be part of the next release. If you'd like to test before then (totally optional), feel free to download an updated copy of
load.py
and use it to overwrite your local/opt/borgmatic/lib/python3.10/site-packages/borgmatic/config/load.py
file. Thanks again for all your help in diagnosing this!This updated copy of
load.py
fixed my problem with Python 3.11.Just released in borgmatic 1.7.6!