Commit Graph

86 Commits

Author SHA1 Message Date
Thomas Schoebel-Theuer
f5fae8e4ba light: show runtime connection status information 2013-04-12 08:26:25 +02:00
Daniel Hermann
4dafa9467a marsadm: use actual primary where appropriate instead of target primary
The actual primary is decoded in 'actual-*/is-primary' links, while the
target primary is decoded in the 'primary' link.  This is not clearly
taken into account in several functions of marsadm.  This commit fixes
this problem.

- Added _get_actual_primary() function
- Remove $pri parameter in _primary_res
- Use _get_actual_primary() where actual state should be used

Commits 3e96a5e 578d003 5dccbdc rebased to dfeb8e6

Signed-off-by: Thomas Schoebel-Theuer <tst@1und1.de>
2013-04-11 11:01:25 +02:00
Daniel Hermann
3bf3745ec8 marsadm: use lamport clock for checking modification timestamps of symlinks
- Added mars_time() function returning lamport clock
- Renamed check_mtime to check_file_aged and fixed to use mars_time()
- Renamed check_all_mtimes to check_files_modified_any_of

Commits eb849e2 1be8700 fbb415a rebased on dfeb8e6

Signed-off-by: Thomas Schoebel-Theuer <tst@1und1.de>
2013-04-11 11:01:25 +02:00
Daniel Hermann
7a42f95d6c marsadm: renam _allowed_logdelete() to _min_nondeletable_logfile()
Signed-off-by: Thomas Schoebel-Theuer <tst@1und1.de>
2013-04-11 11:01:25 +02:00
Daniel Hermann
5d3d777b86 marsadm: fix check_primary/check_not_primary to use actual state ('is-primary')
The actual state is decoded in 'actual-*/is-primary' links, while the target
state is decoded in the 'primary' link.
- check_primary() now uses actual state
- check_not_primary() now uses both actual state and target state

Commits c38a822 94ac15a rebased on eaba743

Signed-off-by: Thomas Schoebel-Theuer <tst@1und1.de>
2013-04-11 11:01:25 +02:00
Thomas Schoebel-Theuer
eaba743456 light: separate logging of transaction logfile problems 2013-04-09 14:01:07 +02:00
Thomas Schoebel-Theuer
c275bec28d light: new systematics for emergency modes (filesystem full) 2013-04-08 17:02:57 +02:00
Thomas Schoebel-Theuer
3e22a3faca marsadm: role command distincts between actual and todo 2013-04-03 11:44:16 +02:00
Thomas Schoebel-Theuer
6519dced2d marsadm: add new 'show' command
Display all relevant symlinks as key=value pairs.
2013-04-03 11:44:04 +02:00
Thomas Schoebel-Theuer
9763a49551 marsadm: change whitespace to match kernel coding style 2013-04-03 09:22:32 +02:00
Thomas Schoebel-Theuer
5fc1844eba marsadm: allow switchback to primary when I am actually primary
For example, when /dev/mars/something is mounted or in another use,
switching to secondary will only succeed after the device has
been closed. During this intermediate state, we allow to switch
back to primary without checking all the big checks.
2013-04-03 09:17:26 +02:00
Daniel Hermann
01340092de marsadm: Fixed check_splitbrain() to allow obsolete version link syntax
Signed-off-by: Thomas Schoebel-Theuer <schoebel@bell.site>
2013-03-11 14:39:17 +01:00
Thomas Schoebel-Theuer
be57ca7949 marsadm: document global options 2013-02-13 11:57:01 +01:00
Thomas Schoebel-Theuer
1516c46bf2 marsadm: add --timeout= option 2013-02-13 11:50:44 +01:00
Thomas Schoebel-Theuer
640a1742e3 marsadm: implement mars-state command 2013-02-12 15:39:49 +01:00
Thomas Schoebel-Theuer
c47d55cc49 marsadm: fix --force for switching to secondary 2013-02-12 15:39:12 +01:00
Thomas Schoebel-Theuer
e88e857ee9 light: show logfile name in versionlink 2013-01-23 20:07:01 +01:00
Thomas Schoebel-Theuer
4dbedabd78 marsadm: fix typo leading to wrong deletes of versionlinks 2013-01-23 20:07:01 +01:00
Thomas Schoebel-Theuer
c6d22e7553 marsadm: log all messages to syslog 2013-01-23 20:06:56 +01:00
Thomas Schoebel-Theuer
fadaacef15 marsadm: treat log-delete-all equally to log-delete
Hopefully this does not break anything.
2013-01-20 23:24:30 +01:00
Thomas Schoebel-Theuer
6f77dcc562 marsadm: tolerate missing version symlinks upon fake 2013-01-20 23:24:29 +01:00
Thomas Schoebel-Theuer
c7c3ef135f marsadm: reset replaylink at invalidate (ITOPWPT-230) 2013-01-20 23:24:29 +01:00
Thomas Schoebel-Theuer
51307fe7a6 marsadm: log-delete-all left-over version symlinks (ITOPWPT-241) 2013-01-20 23:24:29 +01:00
Thomas Schoebel-Theuer
a78094c799 marsadm: fix deletion of empty logfiles (ITOPWPT-237) 2013-01-20 23:24:29 +01:00
Thomas Schoebel-Theuer
0a7b6df106 marsadm resize: change syncstatus only at the primary 2013-01-20 23:24:28 +01:00
Thomas Schoebel-Theuer
57ee4e306f marsadm: better verbosity at resize problem with syncstatus 2013-01-20 23:24:28 +01:00
Thomas Schoebel-Theuer
c532f909ad marsadm: check for already running sync, fix syncstatus 2013-01-20 23:24:28 +01:00
Thomas Schoebel-Theuer
a9e7affde5 marsadm: fix wrong minimum computation in resize 2013-01-20 23:24:28 +01:00
jmann
380a38a903 small fixed for help and command 2013-01-20 23:24:28 +01:00
Thomas Schoebel-Theuer
0ff5504db1 marsadm: fix typo in pause_replay_local_res 2013-01-20 23:24:28 +01:00
Thomas Schoebel-Theuer
118d6f8c84 marsadm: fix stabilizing of resource in the cluster 2013-01-20 23:24:28 +01:00
Thomas Schoebel-Theuer
dcf54eacf7 marsadm: allow *-cluster only when kernel module unloaded 2013-01-20 23:24:28 +01:00
Thomas Schoebel-Theuer
100fdf1e6c marsadm: fix unintended switchover to secondary 2013-01-20 23:24:25 +01:00
Thomas Schoebel-Theuer
69d47e8f96 marsadm: implement leave-{cluster,resource} 2013-01-20 23:24:24 +01:00
Thomas Schoebel-Theuer
8ad0d372aa light: implement resize operation during operation 2013-01-20 23:24:24 +01:00
Thomas Schoebel-Theuer
02fab7692f marsadm: start connected after join-resource etc 2013-01-20 23:24:22 +01:00
Thomas Schoebel-Theuer
00f7b9e55b add replicated directories for userspace usage 2013-01-20 23:24:21 +01:00
jmann
b0cdd13ce5 same more fixes 2013-01-20 23:24:20 +01:00
jmann
1bfe46ee1a add small help and manpage for marsadm, mars-status 2013-01-20 23:24:19 +01:00
Ulrich Goettlich
a09bf514a9 added --version option to marsadm 2013-01-20 23:24:16 +01:00
Ingvar Gilbert
2e923f145e marsadm: die if IP not detected 2013-01-20 23:24:15 +01:00
Ingvar Gilbert
42ec65952d marsadm: use first IP on eth0 2013-01-20 23:24:15 +01:00
Thomas Schoebel-Theuer
4a9f141f8b marsadm: obey --force at log-delete-all 2013-01-20 23:24:13 +01:00
Thomas Schoebel-Theuer
7b0f4dbec4 new command marsadm log-delete-all 2013-01-20 23:23:47 +01:00
Thomas Schoebel-Theuer
c20181c17b rework of check_splitbrain() logic
also delete old versionlinks at marsadm log-delete
2013-01-20 23:23:47 +01:00
Thomas Schoebel-Theuer
f28d439dfb create faked versionlinks upon late join-resource 2013-01-20 23:23:42 +01:00
Thomas Schoebel-Theuer
54f9334643 better --force handling 2013-01-20 23:23:42 +01:00
Thomas Schoebel-Theuer
92d9778dd7 fix race on primary switchover
solution: wait until all in /mars/resouce-*/ has stabilized
for 60s and all known logfiles have been migrated.
This more a workaround than a solution and should be fixed
in MARS FULL.
2013-01-20 23:23:41 +01:00
Thomas Schoebel-Theuer
81bfb9471a fix network race on primary/secondary switch
The race could lead to unnecessary split brain.
Now we wait until everything in the resource directory became stable
for at least 60 seconds. This may be somewhat too conservative
when having k>2 participants on the same resource.
2013-01-20 23:23:41 +01:00
Thomas Schoebel-Theuer
2f9d86b994 rename /proc/sys/mars to /proc/sys/mars/trigger
create basis for adding more entries to /proc/sys/mars/
2013-01-20 23:23:40 +01:00