But I think same problem will still come as AMFND is trying to send this 
newly added record only in the same function avnd_di_msg_send():
   /* add the record to the AvD msg list */
         if ((0 != (rec = avnd_diq_rec_add(cb, msg)))) {
                 /* send the message */
                 avnd_diq_rec_send(cb, rec);
         } else
                 rc = NCSCC_RC_FAILURE;

Thanks,
Praveen


On 14-Oct-16 10:59 AM, Gary Lee wrote:
> Hi Praveen
>
> Yes, I will change it to make it clearer.
>
> Thanks
>
>> On 14 Oct. 2016, at 4:27 pm, praveen malviya <praveen.malv...@oracle.com> 
>> wrote:
>>
>> Hi Gary,
>>
>> one query inline with [Praveen]
>>
>> Thanks,
>> Praveen
>>
>> On 13-Oct-16 4:20 AM, Gary Lee wrote:
>>> osaf/services/saf/amf/amfnd/di.cc |  8 ++------
>>> 1 files changed, 2 insertions(+), 6 deletions(-)
>>>
>>>
>>> After SC absence, active amfd will reject messages from 'veteran' amfnds 
>>> until
>>> its local amfnd has started. During this period, if a PG track action msg
>>> is sent and rejected by amfd, it will cause the sending amfnd to lose sync
>> [Praveen] I think here "lose sync" means it will cause message id mismatch 
>> later.
>>
>>> with amfd. So we should also queue this message to be re-sent.
>>>
>>> diff --git a/osaf/services/saf/amf/amfnd/di.cc 
>>> b/osaf/services/saf/amf/amfnd/di.cc
>>> --- a/osaf/services/saf/amf/amfnd/di.cc
>>> +++ b/osaf/services/saf/amf/amfnd/di.cc
>>> @@ -1033,12 +1033,8 @@ uint32_t avnd_di_msg_send(AVND_CB *cb, A
>>>     if (!msg)
>>>             goto done;
>>>
>>> -   /* Verify Ack nack and PG track action msgs are not buffered */
>>> -   if (m_AVSV_N2D_MSG_IS_PG_TRACK_ACT(msg->info.avd)) {
>>> -           /*send the response to AvD */
>>> -           rc = avnd_mds_send(cb, msg, &cb->avd_dest, 0);
>>> -           goto done;
>>> -   } else if (m_AVSV_N2D_MSG_IS_VER_ACK_NACK(msg->info.avd)) {
>>> +   /* Verify Ack nack msgs are not buffered */
>>> +   if (m_AVSV_N2D_MSG_IS_VER_ACK_NACK(msg->info.avd)) {
>>>             /*send the response to active AvD (In case MDS has not updated 
>>> its
>>>                tables by this time) */
>>>             TRACE_1("%s, Active AVD Adest: %" PRIu64, __FUNCTION__, 
>>> cb->active_avd_adest);
>>>
>

------------------------------------------------------------------------------
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

Reply via email to