Bug 863881 - liblvm2app: property "origin" returns "" for thin snapshots
Summary: liblvm2app: property "origin" returns "" for thin snapshots
Alias: None
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: lvm2
Version: 6.5
Hardware: Unspecified
OS: Unspecified
Target Milestone: rc
: ---
Assignee: Zdenek Kabelac
QA Contact: Cluster QE
Depends On:
TreeView+ depends on / blocked
Reported: 2012-10-07 23:03 UTC by benscott
Modified: 2013-02-21 08:14 UTC (History)
11 users (show)

Fixed In Version: lvm2-2.02.98-1.el6
Doc Type: Bug Fix
Doc Text:
Unimplemented lvm2app support has caused to report incorrect values for thin snapshots "origin" field. Code has been updated to return correct answer for lvm_lv_get_property(lv, "origin") query.
Clone Of:
Last Closed: 2013-02-21 08:14:24 UTC
Target Upstream Version:

Attachments (Terms of Use)

System ID Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2013:0501 normal SHIPPED_LIVE lvm2 bug fix and enhancement update 2013-02-20 21:30:45 UTC

Description benscott 2012-10-07 23:03:20 UTC
Description of problem:

Version-Release number of selected component (if applicable):

How reproducible:

Steps to Reproduce:
Actual results:

Expected results:

Additional info:

Comment 1 benscott 2012-10-07 23:12:16 UTC
When using the lvm2app library get property function:

        value = lvm_lv_get_property(lvmLV, "origin");
        if (value.is_valid) {
            m_origin = value.value.string;

the origin of non-thin snapshots is returned as expected
but the origin of thin snapshots of thin volumes is "".

  LV         VG      Attr      LSize Pool     Origin    Data%  Move Log
  Pool_One   MyGroup twi-a-tz- 1.00g                     
  fat_snap1  MyGroup swi-a-s-- 2.00g          thin_vol2   
  thin_snap1 MyGroup Vwi-a-tz- 2.00g Pool_One thin_vol2   
  thin_vol2  MyGroup owi-a-tz- 2.00g Pool_One             

~# lvs --version
  LVM version:     2.02.98(2)-git (2012-08-24)
  Library version: 1.02.77-git (2012-08-24)
  Driver version:  4.22.0

Comment 3 Zdenek Kabelac 2012-10-12 11:12:11 UTC
Fixed upstream with commit:


Here is simple lvm2api test program which should pass now:

# Create pool & thin & snap LVs

lvcreate -L5M -T vg/pool
lvcreate -V1M -T vg/pool -n thin
lvcreate -s vg/thin -n snap

#include "lvm2app.h"

int main(int argc, char *argv[])
	lvm_t handle;
	vg_t vg;
	lv_t lv;
	struct lvm_property_value v;

	handle = lvm_init(NULL);
	vg = lvm_vg_open(handle, argv[1], "r", 0);
	lv = lvm_lv_from_name(vg, "snap");
	v = lvm_lv_get_property(lv, "origin");


	return (v.is_valid && (strcmp(v.value.string, "thin") == 0)) ? 0 : 1;

Comment 6 errata-xmlrpc 2013-02-21 08:14:24 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.


Note You need to log in before you can comment on or make changes to this bug.