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 Opensaf-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/opensaf-devel