Thomas Schoebel-Theuer
359c039445
marsadm: add new command 'wait-umount'
2013-06-03 09:05:46 +02:00
Thomas Schoebel-Theuer
0953801a6e
marsadm: fix primary detection
...
The actual-*/is-primary symlink may race with the appearance
of the device. Use both conditions to be sure.
2013-06-03 09:05:46 +02:00
Thomas Schoebel-Theuer
2dd3033ff4
marsadm: split command "primary" into phases
2013-06-03 09:05:46 +02:00
Thomas Schoebel-Theuer
dab60da817
marsadm: allow calling multiple functions in phases
...
Add infrastructure for splitting commands in multiple phases.
Usually, phase0 will check for some preconditions, while
phase1 will execute the command. The final result will only
be committed if nothing fails.
The difference to the old behaviour will only show up when combined
with 'all' resources. If anything fails in phase0, nothing will be
touched in phase1. The old behaviour could touch some resources,
but omit others when something failed.
The new behaviour is more transactional-like.
2013-06-03 09:05:46 +02:00
Thomas Schoebel-Theuer
14e9582e93
marsadm: fix join-resource
2013-05-13 12:50:29 +02:00
Thomas Schoebel-Theuer
4690deb873
marsadm: check attach state
2013-05-13 12:50:29 +02:00
Thomas Schoebel-Theuer
0bab62f434
marsadm: fix detection of incompatible versions
2013-05-13 12:50:29 +02:00
Thomas Schoebel-Theuer
b7c1900820
marsadm: use Lamport time for symlink creation
2013-05-13 12:50:29 +02:00
Thomas Schoebel-Theuer
30f97cd23f
light: fix symlink deletion
2013-05-13 12:50:29 +02:00
Thomas Schoebel-Theuer
ca07c9a763
marsadm: fix log-delete{,-all}
2013-05-13 12:50:29 +02:00
Thomas Schoebel-Theuer
77fdc4cc1a
marsadm: improve check_* routines
2013-05-13 12:50:29 +02:00
Thomas Schoebel-Theuer
6964573aa3
marsadm: disallow resize to smaller size
2013-05-13 12:50:29 +02:00
Thomas Schoebel-Theuer
b0c09061e9
marsadm: allow only multiples of 4k as size arguments
2013-04-25 22:32:37 +02:00
Thomas Schoebel-Theuer
46f815f54e
marsadm: add optional size argument to resize command
2013-04-25 16:06:18 +02:00
Thomas Schoebel-Theuer
8d93439dcb
marsadm: add new command 'set-replay'
2013-04-22 14:40:24 +02:00
Thomas Schoebel-Theuer
22f75b9d71
marsadm: rewrite / correct symlink faking
2013-04-22 14:40:24 +02:00
Thomas Schoebel-Theuer
03f418c2c7
marsadm: improve message texts and parameter semantics
2013-04-22 11:50:07 +02:00
Thomas Schoebel-Theuer
8f081105fd
marsadm: fix distinction _get_{designated,actual}_primary
2013-04-22 11:48:50 +02:00
Thomas Schoebel-Theuer
109eed06f3
marsadm: fix and unify readlink() usage
2013-04-22 11:48:50 +02:00
Thomas Schoebel-Theuer
78c7c307ea
marsadm: fix primary checks
2013-04-22 11:48:50 +02:00
Daniel Hermann
92951e491b
marsadm: improve primary/secondary command behaviour
...
Previously, the 'marsadm primary' and 'marsadm secondary' commands
were successful as soon as the target primary was successfully set
to the new primary or '(none)', respectively. This commit appends
a check to wait until the primary is really changed (actual state).
Changes in marsadm:
- Added check_primary_settled() function
- Do not use local variable named '$host' in _primary_res() since
a global variable with same name exists.
- Do not use/set global variable '$host' in primary_res(). Use
local variable '$new' initially set to '$host' instead.
- Make 'secondary' command idempotent ("is already secondary")
- Call trigger() and check_primary_settled() in primary_res()
Related minor changes:
- marsadm: Added optional parameter 'sleeptime' to sleep_timeout()
- Removed debug output in check_file_aged()
Signed-off-by: Thomas Schoebel-Theuer <tst@1und1.de>
2013-04-18 10:09:15 +02:00
Thomas Schoebel-Theuer
f2b8256fcd
marsadm: categorize commands correctly
2013-04-17 12:03:00 +02:00
Thomas Schoebel-Theuer
e02c06e265
marsadm: disallow --force on 'all' resources
2013-04-17 12:03:00 +02:00
Thomas Schoebel-Theuer
9187bf210d
marsadm: check for matching version numbers
2013-04-17 11:03:13 +02:00
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
jmann
70d409b200
mars-status: release 0.070
...
--------------------------
- same small fixes
- upgrade history-replay
- logfile-delay
- displaying debug
- upgrade replay*/version* links
- upgrade system links
2013-01-23 20:06:56 +01:00
jmann
f46fb7b61e
release 0.071
...
- same small fixes
- upgrade history-replay
- logfile-delay
- displaying debug
- upgrade replay*/version* links
- upgrade system links
2013-01-23 20:06:56 +01:00
jmann
26dba100c0
update manpages
2013-01-23 20:06:56 +01:00
jmann
60942678ab
actualy versions mars-status, include same fixes
2013-01-23 20:06:56 +01:00
jmann
b25edf055b
cleanup branch
2013-01-23 20:06:56 +01:00
jmann
0ac88f3378
20121201 - redesign debug-files and -messages
...
20120204 - add display todo counter
20120205 - add/update system entrys
and same small bugs ...
Conflicts:
userspace/mars-status
2013-01-23 20:06:56 +01:00
jmann
4bc3076f7f
same small fixes.
2013-01-23 20:06:55 +01:00
jmann
f1122eccf7
20121201 - redesign debug-files and -messages
...
20120204 - add display todo counter
20120205 - add/update system entrys
and same small bugs ...
2013-01-23 20:06:55 +01:00
Thomas Schoebel-Theuer
47040b5798
brick_say: implement status files via intermediate .tmp files
2013-01-23 20:06:49 +01:00
jmann
974bed2b7a
- some fixes on mars-status
...
- add test
2013-01-23 20:06:21 +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
jmann
2b20ff1b67
- same fixes (history, color, ...)
...
- add same news (resize, limits, speed, ...)
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
jmann
9fc54e4f92
same small fixes
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
efdd3d1306
add : - same fixes
...
- check logfiles
- option monitor
- handling error/warning
2013-01-20 23:24:21 +01:00
jmann
b0cdd13ce5
same more fixes
2013-01-20 23:24:20 +01:00
jmann
eef8878205
same small fixes, update short summary
2013-01-20 23:24:19 +01:00
jmann
1bfe46ee1a
add small help and manpage for marsadm, mars-status
2013-01-20 23:24:19 +01:00
jmann
994eb28e42
same small fixes
2013-01-20 23:24:19 +01:00
jmann
41d8352b95
same fixes on mars-status
2013-01-20 23:24:18 +01:00
jmann
d008e20fcd
fix same errors and new funktions
2013-01-20 23:24:17 +01:00
Ulrich Goettlich
c4a42f6ad5
changed mars-status.pl to use marsadm --version option
2013-01-20 23:24:16 +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
Ulrich Goettlich
004b3bbe6a
* added Option Parsing
...
* added interval
* added usage of PATH to find marsadm
2013-01-20 23:24:14 +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
jmann
c9690d2c19
readd mars-status.pl
2013-01-20 23:23:43 +01:00
jmann
2a5b6b59a7
modified: ../.gitattributes
2013-01-20 23:23:43 +01:00
jmann
bde90c7691
add Gitt commands to mars-status.pl
2013-01-20 23:23:43 +01:00
jmann
df22f6bc58
add mars-status
2013-01-20 23:23:43 +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
jmann
cc3f4e9ac5
fix remote connect on marsadm
2013-01-20 23:23:31 +01:00
Thomas Schoebel-Theuer
d4f6d3f6a4
added feature log-rotate (while the system is loaded)
2013-01-13 12:12:06 +01:00
Thomas Schoebel-Theuer
1a58aadc90
fix bad checking in log-delete
2013-01-13 12:12:06 +01:00
Thomas Schoebel-Theuer
977e5a3b3a
introduced "marsadm log-delete"
...
TBD: "marsadm log-purge"
TBD: long-term cleanup of symlinks in /mars/todo-global/
2013-01-13 12:12:06 +01:00
Thomas Schoebel-Theuer
681ffcb35e
introduced allow-replay (independent from pause-sync)
2013-01-13 12:12:06 +01:00
Thomas Schoebel-Theuer
6f5a3b0da2
fix bad replay symlink upon join-resource
2013-01-13 12:12:06 +01:00
Thomas Schoebel-Theuer
750a36de5d
Merge branch 'master' of ssh://git.schlund.de/tst/mars
...
Conflicts:
userspace/marsadm
2013-01-13 12:12:06 +01:00
jmann
538bff0812
fix marsadm for replay links
2013-01-13 12:12:05 +01:00
Thomas Schoebel-Theuer
ad9f40eac5
fix setup of secondaries, remove faked version links
...
remaining bug: version symlink is omitted when transaction log has size 0.
2013-01-13 12:12:05 +01:00
jmann
59af89b6f9
Syntaxerror marsadm
2013-01-13 12:12:05 +01:00
Thomas Schoebel-Theuer
2793ec2148
fix possible hole in join_cluster checking, add $Id$ to marsadm
2013-01-13 12:12:05 +01:00
Thomas Schoebel-Theuer
713dd11960
fix missing test upon join-resource
2013-01-13 12:12:05 +01:00
root
9d00314c49
replace switch-*/ by todo-*/
2013-01-13 12:11:51 +01:00
Thomas Schoebel-Theuer
3091f75f67
import mars-125.tgz
2013-01-08 15:54:44 +01:00
Thomas Schoebel-Theuer
374f37aca9
import mars-121.tgz
2013-01-08 15:54:41 +01:00
Thomas Schoebel-Theuer
62ed7174e8
import mars-118.tgz
2013-01-08 15:54:38 +01:00
Thomas Schoebel-Theuer
ead69b3294
import mars-116.tgz
2013-01-08 15:54:37 +01:00
Thomas Schoebel-Theuer
64885b651e
import mars-115.tgz
2013-01-08 15:54:37 +01:00
Thomas Schoebel-Theuer
2a4d50d2a5
import mars-114.tgz
2013-01-08 15:54:36 +01:00
Thomas Schoebel-Theuer
60f17b2db8
import mars-112.tgz
2013-01-08 15:54:34 +01:00
Thomas Schoebel-Theuer
45ebd8c50f
import mars-111.tgz
2013-01-08 15:54:33 +01:00
Thomas Schoebel-Theuer
9e6af72a34
import mars-110.tgz
2013-01-08 15:54:33 +01:00
Thomas Schoebel-Theuer
b01cfa51e2
import mars-105.tgz
2013-01-08 15:54:31 +01:00
Thomas Schoebel-Theuer
c430b3701f
import mars-83.tgz
2013-01-08 15:54:21 +01:00
Thomas Schoebel-Theuer
9b1410c0ef
import mars-82.tgz
2013-01-08 15:54:20 +01:00
Thomas Schoebel-Theuer
ee9a1d47ff
import mars-81.tgz
2013-01-08 15:54:20 +01:00
Thomas Schoebel-Theuer
39e1d97553
import mars-80.tgz
2013-01-08 15:54:19 +01:00
Thomas Schoebel-Theuer
5ede8cd9ce
import mars-75.tgz
2013-01-08 15:54:15 +01:00
Thomas Schoebel-Theuer
aa208e44d4
import mars-71.tgz
2013-01-08 15:54:13 +01:00
Thomas Schoebel-Theuer
4c4f0a8691
import mars-69.tgz
2013-01-08 15:54:12 +01:00
Thomas Schoebel-Theuer
bbff01d71f
import mars-68.tgz
2013-01-08 15:54:12 +01:00
Thomas Schoebel-Theuer
7dec70085d
import mars-67.tgz
2013-01-08 15:54:12 +01:00
Thomas Schoebel-Theuer
778f1f37ed
import mars-65.tgz
2013-01-08 15:54:10 +01:00
Thomas Schoebel-Theuer
93b96df54f
import mars-61.tgz
2013-01-08 15:54:07 +01:00
Thomas Schoebel-Theuer
88adc7457a
import mars-60.tgz
2013-01-08 15:54:06 +01:00
Thomas Schoebel-Theuer
d9a6c14a89
import mars-56.tgz
2013-01-08 15:54:05 +01:00