osaf/services/saf/immsv/immnd/ImmModel.cc | 13 ++++++++-----
1 files changed, 8 insertions(+), 5 deletions(-)
Presently if the active ccb object contains an object-applier TRY_AGAIN is
returned.The solution is when implementerset is called activeccbs are checked,
return TRY_AGAIN only when the object apllier has same implementer info as the
newly connected implementer.
diff --git a/osaf/services/saf/immsv/immnd/ImmModel.cc
b/osaf/services/saf/immsv/immnd/ImmModel.cc
--- a/osaf/services/saf/immsv/immnd/ImmModel.cc
+++ b/osaf/services/saf/immsv/immnd/ImmModel.cc
@@ -12302,11 +12302,14 @@ ImmModel::implementerSet(const IMMSV_OCT
ismIter = sObjAppliersMap.find(omit->first);
if(ismIter != sObjAppliersMap.end()) {
- TRACE("TRY_AGAIN: ccb %u is active on object '%s' "
- "bound to object applier '%s'. Can not
re-attach applier",
- ccb->mId, omit->first.c_str(),
implName.c_str());
- err = SA_AIS_ERR_TRY_AGAIN;
- goto done;
+ ImplementerSet *implSet = ismIter->second;
+ if(implSet->find(info) != implSet->end()) {
+ TRACE("TRY_AGAIN: ccb %u is active on object
'%s' "
+ "bound to object applier '%s'. Can not
re-attach applier",
+ ccb->mId, omit->first.c_str(),
implName.c_str());
+ err = SA_AIS_ERR_TRY_AGAIN;
+ goto done;
+ }
}
}
}
------------------------------------------------------------------------------
Want excitement?
Manually upgrade your production database.
When you want reliability, choose Perforce
Perforce version control. Predictably reliable.
http://pubads.g.doubleclick.net/gampad/clk?id=157508191&iu=/4140/ostg.clktrk
_______________________________________________
Opensaf-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensaf-devel