LVM snapshots seem to have extremely poor performance It seems that dm-thin snapshots use a new implementation:

Another significant feature is support for an arbitrary depth of recursive snapshots (snapshots of snapshots of snapshots ...). The previous implementation of snapshots did this by chaining together lookup tables, and so performance was O(depth). This new implementation uses a single data structure to avoid this degradation with depth. Fragmentation may still be an issue, however, in some scenarios.

However, dm-thin seems to be pretty bare bones. In the documentation they say that end-users are advised to use lvm2. lvm seems to have lvm-thin, so I'm wondering whether lvm-thin leverages dm-thin or whether they are different implementations and they meant that the future version of lvm (that don't exist yet) might leverage dm-thin.

  1. LVM2 is the current version of LVM, not a future version.

    $ rpm -q lvm
    package lvm is not installed
    $ rpm -q lvm2
              ^ lvm 2.02 has been around for some time :)
  2. LVM is very closely tied to DM; "in fact, DM is maintained by the LVM core team". There's no independent implement of thin provisioning in the LVM layer; it depends on DM. AFAIK there's only one "thin provisioning" implementation in DM, so its nice and simple.

I think you're right this isn't explained in any prominent documentation for lvmthin. You could look at the LVM source code, or this blog article by a user.

Also if you use lvmthin, you will notice the devices you're using are still /dev/mapper/... or something related, which is straightforward to verify as being a DM device.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.