rpms/openais/devel revision-1552.patch, NONE, 1.1 openais.spec, 1.25, 1.26

Fabio M. Di Nitto (fabbione) fedora-extras-commits at redhat.com
Thu Jun 19 08:08:23 UTC 2008


Author: fabbione

Update of /cvs/pkgs/rpms/openais/devel
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv5100

Modified Files:
	openais.spec 
Added Files:
	revision-1552.patch 
Log Message:
Update to svn1552
Cosmetic cleanup of spec file


revision-1552.patch:

--- NEW FILE revision-1552.patch ---
Index: test/testmsg.c
===================================================================
--- test/testmsg.c	(revision 1550)
+++ test/testmsg.c	(revision 1552)
@@ -46,11 +46,19 @@
 #include "saAis.h"
 #include "saMsg.h"
 
+SaMsgQueueHandleT async_handle;
+
 void QueueOpenCallback (
 	SaInvocationT invocation,
 	SaMsgQueueHandleT queueHandle,
 	SaAisErrorT error)
 {
+	/* DEBUG */
+	printf ("[DEBUG]: testmsg (QueueOpenCallback)\n");
+	printf ("[DEBUG]: \t { queueHandle = %llx }\n",
+		(unsigned long long) queueHandle);
+
+	async_handle = queueHandle;
 }
 
 void QueueGroupTrackCallback (
@@ -59,17 +67,25 @@
 	SaUint32T numberOfMembers,
 	SaAisErrorT error)
 {
+	/* DEBUG */
+	printf ("[DEBUG]: testmsg (QueueGroupTrackCallback)\n");
 }
 
 void MessageDeliveredCallback (
 	SaInvocationT invocation,
 	SaAisErrorT error)
 {
+	/* DEBUG */
+	printf ("[DEBUG]: testmsg (MessageDeliveredCallback)\n");
+	printf ("[DEBUG]: \t { invocation = %llx }\n",
+		(unsigned long long) invocation);
 }
 
 void MessageReceivedCallback (
 	SaMsgQueueHandleT queueHandle)
 {
+	/* DEBUG */
+	printf ("[DEBUG]: testmsg (MessageReceivedCallback)\n");
 }
 
 SaMsgCallbacksT callbacks = {
@@ -83,28 +99,51 @@
 
 SaMsgQueueCreationAttributesT creation_attributes = {
 	SA_MSG_QUEUE_PERSISTENT,
-	{128000, 128000, 128000},
+	{ 128000, 128000, 128000 },
 	SA_TIME_END
 };
 
 void setSaNameT (SaNameT *name, char *str) {
 	name->length = strlen (str);
-	memcpy (name->value, str, name->length);
+	strcpy (name->value, str);
 }
 
+void setSaMsgMessageT (SaMsgMessageT *message, char *data) {
+	message->type = 1;
+	message->version = 2;
+	message->size = strlen (data) + 1;
+	message->senderName = NULL;
+	message->data = strdup (data);
+	message->priority = 0;
+}
+
 void sigintr_handler (int signum) {
 	exit (0);
 }
 
 int main (void) {
 	SaMsgHandleT handle;
+	SaMsgMessageT message;
 	SaMsgQueueHandleT queue_handle;
+	SaSelectionObjectT select_fd;
+	SaInvocationT invocation = 3;
+
 	fd_set read_fds;
-	SaSelectionObjectT select_fd;
 	int result;
+
+	SaNameT async_name;
 	SaNameT queue_name;
 	SaNameT queue_group_name;
+	SaTimeT time;
+	SaMsgSenderIdT id;
+	SaMsgMessageT msg_a;
+	SaMsgMessageT msg_b;
+	SaMsgMessageT msg_c;
 
+	memset (&msg_a, 0, sizeof (SaMsgMessageT));
+	memset (&msg_b, 0, sizeof (SaMsgMessageT));
+	memset (&msg_c, 0, sizeof (SaMsgMessageT));
+
 	signal (SIGINT, sigintr_handler);
 
 	result = saMsgInitialize (&handle, &callbacks, &version);
@@ -115,6 +154,7 @@
 
 	saMsgSelectionObjectGet (handle, &select_fd);
 
+	setSaNameT (&async_name, "async");
 	setSaNameT (&queue_name, "queue");
 
 	result = saMsgQueueOpen (handle,
@@ -124,7 +164,16 @@
 		SA_TIME_END,
 		&queue_handle);
 	printf ("saMsgQueueOpen result is %d (should be 1)\n", result);
+	printf ("saMsgQueueOpen { queue_handle = %llx }\n", queue_handle);
 
+	result = saMsgQueueOpenAsync (handle,
+				      invocation,
+				      &async_name,
+				      &creation_attributes,
+				      SA_MSG_QUEUE_CREATE);
+	printf ("saMsgQueueOpenAsync result is %d (should be 1)\n", result);
+	printf ("saMsgQueueOpen { async_handle = %llx }\n", async_handle);
+
 	setSaNameT (&queue_group_name, "queue_group");
 
 	result = saMsgQueueGroupCreate (
@@ -145,7 +194,9 @@
 		&queue_name);
 	printf ("saMsgQueueGroupInsert result is %d (should be 1)\n", result);
 
+	saMsgDispatch (handle, SA_DISPATCH_ALL);
 
+	/*
 	FD_ZERO (&read_fds);
 	do {
 		FD_SET (select_fd, &read_fds);
@@ -159,20 +210,59 @@
 		}
 		saMsgDispatch (handle, SA_DISPATCH_ALL);
 	} while (result);
+	*/
 
-	result = saMsgQueueGroupRemove (
-		handle,
-		&queue_group_name,
-		&queue_name);
+	setSaMsgMessageT (&message, "test_msg_01");
+	result = saMsgMessageSend (handle, &queue_name, &message, SA_TIME_ONE_SECOND);
+	printf ("saMsgMessageSend [1] result is %d (should be 1)\n", result);
+
+	setSaMsgMessageT (&message, "test_msg_02");
+	result = saMsgMessageSend (handle, &queue_name, &message, SA_TIME_ONE_SECOND);
+	printf ("saMsgMessageSend [2] result is %d (should be 1)\n", result);
+
+	setSaMsgMessageT (&message, "test_msg_03");
+	result = saMsgMessageSend (handle, &queue_name, &message, SA_TIME_ONE_SECOND);
+	printf ("saMsgMessageSend [3] result is %d (should be 1)\n", result);
+
+	setSaMsgMessageT (&message, "test_msg_04");
+	result = saMsgMessageSendAsync (handle, invocation, &queue_name, &message,
+		SA_MSG_MESSAGE_DELIVERED_ACK);
+	printf ("saMsgMessageSendAsync [4] result is %d (should be 1)\n", result);
+
+	setSaMsgMessageT (&message, "test_msg_05");
+	result = saMsgMessageSendAsync (handle, invocation, &queue_name, &message,
+		SA_MSG_MESSAGE_DELIVERED_ACK);
+	printf ("saMsgMessageSendAsync [5] result is %d (should be 1)\n", result);
+
+	saMsgDispatch (handle, SA_DISPATCH_ALL);
+
+	result = saMsgMessageGet (queue_handle, &msg_a, &time, &id, SA_TIME_ONE_MINUTE);
+	printf ("saMsgMessageGet [a] result is %d (should be 1)\n", result);
+
+	result = saMsgMessageGet (queue_handle, &msg_b, &time, &id, SA_TIME_ONE_MINUTE);
+	printf ("saMsgMessageGet [b] result is %d (should be 1)\n", result);
+
+	result = saMsgMessageGet (queue_handle, &msg_c, &time, &id, SA_TIME_ONE_MINUTE);
+	printf ("saMsgMessageGet [c] result is %d (should be 1)\n", result);
+
+	printf ("saMsgMessageGet { (a) data = %s }\n", (char *)(msg_a.data));
+	printf ("saMsgMessageGet { (b) data = %s }\n", (char *)(msg_b.data));
+	printf ("saMsgMessageGet { (c) data = %s }\n", (char *)(msg_c.data));
+
+	result = saMsgQueueGroupRemove (handle,	&queue_group_name, &queue_name);
 	printf ("saMsgQueueGroupRemove result is %d (should be 1)\n", result);
 
-	result = saMsgQueueGroupDelete (handle,
-		&queue_group_name);
+	result = saMsgQueueGroupDelete (handle,	&queue_group_name);
 	printf ("saMsgQueueGroupDelete result is %d (should be 1)\n", result);
 
+	printf ("saMsgQueueClose { queue_handle = %llx }\n", queue_handle);
 	result = saMsgQueueClose (queue_handle);
 	printf ("saMsgQueueClose result is %d (should be 1)\n", result);
 
[...2264 lines suppressed...]
+	req_lib_msg_messagesendreceive.header.size =
+		sizeof (struct req_lib_msg_messagesendreceive);
+	req_lib_msg_messagesendreceive.header.id =
+		MESSAGE_REQ_MSG_MESSAGEREPLY;
+
 	memcpy (&req_lib_msg_messagesendreceive.destination, destination,
 		sizeof (SaNameT));
+
 	req_lib_msg_messagesendreceive.timeout = timeout;
 
 	pthread_mutex_lock (&msgInstance->response_mutex);
@@ -1225,10 +1568,10 @@
 	if (error == SA_AIS_OK) {
 		*replySendTime = res_lib_msg_messagesendreceive.replySendTime;
 	}
+
 	return (error);
 }
 
-
 SaAisErrorT
 saMsgMessageReply (
 	SaMsgHandleT msgHandle,
@@ -1241,15 +1584,24 @@
 	struct req_lib_msg_messagereply req_lib_msg_messagereply;
 	struct res_lib_msg_messagereply res_lib_msg_messagereply;
 
-	error = saHandleInstanceGet (&msgHandleDatabase, msgHandle, (void *)&msgInstance);
+	/* DEBUG */
+	printf ("[DEBUG]: saMsgMessageReply { msgHandle = %llx }\n",
+		(unsigned long long) msgHandle);
+
+	error = saHandleInstanceGet (&msgHandleDatabase, msgHandle,
+		(void *)&msgInstance);
 	if (error != SA_AIS_OK) {
 		return (error);
 	}
 
-	req_lib_msg_messagereply.header.size = sizeof (struct req_lib_msg_messagereply);
-	req_lib_msg_messagereply.header.id = MESSAGE_REQ_MSG_MESSAGEREPLY;
-	memcpy (&req_lib_msg_messagereply.senderId, senderId, sizeof (SaMsgSenderIdT));
+	req_lib_msg_messagereply.header.size =
+		sizeof (struct req_lib_msg_messagereply);
+	req_lib_msg_messagereply.header.id =
+		MESSAGE_REQ_MSG_MESSAGEREPLY;
 
+	memcpy (&req_lib_msg_messagereply.senderId, senderId,
+		sizeof (SaMsgSenderIdT));
+
 	pthread_mutex_lock (&msgInstance->response_mutex);
 
 	error = saSendReceiveReply (msgInstance->response_fd,
@@ -1265,7 +1617,8 @@
 	return (error == SA_AIS_OK ? res_lib_msg_messagereply.header.error : error);
 }
 
-SaAisErrorT saMsgMessageReplyAsync (
+SaAisErrorT
+saMsgMessageReplyAsync (
 	SaMsgHandleT msgHandle,
 	SaInvocationT invocation,
 	const SaMsgMessageT *replyMessage,
@@ -1277,15 +1630,24 @@
 	struct req_lib_msg_messagereply req_lib_msg_messagereply;
 	struct res_lib_msg_messagereplyasync res_lib_msg_messagereplyasync;
 
-	error = saHandleInstanceGet (&msgHandleDatabase, msgHandle, (void *)&msgInstance);
+	/* DEBUG */
+	printf ("[DEBUG]: saMsgMessageReplyAsync { msgHandle = %llx }\n",
+		(unsigned long long) msgHandle);
+
+	error = saHandleInstanceGet (&msgHandleDatabase, msgHandle,
+		(void *)&msgInstance);
 	if (error != SA_AIS_OK) {
 		return (error);
 	}
 
-	req_lib_msg_messagereply.header.size = sizeof (struct req_lib_msg_messagereply);
-	req_lib_msg_messagereply.header.id = MESSAGE_REQ_MSG_MESSAGEREPLY;
-	memcpy (&req_lib_msg_messagereply.senderId, senderId, sizeof (SaMsgSenderIdT));
+	req_lib_msg_messagereply.header.size =
+		sizeof (struct req_lib_msg_messagereply);
+	req_lib_msg_messagereply.header.id =
+		MESSAGE_REQ_MSG_MESSAGEREPLY;
 
+	memcpy (&req_lib_msg_messagereply.senderId, senderId,
+		sizeof (SaMsgSenderIdT));
+
 	pthread_mutex_lock (&msgInstance->response_mutex);
 
 	error = saSendReceiveReply (msgInstance->response_fd,
@@ -1297,6 +1659,107 @@
 	pthread_mutex_unlock (&msgInstance->response_mutex);
 
 	saHandleInstancePut (&msgHandleDatabase, msgHandle);
-	
+
 	return (error == SA_AIS_OK ? res_lib_msg_messagereplyasync.header.error : error);
 }
+
+SaAisErrorT
+saMsgQueueCapacityThresholdSet (
+	SaMsgQueueHandleT queueHandle,
+	const SaMsgQueueThresholdsT *thresholds)
+{
+	SaAisErrorT error;
+	struct msgQueueInstance *msgQueueInstance;
+
+	/* DEBUG */
+	printf ("[DEBUG]: saMsgQueueCapacityThresholdsSet { queueHandle = %llx }\n",
+		(unsigned long long) queueHandle);
+
+	error = saHandleInstanceGet (&queueHandleDatabase, queueHandle,
+		(void *)&msgQueueInstance);
+	if (error != SA_AIS_OK) {
+		return (error);
+	}
+
+	/* TODO */
+
+	saHandleInstancePut (&queueHandleDatabase, queueHandle);
+
+	return (error);
+}
+
+SaAisErrorT
+saMsgQueueCapacityThresholdGet (
+	SaMsgQueueHandleT queueHandle,
+	SaMsgQueueThresholdsT *thresholds)
+{
+	SaAisErrorT error;
+	struct msgQueueInstance *msgQueueInstance;
+
+	/* DEBUG */
+	printf ("[DEBUG]: saMsgQueueCapacityThresholdGet { queueHandle = %llx }\n",
+		(unsigned long long) queueHandle);
+
+	error = saHandleInstanceGet (&queueHandleDatabase, queueHandle,
+		(void *)&msgQueueInstance);
+	if (error != SA_AIS_OK) {
+		return (error);
+	}
+
+	/* TODO */
+
+	saHandleInstancePut (&queueHandleDatabase, queueHandle);
+
+	return (error);
+}
+
+SaAisErrorT
+saMsgMetadataSizeGet (
+	SaMsgHandleT msgHandle,
+	SaUint32T *metadataSize)
+{
+	SaAisErrorT error;
+	struct msgInstance *msgInstance;
+
+	/* DEBUG */
+	printf ("[DEBUG]: saMsgMetadataSizeGet { msgHandle = %llx }\n",
+		(unsigned long long) msgHandle);
+
+	error = saHandleInstanceGet (&msgHandleDatabase, msgHandle,
+		(void *)&msgInstance);
+	if (error != SA_AIS_OK) {
+		return (error);
+	}
+
+	/* TODO */
+
+	saHandleInstancePut (&msgHandleDatabase, msgHandle);
+
+	return (error);
+}
+
+SaAisErrorT
+saMsgLimitGet (
+	SaMsgHandleT msgHandle,
+	SaMsgLimitIdT limitId,
+	SaLimitValueT *limitValue)
+{
+	SaAisErrorT error;
+	struct msgInstance *msgInstance;
+
+	/* DEBUG */
+	printf ("[DEBUG]: saMsgLimitGet { msgHandle = %llx }\n",
+		(unsigned long long) msgHandle);
+
+	error = saHandleInstanceGet (&msgHandleDatabase, msgHandle,
+		(void *)&msgInstance);
+	if (error != SA_AIS_OK) {
+		return (error);
+	}
+
+	/* TODO */
+
+	saHandleInstancePut (&msgHandleDatabase, msgHandle);
+
+	return (error);
+}


Index: openais.spec
===================================================================
RCS file: /cvs/pkgs/rpms/openais/devel/openais.spec,v
retrieving revision 1.25
retrieving revision 1.26
diff -u -r1.25 -r1.26
--- openais.spec	20 May 2008 16:54:17 -0000	1.25
+++ openais.spec	19 Jun 2008 08:07:19 -0000	1.26
@@ -1,7 +1,9 @@
+%define alphatag svn1552
+
 Name: openais
 Summary: The openais Standards-Based Cluster Framework executive and APIs
 Version: 0.83
-Release: 3%{?alphatag:.%{alphatag}}%{?dist}
+Release: 4%{?alphatag:.%{alphatag}}%{?dist}
 License: BSD
 Group: System Environment/Base
 URL: http://developer.osdl.org/dev/openais/
@@ -10,6 +12,7 @@
 Patch1: revision-1547.patch
 Patch2: revision-1549.patch
 Patch3: revision-1550.patch
+Patch4: revision-1552.patch
 
 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
 ExclusiveArch: i386 ppc x86_64 ppc64 ia64 s390 s390x alpha
@@ -38,6 +41,7 @@
 %patch1 -p0
 %patch2 -p0
 %patch3 -p0
+%patch4 -p0
 
 %build
 
@@ -175,6 +179,10 @@
 %{_mandir}/man3/confdb_*3*
 
 %changelog
+* Thu Jun 19 2008 Fabio M. Di Nitto <fdinitto at redhat.com> - 0.83-4.svn1552
+- Add upstream revision 1552 - Message service implemntation - more apis now supported.
+- Cosmetic: fix changelog entries.
+
 * Tue May 20 2008 Steven Dake <sdake at redhat.com> - 0.83-3
 - Add upstream revision 1547 - Fix loading of multiple objects.
 - Add upstream revision 1549 - Remove exit when logsys files can't be created.
@@ -186,7 +194,7 @@
 * Mon May 12 2008 Steven Dake <sdake at redhat.com> - 0.83-1
 - Release 0.83.
 
-Tue Apr 29 2008 Fabio M. Di Nitto <fdinitto at redhat.com> - 0.82-1.svn1528
+* Tue Apr 29 2008 Fabio M. Di Nitto <fdinitto at redhat.com> - 0.82-1.svn1528
 - Update to latest svn trunk in preparation for 0.83.
 - Fix a bunch of rpmlint warnings/errors.
 - Merge bits from the fedora package.
@@ -203,6 +211,7 @@
 - Add upstream revision 1509 - Remove double pthread_mutex_destroy from cpg service.
 - Add upstream revision 1508 - Remove double pthread_mutex_destroy from clm service.
 - Add upstream revision 1507 - Remove double pthread_mutex_destroy from checkpoint service.
+
 * Sat Mar 15 2008 Steven Dake <sdake at redhat.com> - 0.80.3-14
 - Resolves: rhbz#432531
 - Add upstream revision 1506 - Resolves incomplete checkpoing synchronization when totem queue is full.
@@ -214,7 +223,6 @@
 - Add upstream revision 1502 - Revert revision 1477 which exhibits problems with cman.
 - Add revision 1477 - This was reverted in a previous version but cherrypicked.  Now the patch has been applied and reverted in the rpm build process to match upstream.
 
-
 * Tue Feb 26 2008 Steven Dake <sdake at redhat.com> - 0.80.3-12
 - Resolves: rhbz#433839
 - Fix problem with cvs not allowing new checkin requires new revision.
@@ -224,6 +232,7 @@
 - Add upstream revision 1500 - IPC locks up if a POLLERR is returned in certain circumstances.
 - Resolves: rhbz#433839
 - Add upstream revision 1501 - A mcast is delivered before a join in some circumstances.
+
 * Fri Jan 18 2008 Steven Dake <sdake at redhat.com> - 0.80.3-10
 - Resolves: rhbz#249287
 - Remove upstream revision 1477 - Exhibits problem with revolver tester




More information about the fedora-extras-commits mailing list