saMsgMessageSend and Async calls return TRY_AGAIN forever after controller
failover.
If more than 1 ASAPi_MSG_TRACK_NTFY for deletion is processed by the cache, the
first time the cache entry will be deleted. When the second one comes in, before
a new queue registration message has been received, the cache entry will be
created with bad information, even though this is a delete operation.
Don't create cache entries for delete operations.
---
src/msg/common/mqsv_asapi.c | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/src/msg/common/mqsv_asapi.c b/src/msg/common/mqsv_asapi.c
index f39d564..8b6fb65 100644
--- a/src/msg/common/mqsv_asapi.c
+++ b/src/msg/common/mqsv_asapi.c
@@ -649,6 +649,11 @@ static uint32_t asapi_cache_update(ASAPi_OBJECT_INFO
*pInfo,
m_NCS_UNLOCK(&pCache->clock,
NCS_LOCK_WRITE); /* Unlock the cache */
} else { /* Node deosn't exist */
+ if (ASAPi_QUEUE_DEL == opr || ASAPi_GROUP_DEL) {
+ /* no need to add node as this is a deletion */
+ return rc;
+ }
+
/* Allocate the Cache Informaton node */
pCache = m_MMGR_ALLOC_ASAPi_CACHE_INFO(asapi.my_svc_id);
if (!pCache) {
--
2.9.5
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Opensaf-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensaf-devel