Bug 863881
| Summary: | liblvm2app: property "origin" returns "" for thin snapshots | ||
|---|---|---|---|
| Product: | Red Hat Enterprise Linux 6 | Reporter: | benscott |
| Component: | lvm2 | Assignee: | Zdenek Kabelac <zkabelac> |
| Status: | CLOSED ERRATA | QA Contact: | Cluster QE <mspqa-list> |
| Severity: | unspecified | Docs Contact: | |
| Priority: | medium | ||
| Version: | 6.5 | CC: | agk, cmarthal, coughlan, dwysocha, heinzm, jbrassow, msnitzer, prajnoha, prockai, thornber, zkabelac |
| Target Milestone: | rc | ||
| Target Release: | --- | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
| Whiteboard: | |||
| 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.
|
Story Points: | --- |
| Clone Of: | Environment: | ||
| Last Closed: | 2013-02-21 08:14:24 UTC | Type: | Bug |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
| Embargoed: | |||
|
Description
benscott
2012-10-07 23:03:20 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 "".
~#lvs
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
Fixed upstream with commit: https://www.redhat.com/archives/lvm-devel/2012-October/msg00099.html 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"); lvm_vg_close(vg); lvm_quit(handle); return (v.is_valid && (strcmp(v.value.string, "thin") == 0)) ? 0 : 1; } 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. http://rhn.redhat.com/errata/RHBA-2013-0501.html |