Commit Graph

715 Commits

Author SHA1 Message Date
Christine Caulfield
2bab5b36cc Remove the disliked *_from calls from the objdb and recast
the confdb library to use the new find_create/find_next/find_destroy API
calls instead.

I've kept the libcondfb API the same as before with the single change of
adding a confdb_object_find_destroy to tidy up the find handle after
use. If you don't call this then libcondfb will do it for you when
confdb_finalize is called.



git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1660 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-08-26 07:34:22 +00:00
Angus Salkeld
b56ce92fab Zero out unused totemsrp my_proc_list entries
When making my_proc_list smaller, ensure that the
now non-used entries are zero-ed out. There are some suspect
assert's that assume that there is always 2 entries in the list.
These fail when my_proc_list is reduced to 1 entry (and the
valid [0] entry is the same as the 'unused' [1] entry).

Author: Mark Wutzke <mark.wutzke@alliedtelesis.co.nz>



git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1659 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-08-20 01:07:29 +00:00
Angus Salkeld
5828bee144 aisexec crash on exit
Cause:
As part of its exit procedure, ais cancels its worker thread then manually
processes any outstanding items that were still in the worker thread's queue.
The worker thread has a low priority so normally it does not execute any
further before ais finishes exiting, but if the main thread's exiting is
delayed for any reason, there is a chance the worker thread could execute and
try to process items which have already been processed and freed by the main
thread - often leading to the worker thread seeing NULL data and ultimately
causing a segmentation fault.

Fix:
Modified worker_thread_group_exit() so it does a pthread_join() after the
pthread_cancel() call, so that the worker thread always shuts down cleanly
before the main thread does its cleanup.

Author: Author: Mark McKinstry <mark.mckinstry@alliedtelesis.co.nz>




git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1658 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-08-20 01:02:43 +00:00
Angus Salkeld
280ef18d61 Fix to display strings safely in debug messages.
Display strings safely, even if they are invalid, e.g. data in a received
message was corrupted.

Author: Tim Beale <tim.beale@alliedtelesis.co.nz>



git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1657 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-08-20 01:00:44 +00:00
Angus Salkeld
31aa88aefb Provide a way to configure (at compile time) message and queue sizes.
This patch makes it possible to override the following #defines:
MESSAGE_SIZE_MAX
MESSAGE_QUEUE_MAX
SIZEQUEUE
FLOW_CONTROL_ENTRIES_ENABLE

If MESSAGE_SIZE_MAX is defined as 1024*64 (64K) and
MESSAGE_QUEUE_MAX defined as 512 you can change corosync's
memory footprint from ~48M to ~8M

So if you define MESSAGE_QUEUE_MAX, the queue size will
not be based on the message size any more.

To use this define the defines on the command line:
make CFLAGS="-DMESSAGE_SIZE_MAX=1024*64 -DMESSAGE_QUEUE_MAX=512"



git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1656 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-08-20 00:57:40 +00:00
Steven Dake
01b8bc6ab2 Finish the renaming of openais to corosync in the tree.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1646 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-08-15 06:15:26 +00:00
Steven Dake
dd3991c0bb Proper rename of openais usage to corosync throughout tree.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1637 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-08-14 16:54:46 +00:00
Steven Dake
e1f531380a Revert patch 1633 which breaks build.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1636 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-08-14 16:44:26 +00:00
Steven Dake
c4a1c7eb96 Change all occurances of openais to corosync.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1633 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-08-14 16:04:01 +00:00
Fabien Thomas
0c92a5e564 reorganize include file to match installed tree to build openais without installing corosync; correct some warnings and error under FreeBSD and Darwin
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1632 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-08-14 14:59:50 +00:00
Fabio M. Di Nitto
e4cfe7eb21 Revert config_verifyconf logic that is unnecessary
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1631 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-08-14 12:05:39 +00:00
Fabio M. Di Nitto
010198fac4 Add support for reload operations within objdb and plugins.
Use a 2 phase "commit" operation:
1) Invoke verifyconfig that should catch the errors before the reload operation
2) Invoke reloadconfig that performs the operation and should _never_ fail

Implementation note: if step 2 fails, there is no fall back at the moment.

Fix the IPC table for confdb:
MESSAGE_REQ_CONFDB_XPATH_EVAL_EXPRESSION = 12 was added to include/ipc_confdb.h
without an associated call. Thanks Chrissie for spotting this.



git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1629 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-08-13 03:58:03 +00:00
Steven Dake
cd2f61adfd Add some totem process group interfaces to the API.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1628 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-08-12 09:06:46 +00:00
Fabio M. Di Nitto
38f8abd072 objdb: change list_add to list_add_tail when adding keys and objects
service: change openais_service_unlink_all to deal with the new objdb order

cleanup a few whitespaces



git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1627 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-08-12 08:41:09 +00:00
Steven Dake
50c25e7609 Add module load and unload to the exported coroapi.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1626 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-08-06 15:00:47 +00:00
Steven Dake
225b183bcb Add callback notification about changes to the object db and confdb apis.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1625 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-08-05 16:34:14 +00:00
Fabio M. Di Nitto
86119131e0 Fix crash in logsys new API
logsys_config_priority_set lacked a check for logsys_single_id that
left logsys_subsys_id uninitialized.



git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1624 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-08-05 14:53:46 +00:00
Steven Dake
617dbdf2f0 Split openais and corosync tree into two seperate repositories.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1622 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-08-05 13:23:46 +00:00
Steven Dake
46babc95ad Initial move of corosync and openais trees into seperate directories.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1582 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-07-21 07:59:08 +00:00
Steven Dake
ece8efaec9 Add ability to track changes to queue groups in the messaqge service.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1580 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-07-21 07:34:08 +00:00
Steven Dake
6a518947d4 Allow setting of the logsys priority to one lower then was already specified.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1579 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-07-14 11:07:39 +00:00
Steven Dake
bbb7a141cc Revert incorrect patch.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1578 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-07-14 11:05:13 +00:00
Steven Dake
1c1800dd1b Allow setting of lower priority which is currently disabled.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1577 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-07-14 10:58:28 +00:00
Steven Dake
eef9f0644b Allow users of logsys to disable output of logging LOG_LEVEL_DEBUG messages
via log_mode_set.


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1576 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-07-14 10:55:28 +00:00
Steven Dake
49dd2badad Fix error in a previous logsys patch.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1574 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-07-10 23:52:38 +00:00
Patrick Caulfield
f3256e4198 Add a missing object_find_reset() call.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1573 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-07-07 08:49:21 +00:00
Steven Dake
8ab1d3aa9f Add init/config entry points for those that dont with to use macros in logsys.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1572 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-07-02 22:58:03 +00:00
Patrick Caulfield
a53b222341 Add cpg_groups_get call to libcpg.
This call causes a complete list of active groups and their
membership lists to be sent to a callback function.


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1571 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-07-02 07:19:50 +00:00
Steven Dake
5f31ffa559 Add two new modes LOG_MODE_SHORT_FILELINE and LOG_MODE_NOSUBSYS.
LOG_MODE_SHORT_FILELINE strips the leading path from the file name in
a debug output.  LOG_MODE_NOSUBSYS removes a global variable and provides
the ability to set or unset this via config_mode_set.


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1570 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-07-01 22:08:15 +00:00
Patrick Caulfield
e1c909598d this patch fixes a segfault/crash in confdb_write.
If the operation is succesful there is no need to set error_string. If error_string is not set, don't try to access it or we crash.

At the same time perform the same check in libconfdb when we receive the reply.

Fabio 


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1569 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-07-01 07:23:25 +00:00
Steven Dake
89bd6e3a57 Allow syslog priority configurations per subsystem in logsys.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1568 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-06-24 08:43:53 +00:00
Steven Dake
81d5565256 Remove warnings of unused variables in main.c
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1566 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-06-24 04:54:28 +00:00
Steven Dake
43d7517eb9 Allow make in the exec directory to work even if root/lcr isn't yet built.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1565 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-06-24 04:52:42 +00:00
Steven Dake
0d498c6628 Add #include assert.h to some AMF files.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1564 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-06-24 04:49:29 +00:00
Steven Dake
4cb815a6ce Forward port of the synchronization engine into trunk.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1563 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-06-24 04:46:03 +00:00
Steven Dake
a7f4b6d8cb Fix a ton of bugs in totem by forward porting the whitetank totem code into
trunk.


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1562 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-06-24 04:45:38 +00:00
Steven Dake
9e2376fcc0 Remove totemip.h reference from file.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1561 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-06-24 04:44:45 +00:00
Steven Dake
31779dc311 Remove totemip reference from file.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1560 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-06-24 04:44:36 +00:00
Steven Dake
558fcdc4aa remove totemip.h reference from file.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1559 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-06-24 04:44:21 +00:00
Steven Dake
94391fd19b Fix unlock_algorithm in lock service.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1558 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-06-23 22:44:06 +00:00
Steven Dake
80f4d57d5e Improve the async version of locking library patch from Xinwei Hu.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1557 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-06-23 22:42:42 +00:00
Steven Dake
5068ac3e1d Allow user to retrieve logsys mode.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1555 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-06-20 06:06:56 +00:00
Steven Dake
6d7baee4b0 Remove extra unneeded configuration option from logsys.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1554 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-06-20 06:04:03 +00:00
Steven Dake
addd57e7a3 Use logsys_facility_id_get to do the string conversion instead of doing
it in the openais configuration parser.


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1553 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-06-20 05:54:11 +00:00
Steven Dake
f323f47343 Message service implemntation - more apis now supported.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1552 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-06-13 18:36:21 +00:00
Steven Dake
d7fdcacc90 Fix linking of other projects against logsys on ppc64.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1550 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-05-20 16:26:16 +00:00
Steven Dake
1cfebbddca Remove exit when logsys files can't be created.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1549 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-05-20 16:18:28 +00:00
Steven Dake
9dc78ee584 Fix loading of multiple objects.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1547 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-05-14 15:48:54 +00:00
Steven Dake
8f2ec814d1 Repair invalid commit.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1545 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-05-12 15:57:42 +00:00
Steven Dake
7ec44aface Add ckpt service back in from incorrect patch that was committed found during tesitng of rpm of 0.83-1.fc10.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1544 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-05-12 15:52:11 +00:00