Commit Graph

1124 Commits

Author SHA1 Message Date
Angus Salkeld
73b7aa19bb Add value types to objdb keys.
This allows you to create a key with a know type.
And then get the type with the key value.



git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2511 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-10-10 03:20:38 +00:00
Christine Caulfield
2433ee3b2c This patche fixes a couple of small problems with votequorum:
- if a single node is booted with votequorum loaded then
   corosync-quorumtool shows zero nodes and no votes.
- votequorum doesn't always tell the main quorum module when a new node 
has joined the cluster (principally itself. this bug is actually tied 
into the above)

I've also added quorum to the default list of services. As quorum has 
been decoupled from sync it will not interfere with normal operations as 
it used to do and it makes more sense to have it there than not.



git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2510 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-10-06 12:57:35 +00:00
Steven Dake
978b60806b Totem IBA implementation.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2481 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-09-25 06:23:04 +00:00
Steven Dake
6ad014a315 make main_service_ready function static.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2480 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-09-25 06:06:31 +00:00
Steven Dake
6ae6f6e284 Fix abort with multiple cpg clients under heavy load.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2467 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-09-21 18:27:37 +00:00
Steven Dake
60d50de816 Remove warning in logsys compile related to const correctness.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2463 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-09-20 06:56:02 +00:00
Steven Dake
215ad336f2 Fix sigpipe handling to ignore sigpipes on systems which support them.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2419 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-09-20 05:36:52 +00:00
Steven Dake
eb5fa99cae Make delete operation work properly in coropoll.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2418 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-09-20 05:34:41 +00:00
Angus Salkeld
350cc0ae42 log the built-in features at startup
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2411 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-09-10 01:51:32 +00:00
Angus Salkeld
147c81ffab don't return the ip address when the mask is not found
Currently totemip_copy (boundto,&ipaddr) is called even when the
required mask is not found.

This patch changes the behavior to only copy the ipaddr when the
mask is found.

The current behavior makes debugging an incorrect config really
confusing.


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2409 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-09-09 18:55:17 +00:00
Angus Salkeld
f3b92eb6b3 Only insert the filename into the log, not the path.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2408 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-09-09 00:25:36 +00:00
Fabio M. Di Nitto
3ffb151aa7 Fix missing symbol error when loading plugins without executive
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2405 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-09-07 10:41:42 +00:00
Angus Salkeld
e1ceabc6ef Remove a double unlock in logsys.
In logsys there are a number of XYZ_unlocked() functions that are called
like this:

       pthread_mutex_lock (&logsys_config_mutex);

       XYZ_unlocked();

       pthread_mutex_unlock (&logsys_config_mutex);

The XYZ_unlocked() functions should not do any (un)locking.
But _logsys_config_subsys_get_unlocked() unlocks if it finds the subsys.
This means that there is 1 lock and 2 unlocks.



git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2404 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-09-07 08:33:23 +00:00
Christine Caulfield
898790d501 Return CS_ERR_NOT_EXIST if a client tries to contact a plugin that isn't loaded.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2403 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-09-07 07:28:25 +00:00
Steven Dake
519616de0c Fix off by one calculation error resulting in assertion.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2398 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-08-28 18:20:14 +00:00
Christine Caulfield
21fedb2495 Send CURRENT callbacks to the dispatch FD rather than the callback one.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2397 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-08-28 09:36:33 +00:00
Steven Dake
21825d46ea Fix incorrect assertion with frame sizes of 9000.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2395 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-08-28 01:19:30 +00:00
Jan Friesse
d11f1f90c2 Fix found_service_ver handling
Sometimes, when object_key_get doesn't return found_service_ver it
doesn't change old value and this value is then used in atoi what
will can cause fall of corosync. Patch fixes this case by setting
found_service_ver to NULL before call of object_key_get.


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2391 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-08-19 09:57:28 +00:00
Jan Friesse
55db0b67a2 Fix systems without _POSIX_THREAD_PROCESS_SHARED
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2390 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-08-19 09:55:49 +00:00
Steven Dake
f558917703 Proper limits checking for message sizes to allow ~1mb max message sizes for corosync.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2388 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-08-17 18:22:11 +00:00
Fabio M. Di Nitto
13f3c5bc6a Delay forking and closing of fds as much as possible
to allow startup wrappers (such as cman_tool) to collect
as much errors as possible in case of startup failure



git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2385 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-08-12 06:57:53 +00:00
Fabio M. Di Nitto
498f24fa32 corosync: move logsys thread config with all the others
logsys thread priority was configured after forking the
wthread process and spread the scheduler priority config
across a large chunk of code in main.c

Now that logsys scheduler priority can be invoked at any time,
move the code together with corosync_setscheduler code.



git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2383 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-08-10 05:39:45 +00:00
Fabio M. Di Nitto
6115c85328 logsys: fix segfault in logsys_thread_priority_set
logsys_thread_priority_set expects that wthread is already running
but doesn't perform any check if it is.

if logsys_thread_priority_set is invoked before forking the thread,
a segfault is guaranteed.

this changes to logsys_thread_priority_set ensure that a request
for a new scheduler priority is queued if the wthread is not
created yet and the new scheduler parameters are applied as early
as possible after the thread is created.

At the same time:

- add a few comments on clean up that needs to be done
- remove a redundant check for policy != SCHED_OTHER as that's
  corosync need specific. logsys should simply accept the request
  and apply it.



git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2382 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-08-10 05:32:58 +00:00
Jan Friesse
9931d50b31 Support for -v (version) feature
This can be usefull for easier way to get informations
of the corosync version from users. Version and SVN
revision (get by svninfo -c) are displayed.


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2381 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-08-04 07:39:03 +00:00
Christine Caulfield
27b55337ce This patch makes a copy of the notifications list before calling the
reload_notifications callbacks. This allows callback functions to 
manipulate the notifications list without causing corruption or strange 
loops.



git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2380 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-08-04 07:14:55 +00:00
Steven Dake
ee7ce5e328 Use unnamed shared posix semaphores on platforms which support them.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2379 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-08-04 00:22:41 +00:00
Steven Dake
4e3e77eb13 Always keep autogenerated node ids in totem as LE even on BE arches.
Have testcpg print out autogenerated nodeid properly on BE arch.


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2377 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-08-04 00:04:13 +00:00
Jan Friesse
2ef1853fe2 Support for systems where clock_gettime is not available
On some systems clock_gettime is not available so we are
testing availability and value of _POSIX_MONOTONIC_CLOCK.

On system without support of clock_gettime, we are using
old behaviour with function gettimeofday.


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2376 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-08-03 08:11:53 +00:00
Jan Friesse
c50a6bd065 Support for monotime timer
This patch should solve problems with corosync and ntp, by using
clock_gettime where it make sense.


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2373 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-07-27 10:12:55 +00:00
Steven Dake
69928e301a Add notification when totem has completed initialization.
This triggers the initialization of the service engines which may need totem
for initialization.



git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2372 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-07-27 02:00:05 +00:00
Steven Dake
f9f663f459 Add a target token set completed callback in totemrrp and below layers.
Handle management of callback in totemsrp.


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2371 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-07-27 00:29:32 +00:00
Jan Friesse
a1db33fc99 Handle NULL ver string in service
In case user not enter ver: in service section, whole
corosync falled with segfaul, because atoi was called
on NULL.

Now, in case of NULL, we rather not use atoi, and
return 0 directly.


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2370 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-07-23 14:50:56 +00:00
Steven Dake
5eae4c135c Optimization of totemsrp and below by removing hdb usage. cpgbench shows
results of 4% to 20% increase in tps and mbs depending on hardware.


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2369 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-07-22 22:10:35 +00:00
Jan Friesse
996850db39 Support for service.d
This patch is very similar to uidgid.d patch, but support for loading
services (so read service section).


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2368 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-07-22 08:25:45 +00:00
Steven Dake
5225b3809c Initial infrastructure changes to support iba. Split totemnet into
totemiba and totemudp and have totemnet call the appropriate transport
calls.


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2367 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-07-21 18:17:15 +00:00
Steven Dake
279e297842 Darwin is missing the sched_setscheduler system call.
Patch detects it and resolves the build failure.


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2366 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-07-21 01:31:39 +00:00
Jérôme Flesch
483fe491f9 BSD support: Fix EOF handling in coroipcs.c:req_setup_recv() and coroipcs:coroipcs_handler_dispatch()
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2345 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-07-02 07:47:04 +00:00
Steven Dake
176d80eafe Set version field in totem header in case it isn't set by default.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2340 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-07-01 20:29:55 +00:00
Steven Dake
c12253097f Send ERR_SECURITY when invalid security context is provided via ipc clients.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2338 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-07-01 20:04:20 +00:00
Steven Dake
7954f19ac3 Fix build on bsd systems.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2336 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-07-01 19:55:18 +00:00
Steven Dake
c5bccf1a7a Align syncv2 on 8 byte boundaries.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2335 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-07-01 19:48:14 +00:00
Steven Dake
9a2b66df63 Make compatibility mode none work properly.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2334 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-07-01 19:37:59 +00:00
Jim Meyering
4f1aabe431 remove unnecessary #include
* exec/evil.c: Don't include <signal.h>.

git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2323 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-06-30 09:27:27 +00:00
Jim Meyering
6aad39be63 remove trailing blanks
* corosync.spec.in:
* exec/evil.c:
* exec/main.c:
* exec/mainconfig.c:
* exec/syncv2.c:

git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2322 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-06-30 09:27:20 +00:00
Steven Dake
15d2c48963 Export poll handle via coroapi.h.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2318 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-06-29 23:24:24 +00:00
Steven Dake
2b31a4d94b Static-ize some main.c variables.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2316 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-06-28 06:03:06 +00:00
Steven Dake
fc2de3db2a Simplify notifications from totem at the notice level.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2315 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-06-28 05:26:25 +00:00
Steven Dake
56dbf70bb1 Remove hard coded sync values and use defines from coroapi.h.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2314 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-06-28 05:21:14 +00:00
Steven Dake
23aea08ae4 Slay the debug messages coming out at notice level in totem.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2313 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-06-28 05:12:27 +00:00
Steven Dake
47c6bc3aaf Remove totemsrp warning.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2312 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-06-28 04:57:31 +00:00