Commit Graph

223 Commits

Author SHA1 Message Date
Mark Haverkamp
acba87e179 Completed most of the event service functionality.
(Logical change 1.63)


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@223 fd59a12c-fef9-0310-b244-a6a79926bd2f
2004-09-02 17:16:25 +00:00
Mark Haverkamp
ee26e7cd90 Initial revision
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@222 fd59a12c-fef9-0310-b244-a6a79926bd2f
2004-09-02 17:16:24 +00:00
Steven Dake
87e120a1f8 Mark a bug for later resolution
(Logical change 1.62)


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@221 fd59a12c-fef9-0310-b244-a6a79926bd2f
2004-08-31 08:21:44 +00:00
Steven Dake
f6b2a745a3 Added the EVS service and changed the library queue
to 256 entries.

(Logical change 1.62)


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@220 fd59a12c-fef9-0310-b244-a6a79926bd2f
2004-08-31 08:21:44 +00:00
Steven Dake
d5fa76ceb9 Major rewrite of saRecvQueue. Fixed is:
activate poll messages are not sent over and over
The message header is read into the return buffer
if the message doesn't match, a new message is allocated
This allows the message buffer for saRecvQueue to be
small, but allows receiving very large messages.

(Logical change 1.62)


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@219 fd59a12c-fef9-0310-b244-a6a79926bd2f
2004-08-31 08:21:44 +00:00
Steven Dake
942efa4085 Add the evs library
(Logical change 1.62)


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@218 fd59a12c-fef9-0310-b244-a6a79926bd2f
2004-08-31 08:21:44 +00:00
Steven Dake
3ce7b69581 Added the evs target.
(Logical change 1.62)


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@217 fd59a12c-fef9-0310-b244-a6a79926bd2f
2004-08-31 08:21:44 +00:00
Steven Dake
8dac3d1f7c This changeset includes major fixes to the IPC from the executive
to the library.  Also included is an entirely new API called the
EVS api (Extended Virtual Synchrony).  This API provides EVS semantics
for those developers that require this model of programming.  The
API is defined in include/evs.h and is very simple.

The API provides:
group semantics with 32 byte group keys.
delivery callback
configuration change callback
join one or more groups
leave one or more groups
multicast a message to the instance's joined groups
multicast a message to any other group

Makefile:
  Add the testevs and evsbench targets.
evs.c, testevs.c, evsbench.c, evs.h:
  new file
Makefile:
  Add the evs library
util.c:
  Major rewrite of saRecvQueue.  Fixed is:
  activate poll messages are not sent over and over
  The message header is read into the return buffer
  if the message doesn't match, a new message is allocated
  This allows the message buffer for saRecvQueue to be
  small, but allows receiving very large messages.
amf.c:
  Mark a bug for later resolution
ais_msg.h:
  Add the evs messages and descriptors.
Makefile:
  Added the evs target.
main.h:
  Added the EVS service and changed the library queue
  to 256 entries.
main.c:
  major rewrite of the IPC code for sending messages
  to the library.  What was there previously was very
  broken.
gmi.c:
  Fix bug where transition from multiple members to
  single members would cause messages not to be sent.
  Also fixed an assertion in transition from multiple
  processors to one processor.

BKrev: 41343518pVUD6aQu4urTw6ClPiOl3w


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@216 fd59a12c-fef9-0310-b244-a6a79926bd2f
2004-08-31 08:21:44 +00:00
Steven Dake
d3c3c3172a Add the testevs and evsbench targets.
(Logical change 1.62)


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@215 fd59a12c-fef9-0310-b244-a6a79926bd2f
2004-08-31 08:21:44 +00:00
Steven Dake
50a4099c23 major rewrite of the IPC code for sending messages
to the library.  What was there previously was very
broken.

(Logical change 1.62)


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@214 fd59a12c-fef9-0310-b244-a6a79926bd2f
2004-08-31 08:21:44 +00:00
Steven Dake
e499b97318 Add the evs messages and descriptors.
(Logical change 1.62)


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@213 fd59a12c-fef9-0310-b244-a6a79926bd2f
2004-08-31 08:21:44 +00:00
Steven Dake
099ebf3273 (Logical change 1.62)
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@212 fd59a12c-fef9-0310-b244-a6a79926bd2f
2004-08-31 08:21:44 +00:00
Steven Dake
07dd45a275 Fix bug where transition from multiple members to
single members would cause messages not to be sent.
Also fixed an assertion in transition from multiple
processors to one processor.

(Logical change 1.62)


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@211 fd59a12c-fef9-0310-b244-a6a79926bd2f
2004-08-31 08:21:44 +00:00
Steven Dake
b46d9a2ddf Initial revision
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@210 fd59a12c-fef9-0310-b244-a6a79926bd2f
2004-08-31 08:21:43 +00:00
Steven Dake
343544b5d3 gmi.c:
Flush all multicast messages by delivering them before
  processing the token.  This ensures that the mcast fd
  doesn't buffer too many old messages and avoids an assert.

BKrev: 412fd3cesE7M-pXl9OZs1X2CyK7Y4A


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@209 fd59a12c-fef9-0310-b244-a6a79926bd2f
2004-08-28 00:37:34 +00:00
Steven Dake
287a5c5359 Flush all multicast messages by delivering them before
processing the token.  This ensures that the mcast fd
doesn't buffer too many old messages and avoids an assert.

(Logical change 1.61)


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@208 fd59a12c-fef9-0310-b244-a6a79926bd2f
2004-08-28 00:37:34 +00:00
Steven Dake
aeb30a0848 Add initial support for multipathing to group messaging.
(Logical change 1.60)


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@207 fd59a12c-fef9-0310-b244-a6a79926bd2f
2004-08-24 01:21:33 +00:00
Steven Dake
b09ed9faf0 Change gmi interface to support multipathing.
(Logical change 1.60)


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@206 fd59a12c-fef9-0310-b244-a6a79926bd2f
2004-08-24 01:21:33 +00:00
Steven Dake
32005b93cd Change network configuration parser interface to support
multipathing.

(Logical change 1.60)


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@205 fd59a12c-fef9-0310-b244-a6a79926bd2f
2004-08-24 01:21:33 +00:00
Steven Dake
9a7835bc15 parse.h:
Change network configuration parser interface to support
  multipathing.
gmi.h, main.c:
  Change gmi interface to support multipathing.
parse.c:
  Change network configuration parser to read multiple interfaces.
gmi.c:
  Add initial support for multipathing to group messaging.

BKrev: 412a981dC8TjKSqUYOtAx6jKoO-UlA


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@204 fd59a12c-fef9-0310-b244-a6a79926bd2f
2004-08-24 01:21:33 +00:00
Steven Dake
d4fef2d5b2 Change network configuration parser to read multiple interfaces.
(Logical change 1.60)


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@203 fd59a12c-fef9-0310-b244-a6a79926bd2f
2004-08-24 01:21:33 +00:00
Mark Haverkamp
ecdfa6f923 Need to check the size of the response header here.
(Logical change 1.59)


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@202 fd59a12c-fef9-0310-b244-a6a79926bd2f
2004-08-23 22:27:07 +00:00
Mark Haverkamp
22cfdcf95c Need to check the size of the response header instead of the
request header in saRecvQueue.

BKrev: 412a6f3b4NlVb-n94TuM1jqiD4KUgA


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@201 fd59a12c-fef9-0310-b244-a6a79926bd2f
2004-08-23 22:27:07 +00:00
Steven Dake
e325206977 Clean up usage of ais_done. This includes passing a
value for each done type.  Also, libais_disconnect cleaned up
so it doesn't ais_done when its queues are full.  Instead it
disconnects the library connection.  A new connection state
variable added to the conn_info structure in place of active.

(Logical change 1.58)


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@200 fd59a12c-fef9-0310-b244-a6a79926bd2f
2004-08-23 05:24:21 +00:00
Steven Dake
c4523cbe19 Changed number of queueable messages to the library from 8192
to 128 messages.

(Logical change 1.58)


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@199 fd59a12c-fef9-0310-b244-a6a79926bd2f
2004-08-23 05:24:21 +00:00
Steven Dake
f6c49d8d06 Use new connection enumeration with AMF code.
(Logical change 1.58)


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@198 fd59a12c-fef9-0310-b244-a6a79926bd2f
2004-08-23 05:24:21 +00:00
Steven Dake
35bc69551d main.h:
Changed number of queueable messages to the library from 8192
  to 128 messages.
main.c:
  Clean up usage of ais_done.  This includes passing a
  value for each done type.  Also, libais_disconnect cleaned up
  so it doesn't ais_done when its queues are full.  Instead it
  disconnects the library connection.  A new connection state
  variable added to the conn_info structure in place of active.
amf.c:
  Use new connection enumeration with AMF code.

BKrev: 41297f85ZsPdr8oHUfjQ6v_A6b6ybw


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@197 fd59a12c-fef9-0310-b244-a6a79926bd2f
2004-08-23 05:24:21 +00:00
Steven Dake
0da6e1eac3 Missed commit to changes for queue.h.
(Logical change 1.57)


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@196 fd59a12c-fef9-0310-b244-a6a79926bd2f
2004-08-22 23:04:53 +00:00
Steven Dake
d6a29832db queue.h:
Missed commit to changes for queue.h.
ais_msg.h:
  Missed commit of changes to ais_msg.h.

BKrev: 41292695YG_qjNyfkNoFlMFaeiR7zg


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@195 fd59a12c-fef9-0310-b244-a6a79926bd2f
2004-08-22 23:04:53 +00:00
Steven Dake
4bd78a016e Missed commit of changes to ais_msg.h.
(Logical change 1.57)


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@194 fd59a12c-fef9-0310-b244-a6a79926bd2f
2004-08-22 23:04:53 +00:00
Steven Dake
d52f1fdf74 Add flow control documentation to devmap.
.l

2004/08/22 15:24:25-07:00 mvista.com!sdake
Add event service to devmap.

(Logical change 1.56)


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@193 fd59a12c-fef9-0310-b244-a6a79926bd2f
2004-08-22 22:46:29 +00:00
Steven Dake
bcbf6ebfca README.devmap:
Add flow control documentation to devmap.
  Add event service to devmap.

BKrev: 412922454HMPjB41f5bgMaos4soalg


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@192 fd59a12c-fef9-0310-b244-a6a79926bd2f
2004-08-22 22:46:29 +00:00
Steven Dake
f2407f15c6 Cleanup errors in Makefile.
(Logical change 1.55)


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@191 fd59a12c-fef9-0310-b244-a6a79926bd2f
2004-08-20 22:18:34 +00:00
Steven Dake
f6e476463b Change interface so there is a new libais_handler structure.
(Logical change 1.55)


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@190 fd59a12c-fef9-0310-b244-a6a79926bd2f
2004-08-20 22:18:34 +00:00
Steven Dake
5e55537d8f Add support for flow control to amf library.
(Logical change 1.55)


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@189 fd59a12c-fef9-0310-b244-a6a79926bd2f
2004-08-20 22:18:34 +00:00
Steven Dake
2a263fdd00 Add support to group messaging to get flow control information.
(Logical change 1.55)


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@188 fd59a12c-fef9-0310-b244-a6a79926bd2f
2004-08-20 22:18:34 +00:00
Steven Dake
40613009c5 Add flow control support to the checkpoint benchmark program.
(Logical change 1.55)


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@187 fd59a12c-fef9-0310-b244-a6a79926bd2f
2004-08-20 22:18:34 +00:00
Steven Dake
1066805247 Flow control changes.
(Logical change 1.55)


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@186 fd59a12c-fef9-0310-b244-a6a79926bd2f
2004-08-20 22:18:34 +00:00
Steven Dake
4b0c9c120a testamf3.c:
misc flow control changes.
ckptbenchth.c:
  Retry checkpoint writes on threaded writes if SA_ERR_TRY_AGAIn
  received.
ckptbench.c:
  Add flow control support to the checkpoint benchmark program.
util.c:
  Add flow control to saRecvQueue function.
evt.c:
  Add flow control to eventing.
clm.c:
  Add flow control to cluster membership.
ckpt.c:
  Add flow control to checkpointing.
amf.c:
  Add flow control to amf.
Makefile:
  Cleanup errors in Makefile.
main.h:
  Flow control changes.
handlers.h:
  Change interface so there is a new libais_handler structure.
gmi.h:
  Add support to group messaging for another priority level.
main.c:
  Add support to disconnect and dispatch to utilize flow control.
gmi.c:
  Add support to group messaging to get flow control information.
evt.c:
  Add support to eventing for flow control.
clm.c:
  Add support to clm for flow control.
ckpt.c:
  Add support for flow control to ckpt library.
amf.c:
  Add support for flow control to amf library.

BKrev: 412678baBKkyszbWcphf0Vg85SpLXg


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@185 fd59a12c-fef9-0310-b244-a6a79926bd2f
2004-08-20 22:18:34 +00:00
Steven Dake
bb75c650fd Retry checkpoint writes on threaded writes if SA_ERR_TRY_AGAIn
received.

(Logical change 1.55)


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@184 fd59a12c-fef9-0310-b244-a6a79926bd2f
2004-08-20 22:18:34 +00:00
Steven Dake
e5fe15c3e6 Add support to group messaging for another priority level.
(Logical change 1.55)


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@183 fd59a12c-fef9-0310-b244-a6a79926bd2f
2004-08-20 22:18:34 +00:00
Steven Dake
b1e08f10a5 Add flow control to eventing.
(Logical change 1.55)


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@182 fd59a12c-fef9-0310-b244-a6a79926bd2f
2004-08-20 22:18:34 +00:00
Steven Dake
89b57713cb Add flow control to cluster membership.
(Logical change 1.55)


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@181 fd59a12c-fef9-0310-b244-a6a79926bd2f
2004-08-20 22:18:34 +00:00
Steven Dake
11b4f97488 Add support to eventing for flow control.
(Logical change 1.55)


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@180 fd59a12c-fef9-0310-b244-a6a79926bd2f
2004-08-20 22:18:34 +00:00
Steven Dake
69fd2d8dcd Add support to disconnect and dispatch to utilize flow control.
(Logical change 1.55)


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@179 fd59a12c-fef9-0310-b244-a6a79926bd2f
2004-08-20 22:18:34 +00:00
Steven Dake
f3cf1df94c Add flow control to amf.
(Logical change 1.55)


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@178 fd59a12c-fef9-0310-b244-a6a79926bd2f
2004-08-20 22:18:34 +00:00
Steven Dake
52a1621c74 Add support for flow control to ckpt library.
(Logical change 1.55)


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@177 fd59a12c-fef9-0310-b244-a6a79926bd2f
2004-08-20 22:18:34 +00:00
Steven Dake
fc94289e33 misc flow control changes.
(Logical change 1.55)


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@176 fd59a12c-fef9-0310-b244-a6a79926bd2f
2004-08-20 22:18:34 +00:00
Steven Dake
a697171df7 Add flow control to saRecvQueue function.
(Logical change 1.55)


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@175 fd59a12c-fef9-0310-b244-a6a79926bd2f
2004-08-20 22:18:34 +00:00
Steven Dake
ca88544979 Add flow control to checkpointing.
(Logical change 1.55)


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@174 fd59a12c-fef9-0310-b244-a6a79926bd2f
2004-08-20 22:18:34 +00:00