If EE unlock fails, it is never retried when management is regained. The EE just sits in LOCKED admin state.
If EE unlock fails, the code continues as if it did succeed, setting readiness state to in-service, etc. If EE unlock fails, just return ERR_DEPLOYMENT immediately, and don't set anything else. --- src/plm/plmd/plms_adm_fsm.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/plm/plmd/plms_adm_fsm.c b/src/plm/plmd/plms_adm_fsm.c index 370c30f36..fdcd6ea05 100644 --- a/src/plm/plmd/plms_adm_fsm.c +++ b/src/plm/plmd/plms_adm_fsm.c @@ -4437,10 +4437,9 @@ static SaUint32T plms_ent_unlock(PLMS_ENTITY *ent, PLMS_TRACK_INFO *trk_info, /* Unlock the EE.*/ unlck_err = plms_ee_unlock(ent, true, 1 /*mngt_cbk*/); if (NCSCC_RC_SUCCESS != unlck_err) { - /* TODO: Should I return from here, sending failure to - IMM and calling management lost callback.*/ LOG_ER("EE unlock operation failed. Ent: %s", ent->dn_name_str); + goto send_rsp; } } @@ -4548,6 +4547,8 @@ static SaUint32T plms_ent_unlock(PLMS_ENTITY *ent, PLMS_TRACK_INFO *trk_info, plms_ent_exp_rdness_status_clear(ent); plms_aff_ent_exp_rdness_status_clear(trk_info->aff_ent_list); + +send_rsp: /* Respnd to IMM.*/ if (NCSCC_RC_SUCCESS == unlck_err) { ret_err = saImmOiAdminOperationResult(cb->oi_hdl, adm_op.inv_id, -- 2.13.6 ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot _______________________________________________ Opensaf-devel mailing list Opensaf-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/opensaf-devel