blivet
blivet copied to clipboard
Coalesce conflicts with UUID for cloned LVM groups under the same identifier
Error Message
Unknown error occured. Blivet-gui will be terminated. Failed to init blivet, multiple LVM groups with the same name (
Expected Behavior
- Launch blivet-gui with UUID as volume token instead of name
- Default the runtime to UUID based calls as provided by
vgdisplay | grep uuid
when multiple volume groups with the same names are detected
Temporary Workaround: Rename duplicated instances with vgrename -v <uuid> <new_name>
which requires volume name restore for root LVM containers
Traceback
File "/usr/lib/python3.8/site-packages/blivetgui/communication/server.py", line 270, in _blivet_utils_init
self.blivet_utils = BlivetUtils(*args)
File "/usr/lib/python3.8/site-packages/blivetgui/blivet_utils.py", line 206, in __init__
self.blivet_reset()
File "/usr/lib/python3.8/site-packages/blivetgui/blivet_utils.py", line 1497, in blivet_reset
self.storage.reset()
File "/usr/lib/python3.8/site-packages/blivet/threads.py", line 53, in run_with_lock
return m(*args, **kwargs)
File "/usr/lib/python3.8/site-packages/blivet/blivet.py", line 141, in reset
self.devicetree.populate(cleanup_only=cleanup_only)
File "/usr/lib/python3.8/site-packages/blivet/threads.py", line 53, in run_with_lock
return m(*args, **kwargs)
File "/usr/lib/python3.8/site-packages/blivet/populator/populator.py", line 414, in populate
self._populate()
File "/usr/lib/python3.8/site-packages/blivet/threads.py", line 53, in run_with_lock
return m(*args, **kwargs)
File "/usr/lib/python3.8/site-packages/blivet/populator/populator.py", line 459, in _populate
self.handle_device(dev)
File "/usr/lib/python3.8/site-packages/blivet/threads.py", line 53, in run_with_lock
return m(*args, **kwargs)
File "/usr/lib/python3.8/site-packages/blivet/populator/populator.py", line 277, in handle_device
self.handle_format(info, device)
File "/usr/lib/python3.8/site-packages/blivet/threads.py", line 53, in run_with_lock
return m(*args, **kwargs)
File "/usr/lib/python3.8/site-packages/blivet/populator/populator.py", line 305, in handle_format
helper_class(self, info, device).run()
File "/usr/lib/python3.8/site-packages/blivet/populator/helpers/lvm.py", line 408, in run
self._add_vg_device()
File "/usr/lib/python3.8/site-packages/blivet/populator/helpers/lvm.py", line 368, in _add_vg_device
raise DuplicateVGError("multiple LVM volume groups with the same name (%s)" % vg_name)
blivet.errors.DuplicateVGError: multiple LVM volume groups with the same name (fedora_localhost-live)
------------------------------
File "/usr/bin/blivet-gui", line 115, in <module>
main()
File "/usr/bin/blivet-gui", line 109, in main
BlivetGUI(client)
File "/usr/lib/python3.8/site-packages/blivetgui/blivetgui.py", line 106, in __init__
self.blivet_init()
File "/usr/lib/python3.8/site-packages/blivetgui/blivetgui.py", line 793, in blivet_init
self._reraise_exception(ret.exception, ret.traceback, message,
File "/usr/lib/python3.8/site-packages/blivetgui/blivetgui.py", line 236, in _reraise_exception
raise type(exception)(message + "\n" + str(exception) + "\n" + traceback)
Thank you for the report, I've moved the issue from blivet-gui to blivet, there's nothing I can do about this in the GUI code. Unfortunately we'll probably not going to fix this -- blivet is using devices names as a unique identifier internally and changing this would require a lot of changes, also the library we use for LVM manipulation doesn't support specifying VGs by UUID. I'm not saying we won't fix this issue, but definitely won't happen in near future and we currently consider setups with duplicate VG names to be unsupported, sorry.