summaryrefslogtreecommitdiffstats
path: root/daemons/cmirrord/cluster.c
Commit message (Collapse)AuthorAgeFilesLines
* cleanup: replace memset with struct initilizationZdenek Kabelac2012-06-221-2/+1
| | | | | Simplifies the code, properly detects too long socket paths, drops unused parameter.
* cmirrord: add missing checks for kernel_sendZdenek Kabelac2012-06-201-3/+6
| | | | Log errors if kernel_send fails.
* Fix bug in cmirror that caused incorrect status info to print on some nodes.Jonathan Earl Brassow2012-04-261-2/+2
| | | | | | | | | | | | | | | | Looking at the code in cmirrord/local.c, we can see the various different request types handled in different ways. Some information that is non-changing does not need to go around the cluster and can be short-circuited. For example, once the cluster mirror is in-sync, it is pointless to continue sending that query around the cluster. We can save network bandwidth and reply directly back to the kernel. When it comes to status information, there are two types 'TABLE' and 'INFO'. The 'TABLE' information never changes and belongs to the group of requests that can be safely short-circuited. The 'STATUS' information can change - and will change if a device fails. Thus it cannot be short-circuited, but this is exactly what was found. The 'STATUS' information request was being short-circuited and therefore never reporting the failure condition to anyone other than the "server" that experienced it directly.
* Remove some whitespaces.Milan Broz2012-03-101-7/+7
| | | | (test commit)
* s/CPG_/CS_: Various CPG constants are going away, even though CPG itself staysJonathan Earl Brassow2012-03-011-8/+8
| | | | | | | | | | F17 is getting rid of OpenAIS libraries (and checkpointing). While the CPG stuff is staying, some if its constants are being removed. So, we must adjust and use the remaining constants which the CPG constants were based on. [~]# egrep 'CPG_DISPATCH_ALL|CPG_OK' /usr/include/*/* corosync/corotypes.h:#define CPG_DISPATCH_ALL CS_DISPATCH_ALL corosync/corotypes.h:#define CPG_OK CS_OK
* Allow cluster mirrors to handle the absence of the checkpoint lib (libSaCkpt).Jonathan Earl Brassow2012-02-291-22/+115
| | | | | | | | | | | | The OpenAIS checkpoint library is going away; therefore, cmirrord must operate without it. The algorithms the handle the timing of when to send a checkpoint, the determination of what to send, and which ongoing cluster requests are relevent with respect to the checkpoints are unaffected. We need only replace the functions that actually perform the storing/transmitting and retrieving/receiving of the checkpoint data. Rather than store the checkpoint data in an OpenAIS checkpoint file, we simply transmit it along with the message that notifies the incoming node that the checkpoint is ready.
* Fix memory leak of allocated bitmap in error pathZdenek Kabelac2011-09-061-0/+2
| | | | Found by static analyzer.
* Fix missing initilisation to 0Zdenek Kabelac2010-10-251-1/+1
| | | | | Add missing init value for variable 'found' which is later tested and may have contained some garbage value.
* Use __attribute__ consistently throughout.Alasdair Kergon2010-07-091-5/+5
|
* Was using dm_list_iterate_items when I should have been usingJonathan Earl Brassow2010-01-271-2/+2
| | | | | | | *_safe. This had the effect of segfaulting the log daemon when converting a mirror from one log type to another. Signed-off-by: Jonathan Brassow <jbrassow@redhat.com>
* Deal with a few more compiler warnings.Alasdair Kergon2010-01-201-10/+11
|
* Clean up include files.Alasdair Kergon2010-01-181-23/+11
|
* Misc compilation clean-ups.Alasdair Kergon2010-01-181-6/+6
|
* Make the intermachine communication structures architecture independantJonathan Earl Brassow2010-01-151-28/+38
| | | | | | to allow for mixed architecture clusters. Signed-off-by: Jonathan Brassow <jbrassow@redhat.com>
* More cmirror makefile fixes from Fabio.Alasdair Kergon2009-09-141-16/+17
|
* Add daemons/cmirrord files to git - somehow got messed up with cvs rename.Dave Wysochanski2009-09-041-0/+1661
When clogd was renamed to cmirrord, somehow git got the remove of the old files but not the add of the new files. This patch adds the new files. Signed-off-by: Dave Wysochanski <dwysocha@redhat.com>