According to the spec, the valid return codes for CCB callbacks are
SA_AIS_OK
SA_AIS_ERR_NO_MEMORY
SA_AIS_ERR_NO_RESOURCES
SA_AIS_ERR_BAD_OPERATION
All other return codes will be internally converted to ERR_FAILED_OPERATION.
So ERR_TRY_AGAIN will be treated as ERR_FAILED_OPERATION.
If OI wants the client to retry the CCB, OI can return
ERR_NO_MEMORY/ERR_NO_RESOURCES.
That way the CCB will be aborted with resource-abort error string.
The client will retry the CCB when it checks the error string.
---
** [tickets:#2184] AMF: Return TRY_AGAIN if SG Fsm State is not STABLE**
**Status:** assigned
**Milestone:** 5.0.2
**Created:** Sat Nov 12, 2016 11:59 AM UTC by Minh Hon Chau
**Last Updated:** Mon Nov 14, 2016 08:30 AM UTC
**Owner:** Minh Hon Chau
We have AMFD code returning SA_AIS_ERR_TRY_AGAIN to IMM if SG fsm state is not
STABLE, while other places are returning SA_AIS_ERR_BAD_OPERATION.
According to AMF spec, item 9.4:
"SA_AIS_ERR_TRY_AGAIN - The service cannot be provided at this time. The client
may retry later. This error generally should be returned when the requested
action is
valid but not currently possible, probably because another operation is acting
upon
the logical entity on which the administrative operation is invoked. Such an
operation
can be another administrative operation or an error recovery initiated by the
Availabil-
ity Management Framework."
9.4.2 SA_AMF_ADMIN_UNLOCK
SA_AIS_ERR_BAD_OPERATION - The operation was not successful because the tar-
get entity is in locked-instantiation administrative state.
9.4.3 SA_AMF_ADMIN_LOCK
SA_AIS_ERR_BAD_OPERATION - The operation was not successful because the tar-
get entity is in locked-instantiation administrative state.
... and so on
SA_AIS_ERR_BAD_OPERATION should be returned in case that operations are
impossibly executable under a specific circumtance.
One application has seen "immcfg -a saAmfSIPrefActiveAssignments" sometimes
returning SA_AIS_ERR_FAILED_OPERATION while the SG is performing SUSI
assignment, sometimes immcfg succeeds.
Nov 10 03:20:03 SC-2-1 ABC: NOTICE: immcfg -a saAmfSIPrefActiveAssignments=2
safSi=All-NWayActive,safApp=ABC returned error - saImmOmCcbApply FAILED:
SA_AIS_ERR_FAILED_OPERATION (21)#012OI reports: IMM: Validation abort:
Completed validation fails (ERR_BAD_OPERATION)#012OI reports:
SG'safSg=NWayActive,safApp=ABC' is not stable (1)
…
Nov 10 03:20:03 SC-2-1 osafamfnd[12061]: NO
'safSu=SC-1,safSg=NWayActive,safApp=ABC' Presence State INSTANTIATING =>
INSTANTIATED
Nov 10 03:20:03 SC-2-1 osafamfnd[12061]: NO Assigned
'safSi=All-NWayActive,safApp=ABC' ACTIVE to
'safSu=SC-1,safSg=NWayActive,safApp=ABC'
This ticket will change SA_AIS_ERR_BAD_OPERATION to SA_AIS_ERR_TRY_AGAIN in all
other places where SG is not STABLE, so that application can try again until SG
becomes STABLE (as it should be).
---
Sent from sourceforge.net because opensaf-tickets@lists.sourceforge.net 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.
------------------------------------------------------------------------------
Developer Access Program for Intel Xeon Phi Processors
Access to Intel Xeon Phi processor-based developer platforms.
With one year of Intel Parallel Studio XE.
Training and support from Colfax.
Order your platform today. http://sdm.link/xeonphi
_______________________________________________
Opensaf-tickets mailing list
Opensaf-tickets@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/opensaf-tickets