Commit Graph

79 Commits

Author SHA1 Message Date
Christine Caulfield
cfc7da3573 quorum is now an optional loadable module (though I've put it into the
defaults in services.c) and can load another module to do the quorum
work (eg YKD which I've made more compliant too). All the quorum code
has been removed from sync.c. quorum.c is simply a shim later for the
coroapi, the main module is in vsf_quorum.c

There are coroapi calls to query quorate status and also to get
notifications when it changes.

I've included the testquorum.lcrso module in this patch because I think
it's really helpful for testing. It sets the quorum state based on an 
objdb variable, this can be set or cleared using corosync-cfgtool



git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1704 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-12-08 15:55:41 +00:00
Angus Salkeld
bb57c27e56 Add a top level "make lint"
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1684 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-11-01 08:19:18 +00:00
Christine Caulfield
5bb7ca5da5 This is an initial pass at a top-level quorum system. As it stands, this
module doesn't provide quorum itself, merely a framework for setting and
querying it. I envisage YKD plugging into this rather than straight into
sync() eventually.

I've plugged this into the sync() routines rather than replacing them so
that quorum is itself a VSF, rather than a replacement - I'm not sure if
that is best or not. Opinions are welcome.

I've added an extra enum member to the service_handler so that we can
send IPC messages when the cluster isn't quorate. This will default to
NO (as now) but allows us to query and set quorum when we don't have it
.. a useful feature !



git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1674 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-10-13 14:27:41 +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
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
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
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
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
a316334d31 Apply suggestion from Andrew for srcdir functionality.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1533 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-05-05 14:14:25 +00:00
Steven Dake
b12c024493 Allow make from the exec directory.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1532 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-05-02 14:17:03 +00:00
Steven Dake
2074e8df56 Patch to reinitialize logsys internal variables after a fork for correct
operation.


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1519 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-04-21 15:15:48 +00:00
Patrick Caulfield
9ab240e478 Add confdb, a library to access the configuration object database.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1516 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-04-16 12:07:05 +00:00
Steven Dake
b471e97b07 Patch to make sure make clean works as advertised.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1488 fd59a12c-fef9-0310-b244-a6a79926bd2f
2007-11-28 18:52:35 +00:00
Fabien Thomas
30c10a4384 add missing objdb for static build
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1476 fd59a12c-fef9-0310-b244-a6a79926bd2f
2007-10-25 09:46:00 +00:00
Steven Dake
b6071cc4c0 Makefile system improvements from Angus Salkeld
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1456 fd59a12c-fef9-0310-b244-a6a79926bd2f
2007-09-27 08:50:17 +00:00
Steven Dake
37e4f0f59c Fix reference counting in LCR code. Also fix problem with inability to compile
from the exec directory because PREFIX wasn't defined for lcr_ifact.c.


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1451 fd59a12c-fef9-0310-b244-a6a79926bd2f
2007-09-15 20:48:31 +00:00
Steven Dake
113a3c4f88 The logsys logging system. Read logsys_overview.8.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1428 fd59a12c-fef9-0310-b244-a6a79926bd2f
2007-09-09 06:38:10 +00:00
Steven Dake
336dc17daa Forward port of flow control work from whitetank branch.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1289 fd59a12c-fef9-0310-b244-a6a79926bd2f
2006-11-04 22:29:14 +00:00
Steven Dake
90ccff6bbc Solaris port for openais
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1175 fd59a12c-fef9-0310-b244-a6a79926bd2f
2006-08-05 02:22:12 +00:00
Steven Dake
640cfba2ab Add support for reenabling a failed redundant ring and printing ring status
through the test/opeanis-cfgtool application.


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1137 fd59a12c-fef9-0310-b244-a6a79926bd2f
2006-07-19 19:31:01 +00:00
Steven Dake
75b73bc3e0 Fix library renames to 2.0.0 as needed by distros.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1119 fd59a12c-fef9-0310-b244-a6a79926bd2f
2006-07-13 21:57:35 +00:00
Steven Dake
e6516df88c Removed ais_amf.h and instead point all refs to saAmf.h
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1088 fd59a12c-fef9-0310-b244-a6a79926bd2f
2006-06-26 20:30:15 +00:00
Steven Dake
01afe82393 32/64/mixed endian support for checkpoint service.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1074 fd59a12c-fef9-0310-b244-a6a79926bd2f
2006-06-21 21:15:16 +00:00
Hans Feldt
e993689ac5 Refactoring of AMF into several files (based on classed in inf.
model). A central header file (amf.h) keeps all the definitions and
prototypes needed.

New things apart from that:
- some doxygen html generated from AMF e.g. each file has a description
- saAmfHAStateGet() now works
- component invoked healthchecks implemented (but not tested)



git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1071 fd59a12c-fef9-0310-b244-a6a79926bd2f
2006-06-20 06:45:16 +00:00
Steven Dake
ad2fa27191 deferred timer system so that timers may be deferred during synchronization.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1067 fd59a12c-fef9-0310-b244-a6a79926bd2f
2006-06-16 19:51:55 +00:00
Steven Dake
d193826724 Allow CFLAGS and LDFLAGS to be overridden through the environment or command
line.


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1065 fd59a12c-fef9-0310-b244-a6a79926bd2f
2006-06-16 19:07:28 +00:00
Steven Dake
6fa2d1e767 This sanitizes the makefiles in several ways
* .so and .so.1 files are linked to library.so.1.0.0 and installed with
make install
* renames all build targets to library.so.1.0.0 from library.so.1.0
* puts ld.so.conf.d files in the correct place
* allows not installing static libraries by using make install
STATICLIBS=NO


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1054 fd59a12c-fef9-0310-b244-a6a79926bd2f
2006-05-27 02:19:09 +00:00
Hans Feldt
a5019f2edc - Preprocessor flags to control user, group and directory for
configuration files removed.

- Environment variables for the same thing added:
	OPENAIS_AISPARSER_FILE
	OPENAIS_AMF_CONFIG_FILE
	OPENAIS_TOTEM_AUTHKEY_FILE

- Make depend target in exec makefile updated with missing source files.




git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1022 fd59a12c-fef9-0310-b244-a6a79926bd2f
2006-05-10 06:20:00 +00:00
Steven Dake
3c7f8b7c05 This patch reworks IPC to use threads instead of the main poll loop
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1011 fd59a12c-fef9-0310-b244-a6a79926bd2f
2006-04-27 01:39:10 +00:00
Steven Dake
3bab5bffb4 Make install now works along with different search paths for openais's
lcrsos.


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@996 fd59a12c-fef9-0310-b244-a6a79926bd2f
2006-04-19 20:39:25 +00:00
Steven Dake
dd18b864d8 scale part 3
componentize YKD dynamic linear voting algorithm


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@982 fd59a12c-fef9-0310-b244-a6a79926bd2f
2006-04-13 23:11:07 +00:00
Patrick Caulfield
d8fc111119 - Fix BUILD_DYNAMIC=0 (add amfconfig.o to SERV_OBJS)
- add objdb->object_find_reset() before looking for user/group names.


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@978 fd59a12c-fef9-0310-b244-a6a79926bd2f
2006-04-10 09:40:30 +00:00
Patrick Caulfield
3568f26625 Use objdb for configuration. All components now get a reference to
the objdb rather than openais_config.

The default config object "aisparser" reads openais.conf as before, but can
be overridden by an environment variable.

Bug 1132



git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@969 fd59a12c-fef9-0310-b244-a6a79926bd2f
2006-04-06 10:31:28 +00:00
Fabien Thomas
064ffb17a1 Bug 1130: add totempg log; remove warnings; add DPRINT macro
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@954 fd59a12c-fef9-0310-b244-a6a79926bd2f
2006-03-24 08:28:12 +00:00
Steven Dake
4a33ba11fa defect 1139
merge object database and do a general refactor of the code


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@952 fd59a12c-fef9-0310-b244-a6a79926bd2f
2006-03-18 21:00:19 +00:00
Steven Dake
ab640472a5 Patch from Hans
This patch (against r950) makes it possible to change the directory
where aisexec searches for configuration files. Pretty much in line with
the possibility to specify user and group. Just do:

make OPENAIS_CONFDIR=/tmp/ais



git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@951 fd59a12c-fef9-0310-b244-a6a79926bd2f
2006-03-17 09:36:13 +00:00
Steven Dake
b855d18145 Patch from Hans Feldt
This small patch (against r948) adds variable CPPFLAGS to all make rules 
that compiles `.c' files into `.o' files.

This makes it possible to set CPPFLAGS on the command line as in:

$ make CPPFLAGS=-DAMFDEBUG

Editing the makefile when prototyping is then not needed.

Another reason is that some of the openais C files are built using the 
implicit rule for C files (which uses CPPFLAGS). The change makes rules 
consistent with the implicit rule.

It also adds a few missing files to the clean make target.



git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@950 fd59a12c-fef9-0310-b244-a6a79926bd2f
2006-03-16 05:41:28 +00:00
Fabien Thomas
dbe3eeb295 repair OPENAIS_COVERAGE, OPENAIS_PROFILE
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@944 fd59a12c-fef9-0310-b244-a6a79926bd2f
2006-03-07 22:50:50 +00:00
Patrick Caulfield
55ccceeb54 Add cpg (closed process groups) component.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@936 fd59a12c-fef9-0310-b244-a6a79926bd2f
2006-03-03 08:46:45 +00:00
Steven Dake
cf160dd9cd Fabien's patch for the BSD/Darwin port.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@926 fd59a12c-fef9-0310-b244-a6a79926bd2f
2006-02-21 07:32:00 +00:00
Steven Dake
166609be38 Cleanup of dynamic loading to allow using the same interface factory code for
statically linked components.


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@916 fd59a12c-fef9-0310-b244-a6a79926bd2f
2006-02-10 00:30:29 +00:00
Steven Dake
43a36162b3 1049
make all service handlers dynamically loadable or compilable statically
use the BUILD_DYNAMIC flag in the makefile to set dynamic loading or static
compile.


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@914 fd59a12c-fef9-0310-b244-a6a79926bd2f
2006-02-01 21:17:47 +00:00
Steven Dake
f6cfe4e86e This is a major rework of the service handling code. Now service handlers
can be dynamically loaded via the live component replacement service.  Sync
handlers are also dynamically contributed.

It is possible to build using either dynamic loading via LCR or static
linking of the entire executive.  This is controlled by the BUILD_DYNAMIC 
configuration option in the Makefile.


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@892 fd59a12c-fef9-0310-b244-a6a79926bd2f
2006-01-20 20:40:21 +00:00
Steven Dake
7b2ddfa428 enhancement 1020
Adds AMF B.01.01 support - still needs alot of work


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@879 fd59a12c-fef9-0310-b244-a6a79926bd2f
2006-01-03 05:51:38 +00:00
Steven Dake
f5ee79a774 enhancement 1018
Add YKD dynamic voting algorithm to executive code


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@873 fd59a12c-fef9-0310-b244-a6a79926bd2f
2006-01-02 06:40:29 +00:00
Steven Dake
c4b3d9af4b defect 982
Fixes ckpt list corruption on failure to allocate checkpoint replica


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@862 fd59a12c-fef9-0310-b244-a6a79926bd2f
2005-12-08 18:27:57 +00:00
Steven Dake
e4dfef72d5 defect 979
This enhancement adds support for IPV6 to the trunk of openais.


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@856 fd59a12c-fef9-0310-b244-a6a79926bd2f
2005-11-30 19:44:40 +00:00