Ronnie Sahlberg [Wed, 18 Feb 2009 02:22:26 +0000 (13:22 +1100)]
new version 1.0.72
Ronnie Sahlberg [Wed, 18 Feb 2009 02:10:03 +0000 (13:10 +1100)]
Merge branch 'martins'
Ronnie Sahlberg [Fri, 6 Feb 2009 21:10:34 +0000 (08:10 +1100)]
add a licence file
root [Thu, 5 Feb 2009 03:44:46 +0000 (14:44 +1100)]
use netstat to check first and only fall back to netcat if netstat is unavailable
Ronnie Sahlberg [Mon, 2 Feb 2009 03:04:40 +0000 (14:04 +1100)]
new version 1.0.71
Michael Adam [Fri, 30 Jan 2009 17:30:25 +0000 (18:30 +0100)]
add a simple test script to test ctdb_check_tcp_ports
Michael
Michael Adam [Fri, 30 Jan 2009 17:14:41 +0000 (18:14 +0100)]
ctdb_check_tcp_ports: correctly detect listeners on ipv6 :::<port> w/out netcat
The netstat test only grepped for the ipv4 wildcard address.
Now the ipv6 wildcard listener is correctly detected as well.
Michael
Michael Adam [Fri, 30 Jan 2009 15:41:37 +0000 (16:41 +0100)]
ctdb_check_tcp_ports: fail the check if neither netstat nor netcat/nc is found
Michael
Michael Adam [Fri, 30 Jan 2009 15:10:05 +0000 (16:10 +0100)]
ctdb_check_tcp_ports: cope with multiple locations of netcat or nc
This fixes tcp port monitor events on systems, where netcat or nc
is not found in /usr/bin/, Debian, for instance.
The patch also separates the process of finding the binaries and
calling them, moving the detection outside of the loop over the
ports list.
Michael
Michael Adam [Thu, 29 Jan 2009 12:22:02 +0000 (13:22 +0100)]
remove include <netinet/in.h> from public ctdb.h
This is not portable.
The ctdb build includes the necessary headers from includes.h.
And users of ctdb should cope with including the necessary
prerequisite headers themselves.
Michael
Michael Adam [Thu, 29 Jan 2009 10:46:04 +0000 (11:46 +0100)]
packaging: add a maketarball script
The script extracts the version number from the spec file.
It takes an extra argument, that can be appended to the
version in the tar ball name and directory prefix.
Michael
Michael Adam [Wed, 28 Jan 2009 16:40:24 +0000 (17:40 +0100)]
Fix the build on AIX: sys/socket.h needs to be included before ctdb.h
(for struct sockaddr to be defined)
Thanks to William Jojo <w.jojo@hvcc.edu> for reporting.
Michael
Michael Adam [Thu, 29 Jan 2009 09:22:02 +0000 (10:22 +0100)]
autoconf: Make sure the result of the mkdir_has_mode test gets cached.
This fixes the autoconf 2.63 warning
"suspicious cache-id, must contain _cv_ to be cached".
Thanks to William Jojo <w.jojo@hvcc.edu> for reporting.
Michael
Michael Adam [Tue, 27 Jan 2009 16:17:58 +0000 (17:17 +0100)]
events.d/41.httpd: fix a comment typo
Michael
Michael Adam [Mon, 19 Jan 2009 14:33:24 +0000 (15:33 +0100)]
Fix treatment of link local ipv6 addresses: set the scope id.
metze / Michael
Signed-off-by: Michael Adam <obnox@samba.org>
Michael Adam [Mon, 19 Jan 2009 13:14:07 +0000 (14:14 +0100)]
ctdb_util: use the parse_ip() function - avoid code duplication
Michael
Signed-off-by: Michael Adam <obnox@samba.org>
Michael Adam [Mon, 19 Jan 2009 18:08:37 +0000 (19:08 +0100)]
ctdb_sys_have_ip: fix ipv6 support for aix, too.
Michael
Signed-off-by: Michael Adam <obnox@samba.org>
Stefan Metzmacher [Mon, 19 Jan 2009 12:24:09 +0000 (13:24 +0100)]
ctdb_sys_have_ip: don't overwrite input data (setting port to 0)
metze
Signed-off-by: Michael Adam <obnox@samba.org>
Michael Adam [Mon, 19 Jan 2009 11:02:18 +0000 (12:02 +0100)]
Fix verification of IP allocation with ipv6 addresses on Linux.
Set sin_port or sin6_port to 0, depending on sa_family.
Michael
Signed-off-by: Michael Adam <obnox@samba.org>
Michael Adam [Mon, 19 Jan 2009 20:22:58 +0000 (21:22 +0100)]
events 50.samba: fix control of nmbd without separate nmb service script.
protect all potentially empty $CTDB_SERVICE_* script names
Michael
Michael Adam [Mon, 19 Jan 2009 13:46:30 +0000 (14:46 +0100)]
packaging(RPM): detect and use ccache if available
Michael
Michael Adam [Mon, 19 Jan 2009 08:42:48 +0000 (09:42 +0100)]
Makefile: remove extra "/" in paths
Michael
Michael Adam [Sat, 17 Jan 2009 15:18:02 +0000 (16:18 +0100)]
makerpms: fix detection of support for --rsyncable flag in gzip.
Michael
Michael Adam [Fri, 16 Jan 2009 13:01:37 +0000 (14:01 +0100)]
ctdb.init: fix typo
Michael
Michael Adam [Fri, 16 Jan 2009 12:33:13 +0000 (13:33 +0100)]
events 50.samba: also support suse and ubuntu/debain systems
for managing samba and winbind
This uses CTDB_INIT_STYLE as exported by ctdb.init.
suse systems usually have separate init scripts for
smb for smbd and nmb for nmbd, and the ubuntu/debian
start script for smbd and nmbd is called samba instead
of smb (on redhat).
Michael
Michael Adam [Fri, 16 Jan 2009 12:31:02 +0000 (13:31 +0100)]
funcions: make (nice_)service a noop for empty service name
Michael
Michael Adam [Fri, 16 Jan 2009 12:28:19 +0000 (13:28 +0100)]
ctdb.init: use detect_init_style() in the init script
and export CTDB_INIT_STYLE, so that event scripts
as called by ctdbd can use it.
Michael
Michael Adam [Fri, 16 Jan 2009 12:26:57 +0000 (13:26 +0100)]
functions: add detect_init_style().
Michael
root [Thu, 15 Jan 2009 23:13:53 +0000 (10:13 +1100)]
new version
Michael Adam [Fri, 19 Dec 2008 10:50:06 +0000 (11:50 +0100)]
ctdb.init: add $network to RequiredStop to match RequiredStart.
This is to make rpm checks (eg.g for SuSE systems) survive.
Michael
Andreas Schneider [Wed, 29 Oct 2008 13:12:04 +0000 (14:12 +0100)]
Fix circular dependency error with autoconf 2.6.3.
Signed-off-by: Andreas Schneider <anschneider@suse.de>
(cherry picked from commit
b39611c36bb904774fd4032bf2f8003fbdeb5d34)
Signed-off-by: Michael Adam <obnox@samba.org>
Michael Adam [Wed, 17 Dec 2008 15:01:49 +0000 (16:01 +0100)]
makerpms: fix creation of tarball when gzip does not know "--rsynceable"
--rsynceable is a patch to gzip that not all distributors / packagers
add to gzip. (It has just bitten me on openSUSE.) This path first detects
whether gzip knows about --rsynceable and then calls gzip accordingly.
Michael
Michael Adam [Wed, 17 Dec 2008 11:18:09 +0000 (12:18 +0100)]
ctdb.spec: fix version and (RPM-)release number.
Originally, 1.0 was the version in the spec file and 68 was the release.
But in fact everyone talked about ctdb version 1.0.68.
This puts this straight...
Michael
Michael Adam [Wed, 17 Dec 2008 11:17:15 +0000 (12:17 +0100)]
makerpms: confess
Michael
Michael Adam [Wed, 17 Dec 2008 11:15:34 +0000 (12:15 +0100)]
makerpms: don't hard-code the version number but extract it from ctdb.spec
Michael
Michael Adam [Wed, 17 Dec 2008 11:13:42 +0000 (12:13 +0100)]
makerpms: remove the need of calling makerpms.sh from the top level directory
Instead, extract needed information from the dirname of the invoked name.
Michael
Michael Adam [Wed, 17 Dec 2008 11:12:17 +0000 (12:12 +0100)]
makerpms: don't cd to $SPECDIR but rpmbuild -ba $SPECDIR/$SPECFILE instead
Michael
Michael Adam [Wed, 17 Dec 2008 11:09:13 +0000 (12:09 +0100)]
makerpms: catch error of git archive correctly (echo resets $?)
Michael
Michael Adam [Wed, 17 Dec 2008 11:06:25 +0000 (12:06 +0100)]
makerpms: move comment to appropriate place
Michael
Michael Adam [Wed, 17 Dec 2008 11:05:05 +0000 (12:05 +0100)]
makerpms: use variable (SPECFILE) that is available instead of hard coded file name
Michael
Michael Adam [Mon, 15 Dec 2008 23:30:55 +0000 (00:30 +0100)]
doc: join broken lines in excerpt from log.ctdb
Michael
Michael Adam [Mon, 15 Dec 2008 23:17:04 +0000 (00:17 +0100)]
ctdb.samba.org: fix instruction for turning off samba service autostart
Extend to show valid commands on Redhat and SuSE Linux.
Michael
Martin Schwenke [Fri, 16 Jan 2009 04:50:33 +0000 (15:50 +1100)]
Make message in 62_ctdb_persistent_unsafe.sh more informative.
Signed-off-by: Martin Schwenke <martin@meltin.net>
Martin Schwenke [Fri, 16 Jan 2009 04:12:40 +0000 (15:12 +1100)]
23_ctdb_moveip.sh sanity checks the list of IPs/nodes instead of
looping forever on older versions of CTDB.
Signed-off-by: Martin Schwenke <martin@meltin.net>
Martin Schwenke [Fri, 16 Jan 2009 03:19:55 +0000 (14:19 +1100)]
Merge commit 'origin/master' into martins
Martin Schwenke [Fri, 16 Jan 2009 03:17:04 +0000 (14:17 +1100)]
Git should ignore the test_trigger event script.
Signed-off-by: Martin Schwenke <martin@meltin.net>
Stefan Metzmacher [Thu, 15 Jan 2009 12:20:33 +0000 (13:20 +0100)]
Fix segfault in ip takeover fallback code.
metze
Signed-off-by: Michael Adam <obnox@samba.org>
Martin Schwenke [Tue, 13 Jan 2009 06:02:59 +0000 (17:02 +1100)]
Remove the sorts from 06_ctdb_getpid.sh - the PIDs should be listed in
node order.
Signed-off-by: Martin Schwenke <martin@meltin.net>
root [Tue, 13 Jan 2009 05:17:20 +0000 (16:17 +1100)]
finish the ipv6 support.
allow clients to register either ipv4 or ipv6 client connections to the tickles list
Martin Schwenke [Tue, 13 Jan 2009 03:55:31 +0000 (14:55 +1100)]
Use $CTDB_TEST_WRAPPER in other tests that need it.
Signed-off-by: Martin Schwenke <martin@meltin.net>
Martin Schwenke [Tue, 13 Jan 2009 03:51:40 +0000 (14:51 +1100)]
Use $CTDB_TEST_WRAPPER in 51_ctdb_bench.sh.
Signed-off-by: Martin Schwenke <martin@meltin.net>
Martin Schwenke [Mon, 12 Jan 2009 04:47:12 +0000 (15:47 +1100)]
For now, make tests/run_tests.sh runs the new test suite. Add
tests/TODO. Remove tests/start_daemons.sh - no longer used.
Signed-off-by: Martin Schwenke <martin@meltin.net>
Martin Schwenke [Fri, 9 Jan 2009 07:15:06 +0000 (18:15 +1100)]
Test binaries now go in tests/bin and ctdb_test_env now adds this
directory to $PATH if local daemons are being used.
Signed-off-by: Martin Schwenke <martin@meltin.net>
Martin Schwenke [Fri, 9 Jan 2009 06:52:38 +0000 (17:52 +1100)]
Add tests/README. ctdb_test_env and, therefore, run_tests can now be
run from the tests subdirectory... and most other sensible places.
Rename $CTDB_TEST_REMOTE_SCRIPTS_DIR to $CTDB_TEST_REMOTE_DIR since it
is now intented that this directory can contain test binaries too.
daemons_start() now passes a full path to the events.d directory when
starting ctdbd. Also fixed the path to ctdbd. 41_ctdb_ban.sh and
42_ctdb_unban.sh fail immediately if they fail to select a test node.
Signed-off-by: Martin Schwenke <martin@meltin.net>
Martin Schwenke [Thu, 8 Jan 2009 06:28:09 +0000 (17:28 +1100)]
Merge commit 'origin/master' into martins
Martin Schwenke [Thu, 8 Jan 2009 06:12:03 +0000 (17:12 +1100)]
Delete some unstructured tests ({fetch,peristent,transaction}.sh) and
replace them with new simple tests (52_ctdb_fetch.sh,
53_ctdb_transaction.sh, 61_ctdb_persistent_safe.sh,
62_ctdb_persistent_unsafe.sh). Remove "_simple" from some test
filenames in the simple subdirectory - that's redundant. Always run
ctdb as $CTDB to allow $VALGRIND magic to be used. Use pgrep/pkill to
detect/kill local daemons so those running under valgrind can be found
too - to support this, always run local daemons with the full path to
the executable. run_tests now supports -s option to print sumamry
when done - with more and more tests, it is getting hard to follow
progress. Sort the output of commands in 06_ctdb_getpid.sh to make
sure they compare nicely and also allow the processes' executables to
be called "memcheck" to catch those running under valgrind. Remove
redundant calls to onnode in commands run from calls
try_command_on_node in some tests. 41_ctdb_ban.sh and
42_ctdb_unban.sh avoid banning the recmaster, since this causes the
recmaster to be reassigned and all nodes to be unbanned. Minor
cleanups.
Signed-off-by: Martin Schwenke <martin@meltin.net>
Ronnie Sahlberg [Thu, 18 Dec 2008 03:31:28 +0000 (14:31 +1100)]
new version 1.0.69
Martin Schwenke [Thu, 18 Dec 2008 03:25:07 +0000 (14:25 +1100)]
Remove old ctdbd.sh test script. Remove unneeded nodes.txt and
public_addresses files - these are now created in tests/var as needed.
09_ctdb_ping.sh now recognises new "node disconnected" message.
Replace custom recovery detection code (which could not have been
working) with a call to "ctdb recover" in 32_ctdb_enable_simple.sh.
Signed-off-by: Martin Schwenke <martin@meltin.net>
Martin Schwenke [Thu, 18 Dec 2008 00:28:43 +0000 (11:28 +1100)]
Remove bench.sh test and replace with new test 51_ctdb_bench.sh.
Function try_command_on_node node passes any options other than -v to
onnode. Minor update to 14_ctdb_statistics.sh.
Signed-off-by: Martin Schwenke <martin@meltin.net>
Martin Schwenke [Wed, 17 Dec 2008 22:45:49 +0000 (09:45 +1100)]
Bug fixes for ctdb_bench from Ronnie.
Martin Schwenke [Wed, 17 Dec 2008 05:59:23 +0000 (16:59 +1100)]
ctdb_test_env now sets $CTDB_TIMEOUT. Fixed
26_ctdb_config_check_error_on_unreachable_ctdb.sh to work with new
generic error message when trying to talk to disconnected node.
Signed-off-by: Martin Schwenke <martin@meltin.net>
Martin Schwenke [Wed, 17 Dec 2008 04:05:44 +0000 (15:05 +1100)]
Merge commit 'origin/master' into martins
Martin Schwenke [Tue, 16 Dec 2008 06:32:34 +0000 (17:32 +1100)]
New test 26_ctdb_config_check_error_on_unreachable_ctdb.sh.
Signed-off-by: Martin Schwenke <martin@meltin.net>
root [Wed, 17 Dec 2008 03:26:01 +0000 (14:26 +1100)]
add better errorchecking that nodes we try to talk to using the "ctdb" tool actually exist and that it is connected.
two new dedicated ctdb error codes
21: node does not exist
22: node is disconnected
Ronnie Sahlberg [Wed, 17 Dec 2008 01:01:40 +0000 (12:01 +1100)]
dont call ctdb_fatal() just because we are asked to restart a connection
to a remote node and ctdb->methods is NULL.
This can happen when we are in the middle of a normal shutdown of the
daemon and we have already shut down the transport layer (thus setting
ctdb->methods == NULL in the transport layer destructor)
band there is some unprocessed data related to a remote node.
This prevents an ugly race condition where ctdb might sometimes (rare)
cause a core dump during "ctdb shutdown".
Martin Schwenke [Tue, 16 Dec 2008 06:22:22 +0000 (17:22 +1100)]
Finish 24_ctdb_getdbmap.sh. New test 25_dumpmemory.sh.
Signed-off-by: Martin Schwenke <martin@meltin.net>
Martin Schwenke [Tue, 16 Dec 2008 00:21:55 +0000 (11:21 +1100)]
Merge commit 'origin/master' into martins
Michael Adam [Mon, 15 Dec 2008 17:21:37 +0000 (18:21 +0100)]
skip directories containing macros (%) in ctdb_check_directories_probe
This prevents the monitor action of 50.samba from failing
on e.g. a typical [homes] service with "path = /home/%S" .
Michael
Michael Adam [Sat, 5 Jul 2008 12:28:27 +0000 (14:28 +0200)]
ctdb.init: add Default-Start to init script to enable autostart.
Michael
Michael Adam [Fri, 12 Dec 2008 15:57:58 +0000 (16:57 +0100)]
ctdb.init: check availability of ctdb (with ping) before calling ctdb status
Michael
Michael Adam [Fri, 12 Dec 2008 15:00:07 +0000 (16:00 +0100)]
ctdb.init: behave correctly when calling "service ctdb stop" on stopped service
When "service ctdb stop" is called and the ctdbd is not running,
don't print the "Failed to connect to daemon" error messages.
But print a warning and exit with status success instead.
Michael
Michael Adam [Fri, 12 Dec 2008 15:05:04 +0000 (16:05 +0100)]
ctdb.init: fix return code of "service ctdb stop" on non-redhat systems
Michael
Michael Adam [Fri, 12 Dec 2008 15:04:29 +0000 (16:04 +0100)]
ctdb.init: fix status message of "service ctdb stop" on suse systems
Michael
Michael Adam [Sat, 5 Jul 2008 12:42:46 +0000 (14:42 +0200)]
packaging: set docdir in calls to make (to get it right on e.g. SuSE systems).
Currently docdir = /usr/share/doc is hardcoded in the Makefile.in.
Some systems use a different doc dir (SuSE uses /usr/share/doc/packages).
And not all versions of autoconf provide the --docdir parameter
(2.61 does, while 2.59 does not). So we use the quick solution
to specify "docdir=%{_docdir}" in the make calls in the spec file.
Michael
Martin Schwenke [Mon, 15 Dec 2008 06:52:12 +0000 (17:52 +1100)]
3 new tests. 24_ctdb_getdbmap.sh is only 1/2 implemented but does
something vaguely useful. ctdb_test_exit unsets $ctdb_test_exit_hook.
Fix bug in 17_ctdb_config_delete_ip.sh.
Signed-off-by: Martin Schwenke <martin@meltin.net>
Martin Schwenke [Fri, 12 Dec 2008 07:44:21 +0000 (18:44 +1100)]
Add a recovery to ctdb_test_exit to improve test stability.
Signed-off-by: Martin Schwenke <martin@meltin.net>
Martin Schwenke [Fri, 12 Dec 2008 06:25:38 +0000 (17:25 +1100)]
Rename $CTDB_NUM_NODES to $CTDB_TEST_NUM_DAEMONS and only set it if
$CTDB_TEST_REAL_CLUSTER is not set. After a ctdb restart, force a
recovery to attempt to help tests that follows.
Signed-off-by: Martin Schwenke <martin@meltin.net>
Martin Schwenke [Fri, 12 Dec 2008 04:39:53 +0000 (15:39 +1100)]
Merge commit 'origin/master' into martins
Ronnie Sahlberg [Thu, 11 Dec 2008 22:39:55 +0000 (09:39 +1100)]
New version 1.0.68
Michael Adam [Wed, 10 Dec 2008 21:27:36 +0000 (22:27 +0100)]
Improve the monitor event test for ethernet interfaces (link detection).
On some systems, the ethtool link detection is not successful when a
cable is plugged but the interface has not been brought up previously.
This improves the test by bringing the interface up (without checking
for success here) and trying the ethtool test again afterwards.
Michael
Michael Adam [Wed, 10 Dec 2008 21:19:31 +0000 (22:19 +0100)]
Use "grep -q" instead of "grep ... > /dev/null" in events.d/10.interfaces
This enhances readability.
Michael
Martin Schwenke [Thu, 11 Dec 2008 07:14:17 +0000 (18:14 +1100)]
Add message about restart to 18_ctdb_freeze.sh.
Signed-off-by: Martin Schwenke <martin@meltin.net>
Martin Schwenke [Wed, 10 Dec 2008 05:13:42 +0000 (16:13 +1100)]
With local daemons the sockets are now numbered starting from 0. Fix
setup of local daemons so that it correctly assigns no public IPs to a
single node each time. Separate out daemon_setup so that the
selection of the node with no public IPs is only done once at the
beginning of testing. Clean up all current tests, mostly with a view
to ensuring that a node selected for testing some kind of failover
actually has public addresses assigned. Reenabled 01_ctdb_version.sh
- it now passes if rpm doesn't do anything useful on the node.
Signed-off-by: Martin Schwenke <martin@meltin.net>
root [Wed, 10 Dec 2008 01:06:51 +0000 (12:06 +1100)]
update the "ctdb recover" command.
block and wait until the clustered has completed the recovery before returning.
this makes it easier to script since it avoids the common need for
ctdb recover
... complex loop to wait for recovery to complete ...
script continues
root [Wed, 10 Dec 2008 01:01:19 +0000 (12:01 +1100)]
add a CTDB_TIMEOUT variable for the ctdb tool.
If set this specified the maximum runtime for the ctdb tool before it will terminate with status == 20
Just like the -T ... option would.
root [Wed, 10 Dec 2008 00:49:51 +0000 (11:49 +1100)]
make sure we return an errorcode when the ctdb command has hung and is timeodout by the -T <timeout> setting
Martin Schwenke [Wed, 10 Dec 2008 00:42:02 +0000 (11:42 +1100)]
Merge commit 'origin/master' into martins
Martin Schwenke [Wed, 10 Dec 2008 00:32:24 +0000 (11:32 +1100)]
Merge commit 'origin/master' into martins
Martin Schwenke [Wed, 10 Dec 2008 00:22:59 +0000 (11:22 +1100)]
Merge commit 'origin/master' into martins
Martin Schwenke [Tue, 9 Dec 2008 07:20:11 +0000 (18:20 +1100)]
Added use of $ctdb_test_exit_hook to function ctdb_test_exit. Removed
sleeps from ban/unban tests. Now expect "ctdb ping" to return false
if it fails, so made relevant change to 09_ctdb_ping.sh. New
functions install_eventscript and uninstall_eventscript. New
setup/cleanup tests 00_ctdb_install_eventscript.sh and
99_ctdb_uninstall_eventscript.sh. New test 21_ctdb_disablemonitor.sh,
which is incredibly complex.
Signed-off-by: Martin Schwenke <martin@meltin.net>
root [Tue, 9 Dec 2008 01:03:42 +0000 (12:03 +1100)]
add a helper that waits until the clueter is no longe rin recovery mode and return the generation number.
change the ban/unban logic to wait until we are not in recovery before it bans/unbans the node.
also wait until after the cluster has recovered from the ban/unban before returning so that the cluster is in recpovery mode == normal when the command returns. this makes it much easier to script things ...
Martin Schwenke [Tue, 9 Dec 2008 00:46:34 +0000 (11:46 +1100)]
Merge commit 'origin/master' into martins
root [Mon, 8 Dec 2008 23:45:14 +0000 (10:45 +1100)]
update to the flags handling
make sure to abort the monitoring and restart if we failed to get the nodemap from a remote node
root [Mon, 8 Dec 2008 06:29:17 +0000 (17:29 +1100)]
If ctdbd was started with the --socket option then we also set the CTDB_SOCKET variable so that the eventscripts can pick up the name proper
Martin Schwenke [Mon, 8 Dec 2008 06:03:50 +0000 (17:03 +1100)]
Merge commit 'origin/master' into martins
root [Mon, 8 Dec 2008 01:57:40 +0000 (12:57 +1100)]
return -1 if ctdb ping failed
Martin Schwenke [Sun, 7 Dec 2008 21:57:46 +0000 (08:57 +1100)]
Merge commit 'origin/master' into martins
Martin Schwenke [Sun, 7 Dec 2008 21:15:18 +0000 (08:15 +1100)]
When running with local daemons, provided there is more than 2 of
them, randomly pick a single node that will not have any public IPs
assigned. This will make life a bit more interesting and will
simulate what happens on real clusters with a management node. Some
tests were disabling a node to implicitly trigger a ctdb restart - now
use an explicit restart of ctdb when it is required.
17_ctdb_config_delete_ip.sh now randomly chooses a public IP on any
node to disable - this works around a problem where the hardcoded node
might not have any public addresses.
Signed-off-by: Martin Schwenke <martin@meltin.net>
root [Fri, 5 Dec 2008 05:32:30 +0000 (16:32 +1100)]
redo and update how we synchronize flags across the cluster.
this simplifies the code and should close a race condition between the local recovery daemon and a remote node when flags are changing.
root [Thu, 4 Dec 2008 23:33:38 +0000 (10:33 +1100)]
some platforms are very picky about the third argument passed to bind().
and would complain if sa.family is AF_INET and the third argument is not exactly the size of a sockaddr_in.
We used to pass a union containing both a sockaddr_in and a sockaddr_in6 which would mean that on those platforms bind() would fail since the passed structure for AF_INET would be too big.
Thus we need to set and pass the appropriate size to bind. At the same time for thos eplatforms we can also set sin[6]_size to the expected size.
(bind() on those platforms were isurprisingly perfectly ok with sin_len was "too big")