Heinz Mauelshagen
d14e774525
Introduce exit() in main() and cleanup signal settings for parent/child
2005-05-02 11:02:19 +00:00
Benjamin Marzinski
ca5402a7fa
more variable initialization.
2005-04-29 22:12:09 +00:00
Heinz Mauelshagen
da36c286a6
o checking in instrumented code for AJ to follow up on comms and logging
...
o changed
int dm_get_next_registered_device(char **dso_name, char **device,
enum event_type *events);
to
int dm_get_registered_device(char **dso_name, char **device,
enum event_type *events, int next)
so that the daemon is able to retrive the next one of the list without
running into locking issues.
o changed dmevent.c to use dm_get_registered_device()
o couldn't test this yet because of the comms issues
(daemon exits in do_process_request())
2005-04-29 14:56:35 +00:00
Heinz Mauelshagen
d3901bcf2e
first changes to get comms back to work after flock changes
2005-04-29 13:41:25 +00:00
Heinz Mauelshagen
94c8d4fdfb
minor cleanup
2005-04-29 10:58:34 +00:00
AJ Lewis
ab8bdc18bb
o Build dmeventd against multilog
2005-04-28 22:47:52 +00:00
Alasdair Kergon
c9dcd7442a
build libdmeventnoop.so for testing
2005-04-28 17:32:27 +00:00
Alasdair Kergon
34c8f13346
test.c->dmevent.c
2005-04-28 14:49:41 +00:00
Alasdair Kergon
7a8ccda95c
o adds dm_get_next_registered_device() (not functional yet)
...
to retrieve which devices got registered with the daemon;
needs locking changes as well
2005-04-28 14:02:30 +00:00
Alasdair Kergon
44a1448542
Prototype for a device-mapper event-handling daemon.
2005-04-27 22:32:00 +00:00
Patrick Caulfield
901f7c5c36
Tidy clvmd's SIGHUP handler so it doesn't do all that work.
2005-04-19 10:36:42 +00:00
Patrick Caulfield
6102a5d2b0
Make clvmd work around some "limitations" in gulm's node state notifications.
...
Also make clvmd debuglog timestamps a little more helpful.
2005-04-13 13:50:07 +00:00
Patrick Caulfield
8c3fdaaa62
set SO_KEEPALIVE on sockets
2005-04-01 16:03:00 +00:00
Patrick Caulfield
5ac1c69710
Don't allow user operations to start until the lvm thread is fully up.
...
Hopefully finally nails bz#146056
2005-04-01 13:01:01 +00:00
Alasdair Kergon
701c05ce96
Tighten signal handlers.
2005-03-21 14:16:16 +00:00
Patrick Caulfield
b982232cc5
Don't take out the lvm_thread_lock at startup - it only protects the jobs list.
...
DEBUGLOG() message now print threadid rather than PID which is more useful.
2005-03-09 14:08:11 +00:00
Patrick Caulfield
6a0dcd7f0e
make clvmd FDs close-on-exec, to avoid warnings when running lvm via popen.
...
clvmd-gulm unlocks VG & orphan locks at startup in case they are stale.
clvmd-gulm now unlocks VG & orphan locks if client dies.
2005-03-07 17:03:44 +00:00
Patrick Caulfield
7c89ae44a9
Fix clvmd-gulm node up/down code so it actually works.
...
clvmd-gulm now releases locks when shut down.
2005-02-22 16:26:21 +00:00
Patrick Caulfield
84fe06da22
./configure --enable-debug now enables debugging code in clvmd
2005-02-21 15:58:06 +00:00
Patrick Caulfield
806318c8b3
Always manipulate both locks in sync_lock() otherwise they get left
...
hanging around and cause trouble.
2005-02-21 14:36:09 +00:00
Patrick Caulfield
6dba6cd78d
Cope with more than one message arriving at the TCP socket, also
...
fix some instances where the length in the message was wrong (cman
code didn't notice this because it is packet-based comms anyway)
2005-02-18 15:31:32 +00:00
Patrick Caulfield
502250d08f
Fix gulm->errno error number conversion.
2005-02-17 12:56:19 +00:00
Patrick Caulfield
7395f0e680
Make config check a little more tolerant of library names.
2005-02-14 09:07:14 +00:00
Patrick Caulfield
522db1bf01
Fix thread shutdown race which could cause clvmd to hang in pthread_join.
2005-02-08 09:05:58 +00:00
Patrick Caulfield
06f066f90d
Revert last clvmd patch. More testing reveals that this just doesn't
...
work yet.
2005-02-07 14:45:38 +00:00
Patrick Caulfield
f37b20677b
Make clvmd use the command library rather than popen() to
...
preload the lock state.
2005-02-07 10:04:27 +00:00
Patrick Caulfield
4c80cc313a
Make clvmd do a quick sanity check on the clustering bits of lvm.conf
2005-02-02 11:42:29 +00:00
Patrick Caulfield
1c65fee9b4
Get rid of "connection refused" message because Corey doesn't like it.
2005-02-02 09:17:56 +00:00
Patrick Caulfield
150a002c40
Don't print CMAN error if initial probe fails - we could be running with GULM.
2005-01-26 09:30:52 +00:00
Patrick Caulfield
ce0def3bd8
Remove superflous &
...
Gulm clvmd no longer hangs trying to talk to a rebooted node.
2005-01-25 16:46:29 +00:00
Patrick Caulfield
ee20fa97c2
Make clvmd announce it's startup and cluster connection in syslog.
2005-01-24 15:31:13 +00:00
Patrick Caulfield
92e2a257a6
Get rid of libclvm as it's out-of-date and not used at all.
2005-01-21 11:56:30 +00:00
Patrick Caulfield
32e175752c
Fix clvmd startup bug introduced in cman/gulm amalgamation. bz#145729
...
Improve reporting of node-specific locking errors so you'll get
somthing a little more helpfiul than "host is down" - it will now tell
you /which/ host it thinks is down.
2005-01-21 11:35:24 +00:00
Alasdair Kergon
fdc49402ec
fix clvmd lv_info_by_lvid open_count
2005-01-19 18:10:09 +00:00
Patrick Caulfield
5529aec0d6
You can now build clvmd with cman & gulm support in the same binary.
...
./configure --with-clvmd
wil do this by default. Or you can choose which you want with
./configure --with-clvmd=gulm or
./configure --with-clvmd=cman
When clvmd with both included is run, it will automatically detect the cluster
manager in use.
2005-01-13 13:24:02 +00:00
Patrick Caulfield
8b170dc2bf
Fix off-by-one error in cluster_locking that could case read hangs.
2005-01-07 14:22:49 +00:00
Patrick Caulfield
b131449422
Some more gulm fixes from "Mr gulm" himself.
2005-01-06 11:48:25 +00:00
Patrick Caulfield
86046445ed
Improve clvmd failure message if it's already running.
...
Allow user to kill clvmd during initialisation.
2005-01-05 14:41:54 +00:00
Patrick Caulfield
baea9bf944
Typo in "for" caused first node in ccs to be ignored.
2005-01-04 15:11:34 +00:00
Patrick Caulfield
0951ee9e63
Use new CCS key names for nodes in the GULM version of clvmd.
...
based on a patch from Mike Tilstra
2005-01-04 11:48:10 +00:00
Alasdair Kergon
6f4e93dc90
Configure/makefile tidy.
2004-11-26 18:07:17 +00:00
Patrick Caulfield
2affe53727
Tidy the socket callbacks so that all the work is done outside the
...
main loop.
2004-11-16 10:55:01 +00:00
Patrick Caulfield
20f3408d96
Report detailed errors in cluster initialisation to syslog, and point the user
...
at syslog if clvmd fails to intialise.
2004-11-11 14:51:23 +00:00
Patrick Caulfield
e9d86789db
Can now build a gulm version of clvmd instead of a cman one. use
...
./configure --with-clvmd=gulm
The default is still cman, and you can't have both - sorry.
2004-11-03 10:45:07 +00:00
Patrick Caulfield
d48f8bf5cc
Make clvmd -V display the lvm version number too rather than just
...
the protocol version (which is not that useful and doesn't change very often).
2004-10-06 12:36:47 +00:00
Patrick Caulfield
99d97754a6
Revert the fork back to where it was as it seems to confuse pthreads.
...
Instead, the parent now waits for the daemon to signal that it has
completed successfully (or not) so it can return status to the user.
2004-10-06 10:12:34 +00:00
Patrick Caulfield
b9d437de2a
Change some perror() calls to log_error() so they'll appear in
...
syslog when we're a daemon.
2004-10-06 10:02:25 +00:00
Patrick Caulfield
11403f2019
Check the UUID length when readingthe output of the "lvs" command at startup.
...
This way we should not get quite so confused by any debugging output
that may come our way.
2004-10-04 09:23:52 +00:00
Patrick Caulfield
14ae59885a
Make clvmd cope with large gaps in nodeIDs
2004-09-30 14:18:29 +00:00
Patrick Caulfield
e3ef54f99b
Fork a little later in the startup sequence so that we can return
...
an error code if the cluster infrastructure isn't there.
2004-09-30 14:16:28 +00:00
Patrick Caulfield
6533aa865a
Keep client locks (VG locks usually) in their own hash table so
...
we can actually have more then one of them per client.
2004-09-24 09:39:57 +00:00
Patrick Caulfield
953f4838dd
Make the thread handling a little less cavalier. In particular, calling
...
pthread_exit in a signal handler was a /really/ bad idea.
2004-09-23 12:51:56 +00:00
Patrick Caulfield
130b892d34
Don't use hold_lock for VG locks as that doesn't stop processes contending
...
on the same node, only across the cluster.
2004-09-23 12:29:35 +00:00
Patrick Caulfield
d0ca74ad27
Put some locking round the LV hash table as it could be accessed by
...
different threads concurrently.
2004-09-22 12:10:34 +00:00
Alasdair Kergon
c65d95bf29
Cluster-extension-only installation.
2004-08-18 18:57:40 +00:00
Patrick Caulfield
3527fcf1d5
Updated file from cman.
2004-08-18 16:04:35 +00:00
Alasdair Kergon
20c0adb961
Fix LD_FLAGS->LDFLAGS. LD_DEPS->LDDEPS.
...
Update configure script: add --disable-selinux & some missing messages.
2004-06-28 14:01:24 +00:00
Patrick Caulfield
a01e03562f
Make sure errors reach syslog().
2004-06-28 10:26:42 +00:00
Alasdair Kergon
858a2b1b88
Add cluster support.
2004-06-24 08:02:38 +00:00