Description of problem: LVMThinPoolDevice is an instance of LVMLogicalVolumeDevice. I don't think that it should be like that. Thin pools are probably somewhere in between a volume group and a logical volume, but I don't think they are logical volumes. What would be LVMThinLogicalVolume then? Version-Release number of selected component (if applicable): python-blivet-0.22-1.fc21.noarch Steps to Reproduce: 1. Have a thin pool present on your system. 2. Run the following code snippet import blivet b = blivet.Blivet() b.reset() tp = b.thinpools[0] print type(tp) # <class 'blivet.devices.LVMThinPoolDevice'> isinstance(tp, blivet.devices.LVMLogicalVolumeDevice) # True Actual results: LVMThinPoolDevice is an instance of LVMLogicalVolumeDevice Expected results: LVMThinPoolDevice is an instance of LVMVolumeGroupDevice? Not sure here.
Both thin pools and thin volumes are special types of logical volume, so their classes inherit from LVMLogicalVolumeDevice. If you want to check what type a device is you should either use its "type" attribute or you should check using isinstance but check more specific classes first.