summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Split part of process-each-pv into process-each-vgreducedev-dct-lvmlockd-AWDavid Teigland2015-07-022-233/+336
| | | | | check_lvmlockd_sanlock works with process-each-pv without the vgreduce parts.
* test suite: set dev size large when using sanlockDavid Teigland2015-07-025-4/+10
|
* Fix global lock with vgremove @tagDavid Teigland2015-07-023-0/+17
| | | | | | A very special case where we need to disable the gl after lockd_gl(ex) to prevent process_each_vg from changing it with lockd_gl(sh).
* Update comment in vgchange about global lockDavid Teigland2015-07-021-7/+5
|
* Add FIXME to create_sanlock_lvDavid Teigland2015-07-021-0/+3
|
* test suite changes for lvmlockdDavid Teigland2015-07-017-52/+80
|
* lvmlockd: allow sanlock io timeout to be specifiedDavid Teigland2015-07-013-5/+12
| | | | | | sanlock uses 10 sec io timeout by default, but there can be times when you want to lower that to speed up sanlock operations, including in the test suite.
* Replace log_error with log_debug for expected caseDavid Teigland2015-07-011-1/+1
| | | | | This is now used to check if dlm is running, so it's not an error.
* Clean up a previous lockspace thread earlier if neededDavid Teigland2015-07-011-0/+11
|
* Remove optimization for skipping unlock after removeDavid Teigland2015-07-011-3/+0
| | | | | This doesn't work when multiple vgs are removed with a single vgremove command.
* Set command exit code to failed when lockd failsDavid Teigland2015-07-011-5/+15
|
* Replace libdaemon assertsDavid Teigland2015-06-302-5/+16
|
* Initialize globals to zeroDavid Teigland2015-06-301-3/+3
|
* Fix use_lvmlockd checksDavid Teigland2015-06-301-21/+60
| | | | | A number of places were wrong, although most didn't matter because they wouldn't be reached.
* Add some log_debug for the lockd pathDavid Teigland2015-06-302-0/+10
|
* silence uninitialized variable warningsDavid Teigland2015-06-301-0/+1
| | | | when building without lvmlockd
* lvconvert: do polling outside of process_each_lvDavid Teigland2015-06-301-8/+7
|
* Add another error check in lockd_gl_createDavid Teigland2015-06-301-2/+6
| | | | Creating a lockd VG without lvmlockd is not allowed.
* Add an internal error checkDavid Teigland2015-06-301-0/+6
|
* polldaemon: fix repeated unlock_and_releaseDavid Teigland2015-06-301-1/+0
|
* Don't use vg->name after release_vgDavid Teigland2015-06-302-3/+3
|
* shared and foreign VG accessDavid Teigland2015-06-309-47/+102
|
* spec: Add lvmlockd systemd unitsMarian Csontos2015-06-301-4/+5
|
* Move lvmlockd initDavid Teigland2015-06-302-37/+33
|
* vgchange --uuid doesn't need lockd_glDavid Teigland2015-06-301-3/+1
|
* list shared VG in lvmsystemidDavid Teigland2015-06-301-6/+19
|
* Improve checks for non-lvmlockd caseDavid Teigland2015-06-303-23/+87
|
* Add lvmlockdDavid Teigland2015-06-3083-130/+14681
|
* locking: Add missing error handling.Alasdair G Kergon2015-06-3012-21/+68
| | | | | Add missing error logging and detection to unlock_vg and callers of sync_local_dev_names etc.
* post-releaseAlasdair G Kergon2015-06-304-2/+8
|
* pre-releasev2_02_123Alasdair G Kergon2015-06-304-5/+7
|
* conf: Regenerate.Alasdair G Kergon2015-06-301-1/+1
| | | | Fix missing --clear-needs-check-flag.
* libdm: Rename struct time_value variables.Alasdair G Kergon2015-06-301-24/+24
| | | | warning: declaration of ‘time’ shadows a global declaration
* report: add support for time (basic)Peter Rajnoha2015-06-306-26/+591
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds support for time values used in reporting fields. The raw values are always stored as number of seconds since epoch. The support that comes with this patch is the basic one which allows only for recognition of strictly formatted date and time in selection criteria (the format follows a subset of formats defined by ISO 8601): date time timezone date: YYYY-MM-DD (or shortly YYYYMMDD) YYYY-MM (shortly YYYYMM), auto DD=1 YYYY, auto MM=01 and DD=01 time: hh:mm:ss (or shortly hhmmss) hh:mm (or shortly hhmm), auto ss=0 hh (or shortly hh), auto mm=0, auto ss=0 timezone (always with + or - sign): +hh:mm or -hh:mm (or shortly +hhmm or -hhmm) +hh or -hh Or directly the time (number of seconds) since Epoch (1970-01-01 00:00:00 UTC) when the number value is prefixed by "@": @number_of_seconds_since_epoch This patch also adds aliases for comparison operators used together with time values which are more intuitive to use: since (as alias for >=) after (as alias for >) until (as alias for <=) before (as alias for <) For example: $ lvmconfig --type full report/time_format time_format="%Y-%m-%d %T %z %Z [%s]" $ lvs -o name,time vg LV Time lvol0 2015-06-28 21:25:41 +0200 CEST [1435519541] lvol1 2015-06-30 03:25:43 +0200 CEST [1435627543] lvol2 2015-04-26 14:52:20 +0200 CEST [1430052740] lvol3 2015-06-30 14:52:23 +0200 CEST [1435668743] $ lvs vg -o name,time -S 'time since "2015-04-26 15:00" && time until "2015-06-30"' LV Time lvol0 2015-06-28 21:25:41 +0200 CEST [1435519541] lvol1 2015-06-30 03:25:43 +0200 CEST [1435627543] lvol3 2015-06-30 14:52:23 +0200 CEST [1435668743] $ lvs vg -o name,time -S 'time since "2015-04-26 15:00" && time until "2015-06-30 6:00"' LV Time lvol0 2015-06-28 21:25:41 +0200 CEST [1435519541] lvol1 2015-06-30 03:25:43 +0200 CEST [1435627543] $ lvs vg -o name,time -S 'time since @1435519541' LV Time lvol0 2015-06-28 21:25:41 +0200 CEST [1435519541] lvol1 2015-06-30 03:25:43 +0200 CEST [1435627543] lvol3 2015-06-30 14:52:23 +0200 CEST [1435668743] This is basic time recognition support that is directly a part of libdevmapper. Recognition of more free-form expressions will be a part of subsequent patches.
* configure: set DEFAULT_FALLBACK_TO_LVM1 in configure and use it in ↵Peter Rajnoha2015-06-306-8/+22
| | | | | | | | | | config_settings.h Just like we have DEFAULT_USE_LVMETAD (or DEFUALT_USE_LVMPOLLD), use fallback_to_lvm1=1 lvm.conf setting if we configured lvm2 with --enable-lvm1-fallback and use fallback_to_lvm1=0 otherwise. Also, generate proper lvm.conf.in with unconfigured value.
* cleanup: report: use internal wrapper for various variables used for ↵Peter Rajnoha2015-06-301-36/+57
| | | | | | | handling reserved values Just a cleanup - wrap several variables we use to handle reserved values into a structure for easier manipulation in the code.
* select: add support for range reserved values and flagging named-only valuesPeter Rajnoha2015-06-305-139/+304
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch allows for registration and recognition of reserved values which are ranges, so they're composed of two values actually to denote the lower and upper bound for the range (stored as an array with exactly two items to define the boundaries). Also, this patch allows for flagging reserved values as named-only which means that such values are not strictly reserved. The strictly reserved values are reserved values as used before this patch. Distinction between strictly-reserved and named-only values is clearly visible with comparisons. Normally, strictly reserved value is not accounted for if we do "greater than" or "lower than" comparisons, for example: 1 2 3 .... | abc - we have "abc" as reserved value for field with value "2" - the value reported for the field is "abc" (or "2", it doesn't matter here) - the selection we're processing is -S 'field < abc' - the result of the selection gives nothing as "abc" is strictly reserved value (bound to "2") and there's no order defined for it and it would only match if we directly compared the value (so -S 'field = abc' would match) With named-only values, the "abc" is named-only value for "2", so selection -S 'field < abc" is the same as using -S 'field < 2'. The "abc" is just an alias for some value so the value or its assigned name can be used equally in selection criteria.
* cleanup: time: error out on incorrect time_format and indentation in ↵Peter Rajnoha2015-06-293-10/+12
| | | | config_settings.h
* lv: time: increase buffer to 4k in lv_time_dupPeter Rajnoha2015-06-291-1/+1
|
* toolcontext: use proper set of chars to check time format againstPeter Rajnoha2015-06-291-2/+2
|
* conf: make time format configurablePeter Rajnoha2015-06-2911-8/+209
| | | | | | | | | | | | | | | | | | | | | | | | Make it possible to define format for time that is displayed. The way the format is defined is equal to the way that is used for strftime function, although not all formatting options as used in strftime are available for LVM2 - the set is restricted (e.g. we do not allow newline to be printed). The lvm.conf comments contain the whole list that LVM2 accepts for time format together with brief description (copied from strftime man page). For example: (defaults used - the format is the same as used before this patch) $ lvs -o+time vg/lvol0 vg/lvol1 LV VG Attr LSize Time lvol0 vg -wi-a----- 4.00m 2015-06-25 16:18:34 +0200 lvol1 vg -wi-a----- 4.00m 2015-06-29 09:17:11 +0200 (using 'time_format = "@%s"' in lvm.conf - number of seconds since the Epoch) $ lvs -o+time vg/lvol0 vg/lvol1 LV VG Attr LSize Time lvol0 vg -wi-a----- 4.00m @1435241914 lvol1 vg -wi-a----- 4.00m @1435562231
* config: regenerate lvm.conf.in and lvmlocal.conf.inPeter Rajnoha2015-06-292-20/+0
|
* refactor: rename _out_tags fn to _out_list and use it for string lists in ↵Peter Rajnoha2015-06-291-11/+12
| | | | general
* cleanup: remove unused tags.c filePeter Rajnoha2015-06-292-22/+0
|
* refactor: rename alloc_printed_tags fn to _alloc_printed_str_list and use it ↵Peter Rajnoha2015-06-293-44/+42
| | | | for string lists in general
* refactor: rename read_tags fn to _read_str_list and use it for string lists ↵Peter Rajnoha2015-06-293-25/+25
| | | | in general
* tests: tests needs pre 1.13 thin-pool extorgZdenek Kabelac2015-06-261-0/+4
| | | | This test is testing older style, so disable feature when present.
* tests: deactivate before removeZdenek Kabelac2015-06-261-0/+1
| | | | | | Testing if this avoids udev race with removal of snapshot on some test machines. See: https://bugzilla.redhat.com/show_bug.cgi?id=1217819
* makefiles: avoid bash == operator syntax, use = insteadFerenc Wágner2015-06-262-2/+6
| | | | | | | | | Commit e587b0677b705786a78f21bac1966621f70b2752 broke the build on systems where /bin/sh is Dash, for example. Origin patch by Ferenc Wágner <wferi@niif.hu> changed later to avoid using shell call, so makefile add 'server' target when one of metad or polld daemon is requested.
* lvmconfig: do not display settings with undefined default valuesPeter Rajnoha2015-06-251-5/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Do not display settings with undefined default values, but do display these settings in case the value is defined directly in any part of the existing config cascade. For example, the lvmconfig --type current always displays these settings (as it's somewhere in "current" configuration cascade that makes it defined). The lvmconfig --type full displays these settings only if it's defined somewhere in the cascade, but not if default value is used instead The lvmconfig --type default never displays these settings... More concrete example - let's have activation/volume_list directly set in lvm.conf and activation/read_only_volume_list not set. Both of these settings have *undefined default* values. $lvmconfig --type full activation/volume_list activation/read_only_volume_list volume_list="/dev/vg/lv" (...only volume_list is defined, hence it's printed) However, the comments will display more info (see also previous commit): $lvmconfig --type full activation/volume_list activation/read_only_volume_list --withsummary # Configuration option activation/volume_list. # Only LVs selected by this list are activated. # This configuration option does not have a default value defined. # Value defined in existing configuration has been used for this setting. volume_list="/dev/vg/lv" # Configuration option activation/read_only_volume_list. # LVs in this list are activated in read-only mode. # This configuration option does not have a default value defined.