Commit Graph

231 Commits

Author SHA1 Message Date
Thomas Schoebel-Theuer
e0a123e827 marsadm: move global variables 2014-03-19 11:44:57 +01:00
Thomas Schoebel-Theuer
1cb78bae47 marsadm: fix warning 2014-03-19 11:30:24 +01:00
Thomas Schoebel-Theuer
a43181a84f marsadm: fix split brain detection 2014-03-19 11:30:24 +01:00
Thomas Schoebel-Theuer
1715b4fd40 marsadm: fix recursion depth of _get_common_ancestor() 2014-03-19 11:30:24 +01:00
Thomas Schoebel-Theuer
0d5349b2ca marsadm: fix transitive closure for log_purge_res() 2014-03-19 11:30:24 +01:00
Thomas Schoebel-Theuer
2ec9800d54 marsadm: fix leave-resource 2014-03-19 11:30:24 +01:00
Thomas Schoebel-Theuer
a16875fcfe marsadm: prevent only _new_ split brains 2014-03-19 11:30:24 +01:00
Thomas Schoebel-Theuer
e78d0a3078 light: fix peer preferences, use connect-* links 2014-03-19 11:30:24 +01:00
Thomas Schoebel-Theuer
223467f37f marsadm: disallow intended primary switch when secondaries are syncing 2014-03-19 11:30:24 +01:00
Thomas Schoebel-Theuer
59cce71e2d marsadm: fix fake_versionlink()
Always fake two versionslinks instead of one.
2014-03-19 11:30:24 +01:00
Thomas Schoebel-Theuer
528b72b0c0 light: fix potential race on deletions 2014-03-19 11:30:23 +01:00
Thomas Schoebel-Theuer
3e9aae53c8 all: fix potential buffer overflows, use vscnprintf() 2014-03-19 11:30:23 +01:00
Thomas Schoebel-Theuer
dc535711c8 marsadm: fix leave-resource --force 2014-02-07 09:11:07 +01:00
Thomas Schoebel-Theuer
4c36e803f3 marsadm: add --ip=, fix IP detection 2014-02-06 07:15:09 +01:00
Thomas Schoebel-Theuer
c6a3753c1d marsadm: fix --dry-run 2014-02-04 14:29:28 +01:00
Thomas Schoebel-Theuer
73c32a2f83 marsadm: make device detection more robust 2014-02-03 15:07:45 +01:00
Thomas Schoebel-Theuer
e38225a74c marsadm: fix non-monotony of logfile sequence numbers 2014-02-03 15:07:45 +01:00
Thomas Schoebel-Theuer
a11b63a8b2 marsadm: allow create-resource on pre-existing resource directory 2014-02-03 15:07:45 +01:00
Thomas Schoebel-Theuer
7fa62145b5 marsadm: fix resource destruction via 'delete-resource' 2014-02-03 15:07:45 +01:00
Thomas Schoebel-Theuer
b3a1d7ffa2 marsadm: fix _fake_versionlink() after /mars/ full 2014-02-03 15:07:44 +01:00
Thomas Schoebel-Theuer
63171f66ae marsadm: log-purge-all for split brain resolution in desperate cases 2014-02-03 15:07:44 +01:00
Thomas Schoebel-Theuer
06f5e42ae6 marsadm: introduce --dry-run 2014-02-03 15:07:44 +01:00
Thomas Schoebel-Theuer
2fee916477 marsadm: fix 'secondary' when not locally primary 2014-02-03 15:07:44 +01:00
Thomas Schoebel-Theuer
4e17138003 light: make detach/down more robust against following commands
Immediately stop syncing when rource should go down.
2014-02-03 15:07:44 +01:00
Thomas Schoebel-Theuer
9e54983283 marsadm: fix split brain detection 2014-02-03 15:07:44 +01:00
Thomas Schoebel-Theuer
00d4713aff marsadm: fix set-link source 2014-02-03 15:07:44 +01:00
Thomas Schoebel-Theuer
c7fa35ae5f marsadm: fix delete-file --force 2014-02-03 15:07:44 +01:00
Thomas Schoebel-Theuer
ab1723f306 marsadm: fix lamport warning when mars.ko is not loaded 2014-02-03 15:07:44 +01:00
Thomas Schoebel-Theuer
059abe866b marsadm: fix lamport timestamp substitute when mars.ko is unloaded 2014-02-03 15:07:44 +01:00
Thomas Schoebel-Theuer
202afe0fc4 marsadm: fix spelling 2014-02-03 15:07:44 +01:00
Thomas Schoebel-Theuer
49c13052f7 marsadm: try to avoid split brain on primary switching 2014-02-03 15:07:43 +01:00
Thomas Schoebel-Theuer
2b71a212de marsadm: use stderr for errors and warnings 2014-02-03 15:06:36 +01:00
Thomas Schoebel-Theuer
f9ea0132f3 marsadm: 'primary' denies waiting for device during split brain 2014-02-03 15:06:36 +01:00
Thomas Schoebel-Theuer
d5e3b4e1f1 marsadm: fix split brain detection 2014-02-03 15:06:36 +01:00
Thomas Schoebel-Theuer
07bd8db714 marsadm: fix call of localtime() in old perl versions 2014-02-03 15:06:35 +01:00
Thomas Schoebel-Theuer
7ad628a725 light: create detailed warn message in userspace 2014-02-03 15:06:34 +01:00
Thomas Schoebel-Theuer
6755b8e4b8 marsadm: remove superfluous _get_former_primary()
This cannot work in case of split brain.
Therefore, some primary must be designated always explicitly.
2014-02-03 15:06:34 +01:00
Thomas Schoebel-Theuer
adf79307af marsadm: skip sequence number check on every jump 2014-02-03 15:06:34 +01:00
Thomas Schoebel-Theuer
a144e5f93b marsadm: always update timestamp of primary symlink 2014-02-03 15:06:34 +01:00
Thomas Schoebel-Theuer
afbf794e1a marsadm: fix version links in 'invalidate' 2014-02-03 15:06:34 +01:00
Thomas Schoebel-Theuer
3b757354c3 marsadm: fix faking new versionlink on join-resource 2014-02-03 15:06:34 +01:00
Thomas Schoebel-Theuer
a3c429fdd1 marsadm: remove all version links at leave-resource 2014-02-03 15:06:34 +01:00
Thomas Schoebel-Theuer
860ec8d37a marsadm: reject join-resource if no primary is designated 2014-01-23 11:56:36 +01:00
Thomas Schoebel-Theuer
7fff95b560 marsadm: better error message at failed 'invalidate' 2014-01-23 11:56:35 +01:00
Thomas Schoebel-Theuer
a26198d97e marsadm: wait for devices to {dis,}appear even on {prim,second}ary --force 2014-01-23 11:56:35 +01:00
Thomas Schoebel-Theuer
767bb03060 marsadm: allow overrides of "marsadm secondary" in disconnected clusters
When the communication is down in partitioned clusters, the command
"marsadm seconodary" would normally use the current timestamp of
the command execution for the Lamport update protocol.

Make an exception for the case that a concurrent "marsadm primary"
was given somewhere else on a disconnected / partitioned node: let
the "primary" always win over a "secondary" command.
2014-01-23 11:56:35 +01:00
Thomas Schoebel-Theuer
c861a0d202 marsadm: disallow 'primary --force' in connected state
DRBD does not allow to deliberately provoke a SPLIT BRAIN
in connected state.

Thus MARS Light cannot be required to support such silly things
in any way.
2014-01-23 11:56:35 +01:00
Thomas Schoebel-Theuer
c84caa6bf4 marsadm: print warnings when SPLIT BRAIN is detected 2014-01-23 11:56:35 +01:00
Thomas Schoebel-Theuer
4c94d82caa marsadm: early abort is-device-on when not designated primary 2014-01-23 11:56:35 +01:00
Thomas Schoebel-Theuer
6798580065 marsadm: do resource checks only once per command 2014-01-23 11:56:35 +01:00