- **status**: accepted --> review
---
** [tickets:#1341] IMM: Imma cl_node->replyPending does not work for async
admin-op**
**Status:** review
**Milestone:** 4.5.2
**Created:** Fri Apr 24, 2015 01:06 PM UTC by Anders Bjornerstedt
**Last Updated:** Fri Apr 24, 2015 02:12 PM UTC
**Owner:** Anders Bjornerstedt
This bug was introduced in 4.2 but will only be fixed in 4.5 and later.
The client_node struct defined in imma_cb.h contains a member 'replyPending'.
The meaning of this member is that if it is not zero/false then there has
been made a request (syncronous or asyncronous) from the imma client (OM or OI)
sent to the IMM server for which no reply has yet been received from the server.
The member is used primarily at local IMMND restart to detect if a handle
must be invalidated, i.e. resurrect is impossible when the IMMND has synced.
IF a request has been sent and the local IMND goes down before a reply has
been received, then the reply has been lost. Even though the IMMND process is
restartable and will sync back all esential global state. IT does not resync
local state such as request continuations telling it which clients are still
waiting for a reply. Such continuations are not replicated in the cluster.
Because a request that should have received a reply has not received a reply,
the interface contract has been violated and the client must be informed of
this. The only way to do this over the IMMA API is to provide a return code
of ERR_BAD_HANDLE. In the case of an asyncronous reply, such a reply would
have been a callback received by means of a poll on a selection object related
to the handle. In that case the poll will be triggered such that saImmOmDispatch
exits with ERR_BAD_HANDLE.
The asyncronous variant of this does not work if more than one asyncronous
request
is outstanding on the same handle. This is possible without violating the rule
that says an imm-handles shall only be used by one thread at a time. A single
thread can send several asyncronopus admin-operation requests in succession,
before entering poll to receive and process replies. That is in a sense the
whole point with an asyncronous API.
---
Sent from sourceforge.net because [email protected] is
subscribed to https://sourceforge.net/p/opensaf/tickets/
To unsubscribe from further messages, a project admin can change settings at
https://sourceforge.net/p/opensaf/admin/tickets/options. Or, if this is a
mailing list, you can unsubscribe from the mailing list.
------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________
Opensaf-tickets mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensaf-tickets