Commit Graph

884 Commits

Author SHA1 Message Date
Thomas Schoebel-Theuer
dbcbf9f782 light: make trans_logger destructable by symlink removal 2014-02-03 15:07:45 +01:00
Thomas Schoebel-Theuer
9a8a4d7eb2 light: fix delete-resource forced dealloc 2014-02-03 15:07:45 +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
ff7d78a8cc light: fix removal of deletion markers 2014-02-03 15:07:45 +01:00
Thomas Schoebel-Theuer
178637f5e6 light: force shutdown of fetch upon {disonnect,detach} 2014-02-03 15:07:45 +01:00
Thomas Schoebel-Theuer
cae1b747b1 light: fix stopping of fetch when remote logfile went away 2014-02-03 15:07:45 +01:00
Thomas Schoebel-Theuer
6e54fa1e5e light: fix peer association of fetch 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
Phillip Stockmann
95e2b9d8d0 doc: fixed some typos
Signed-off-by: Thomas Schoebel-Theuer <schoebel@bell.site>
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
59d141c06e client: add network abort
TCP_KEEPALIVE doesn't seem to work.
Use explicit timeout instead when the network
just drops any packet.
2014-02-03 15:06:35 +01:00
Thomas Schoebel-Theuer
8309fb97e6 light: add peer abort 2014-02-03 15:06:35 +01:00
Thomas Schoebel-Theuer
7be31c47f4 net: add {send,recv}_abort count
TCP_KEEPALIVE does not work well in the presence of long-blocking
socket operations.

This quirk allows for software aborts after a configurable number of
sk_{snd,rcv}timeo events.
2014-02-03 15:06:35 +01:00
Thomas Schoebel-Theuer
b60b0887e8 net: disable MSG_DONTWAIT 2014-02-03 15:06:35 +01:00
Thomas Schoebel-Theuer
2bdc298224 net: reduce tcp idle timeout 2014-02-03 15:06:35 +01:00
Thomas Schoebel-Theuer
62d9dd371a net: allow tcp tuning via /proc/sys/mars/tcp_tuning/ 2014-02-03 15:06:34 +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
4dd4118f31 light: prevent logfile fetching on primaries and behind split brains
Save space in /mars/ by not fetching useless logfiles.
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
Thomas Schoebel-Theuer
da3652bba9 marsadm: reject invalidate earlier when no primary is designated 2014-01-23 11:56:35 +01:00