osaf/services/saf/immsv/immnd/immnd_evt.c | 18 ++++++++++++++----
1 files changed, 14 insertions(+), 4 deletions(-)
Patch only for 4.3 and default(4.4).
NOT for 4.2 branch
The logic in immnd_fevs_local_checks() in immnd_evt.c is corrected
for CCB related messages to use immNotPbeWritable and not immNotWritable()
as the precheck. The former is unnecessarily strict since the intention
is to allow ongoing ccbs a period of grace to complete before sync starts,
but not allow new ccb-id's to be generated. The logic here also did not
recognize the special encoding of TRY_AGAIN needed towards the library for
CcbApply.
diff --git a/osaf/services/saf/immsv/immnd/immnd_evt.c
b/osaf/services/saf/immsv/immnd/immnd_evt.c
--- a/osaf/services/saf/immsv/immnd/immnd_evt.c
+++ b/osaf/services/saf/immsv/immnd/immnd_evt.c
@@ -2777,11 +2777,21 @@ static SaAisErrorT immnd_fevs_local_chec
case IMMND_EVT_A2ND_CCB_FINALIZE:
case IMMND_EVT_A2ND_OI_CCB_AUG_INIT:
case IMMND_EVT_A2ND_AUG_ADMO:
+ if(immModel_pbeNotWritable(cb)) {
+ error = SA_AIS_ERR_TRY_AGAIN;
+ }
+ break;
+
case IMMND_EVT_A2ND_CCB_APPLY:
- if(immModel_immNotWritable(cb)) {
- LOG_WA("Ccb request type (%u) arrived during Sync",
frwrd_evt.info.immnd.type);
- error = SA_AIS_ERR_TRY_AGAIN;
- /* Should in principle return ERR_LIBRARY here..*/
+ if(immModel_pbeNotWritable(cb)) {
+ /* NO_RESOURCES is here imm internal proxy for
TRY_AGAIN.
+ The library code for saImmOmCcbApply will translate
NO_RESOURCES
+ to TRY_AGAIN towards the user. That library code
(for ccbApply)
+ treats TRY_AGAIN from IMMND as an indication of
handle resurrect.
+ So we need to take this detour to really communicate
TRY_AGAIN
+ towards that particular library code.
+ */
+ error = SA_AIS_ERR_NO_RESOURCES;
}
break;
------------------------------------------------------------------------------
Get 100% visibility into Java/.NET code with AppDynamics Lite!
It's a free troubleshooting tool designed for production.
Get down to code-level detail for bottlenecks, with <2% overhead.
Download for free and get started troubleshooting in minutes.
http://pubads.g.doubleclick.net/gampad/clk?id=48897031&iu=/4140/ostg.clktrk
_______________________________________________
Opensaf-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensaf-devel