Uploaded image for project: 'RHEL'
  1. RHEL
  2. RHEL-95367

Cannot reinstall system with kickstart, getting "The object with LVM ID xxx doesn't exist"

Linking RHIVOS CVEs to...Migration: Automation ...SWIFT: POC ConversionSync from "Extern...XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Major Major
    • None
    • rhel-10.0
    • python-blivet
    • None
    • Yes
    • Low
    • rhel-storage-management
    • None
    • False
    • False
    • Hide

      None

      Show
      None
    • None
    • Red Hat Enterprise Linux
    • None
    • None
    • None
    • Unspecified
    • Unspecified
    • Unspecified
    • None

      Trying to reinstall a system with 3 disks and one LVM VG+LVs on each disk, the reinstallation fails when recreating the storage:

      Error
      
          An error occurred while activating your storage configuration.
      
          The object with LVM ID 'vg1/swap' doesn't exist
      

      The error is "random", any other LV can show up as error.

      This is a re-installation, so the VGs are effectively present on the disk, then destroyed and re-created.
      It seems the root cause is a race happening between reformating of the disks and deletion of existing LVs as per storage.log:

      DEBUG:blivet:action: [254] destroy format lvmpv on partition vdb1 (id 63)
      DEBUG:blivet:action: [256] destroy device partition vdb1 (id 63)
      DEBUG:blivet:action: [270] destroy format gpt disklabel on disk vdb (id 54)
      DEBUG:blivet:action: [272] destroy format None on disk vdb (id 54)
      DEBUG:blivet:action: [275] create format gpt disklabel on disk vdb (id 54)
      DEBUG:blivet:action: [307] create device partition vdb1 (id 304)
      DEBUG:blivet:action: [308] create format lvmpv on partition vdb1 (id 304)
      DEBUG:blivet:                DiskLabel.reset_parted_disk: device: /dev/vdb ;
      DEBUG:blivet:                DiskLabel.reset_parted_disk: device: /dev/vdb ;
      DEBUG:blivet:                PartitionDevice.pre_commit_fixup: vdb1 ;
      DEBUG:blivet:                PartitionDevice.pre_commit_fixup: vdb1 ;
      DEBUG:blivet:sector-based lookup found partition vdb1
      DEBUG:blivet:                    PartitionDevice._set_parted_partition: vdb1 ;
      DEBUG:blivet:device vdb1 new parted_partition parted.Partition instance --
        number: 1  path: /dev/vdb1  type: 0
      DEBUG:blivet:action: [254] destroy format lvmpv on partition vdb1 (id 63)
      DEBUG:blivet:action: [256] destroy device partition vdb1 (id 63)
      DEBUG:blivet:action: [270] destroy format gpt disklabel on disk vdb (id 54)
      DEBUG:blivet:lvm filter: device /dev/vdb1 added to the list of allowed devices
      DEBUG:blivet:action: [275] create format gpt disklabel on disk vdb (id 54)
      DEBUG:blivet:lvm filter: device /dev/vdb1 added to the list of allowed devices
      DEBUG:blivet:action: [307] create device partition vdb1 (id 304)
      DEBUG:blivet:action: [308] create format lvmpv on partition vdb1 (id 304)
      DEBUG:blivet:                                     PartitionDevice.setup: vdb1 ; orig: True ; status: True ; controllable: True ;
      DEBUG:blivet:                                     LVMPhysicalVolume.setup: device: /dev/vdb1 ; type: lvmpv ; status: False ;
      

      A workaround is to delete the VGs using a %pre script, but this script should not be necessary.

      Attaching storage.log and kickstart to reproduce (create a UEFI VM with 3 disks).

        1. storage.log
          256 kB
        2. 3.ks
          1 kB

              vtrefny@redhat.com Vojtěch Trefný
              rhn-support-rmetrich Renaud Métrich
              Vojtěch Trefný Vojtěch Trefný
              Release Test Team Release Test Team
              Votes:
              1 Vote for this issue
              Watchers:
              7 Start watching this issue

                Created:
                Updated:
                Resolved: