1
0
mirror of git://sourceware.org/git/lvm2.git synced 2024-12-21 13:34:40 +03:00
lvm2/lib
Peter Rajnoha e573eca554 metadata: add infrastructure to track LV history
Add new structures and new fields in existing structures to support
tracking history of LVs (the LVs which don't exist - the have been
removed already):

  - new "struct historical_logical_volume"
    This structure keeps information specific to historical LVs
    (historical LV is very reduced form of struct logical_volume +
     it contains a few specific fields to track historical LV
     properties like removal time and connections among other LVs).

  - new "struct generic_logical_volume"
    Wrapper for "struct historical_logical_volume" and
    "struct logical_volume" to make it possible to handle volumes
    in uniform way, no matter if it's live or historical one.

  - new "struct glv_list"
    Wrapper for "struct generic_logical_volume" so it can be
    added to a list.

  - new "indirect_glvs" field in "struct logical_volume"
    List that stores references to all indirect users of this LV - this
    interconnects live LV with historical descendant LVs or even live
    descendant LVs.

  - new "indirect_origin" field in "struct lv_segment"
    Reference to indirect origin of this segment - this interconnects
    live LV (segment) with historical ancestor.

  - new "this_glv" field in "struct logical_volume"
    This references an existing generic_logical_volume wrapper for this
    LV, if used. It can be NULL if not needed - which means we're not
    handling historical LVs at all.

  - new "historical_lvs" field in "struct volume group
    List of all historical LVs read from VG metadata.
2016-03-03 11:26:51 +01:00
..
activate cleanup: use lv_is_partial 2016-03-03 10:17:03 +01:00
cache cleanup: drop unneeded test 2016-02-25 23:30:25 +01:00
cache_segtype doc: change fsf address 2016-01-21 12:11:37 +01:00
commands pvs: replace 'unknown device' with [unknown] 2016-03-01 11:12:03 -06:00
config pvs: replace 'unknown device' with [unknown] 2016-03-01 11:12:03 -06:00
datastruct doc: change fsf address 2016-01-21 12:11:37 +01:00
device pvs: replace 'unknown device' with [unknown] 2016-03-01 11:12:03 -06:00
display doc: change fsf address 2016-01-21 12:11:37 +01:00
error doc: change fsf address 2016-01-21 12:11:37 +01:00
filters filter: do not check for suspended devs in filter-usable in lvmetad mode 2016-02-03 14:57:36 +01:00
format1 redefine pvcreate structs 2016-02-25 09:14:10 -06:00
format_pool redefine pvcreate structs 2016-02-25 09:14:10 -06:00
format_text redefine pvcreate structs 2016-02-25 09:14:10 -06:00
freeseg doc: change fsf address 2016-01-21 12:11:37 +01:00
label doc: change fsf address 2016-01-21 12:11:37 +01:00
locking lvmlockd: fix sparse snapshot case 2016-02-23 15:45:25 -06:00
log gcc: cleanup some sign warnings 2016-02-23 12:25:25 +01:00
lvmpolld doc: change fsf address 2016-01-21 12:11:37 +01:00
metadata metadata: add infrastructure to track LV history 2016-03-03 11:26:51 +01:00
mirror doc: change fsf address 2016-01-21 12:11:37 +01:00
misc pvs: replace 'unknown device' with [unknown] 2016-03-01 11:12:03 -06:00
mm doc: change fsf address 2016-01-21 12:11:37 +01:00
properties doc: change fsf address 2016-01-21 12:11:37 +01:00
raid gcc: cleanup some sign warnings 2016-02-23 12:25:25 +01:00
replicator doc: change fsf address 2016-01-21 12:11:37 +01:00
report metadata: add infrastructure to track LV history 2016-03-03 11:26:51 +01:00
snapshot doc: change fsf address 2016-01-21 12:11:37 +01:00
striped doc: change fsf address 2016-01-21 12:11:37 +01:00
thin thin: report PERCENT_INVALID for failed pool 2016-02-18 16:45:42 +01:00
unknown doc: change fsf address 2016-01-21 12:11:37 +01:00
uuid doc: change fsf address 2016-01-21 12:11:37 +01:00
zero doc: change fsf address 2016-01-21 12:11:37 +01:00
Makefile.in doc: change fsf address 2016-01-21 12:11:37 +01:00