Hi Praveen,

Yes this is problem that agent coming up during failover, the server 
state then set as NTFA_NTFSV_NEW_ACTIVE. At this state, server state 
will never set to NTFA_NTFSV_UP because the implementation treats 
NTFA_NTFSV_NEW_ACTIVE as NTFA_NTFSV_UP, since at both of those states 
NTF service should be operational. The other states will get TRY_AGAIN 
except NTFA_NTFSV_UP.

Thanks,
Minh

On 29/04/16 15:03, praveen malviya wrote:
> Hi Minh,
>
> Ntfa marks NTFA_NTFSV_NONE only when agent is created and in 
> ntfa_shutdown(). Is this problem being faced for a new agent coming up 
> during failover? In other cases agent is initialized so application 
> will get TRY_AGAIN for any API call or am I missing something here?
>
> Thanks,
> Praveen
>
> On 27-Apr-16 10:22 PM, Minh Hon Chau wrote:
>>  osaf/libs/agents/saf/ntfa/ntfa_util.c | 6 +++++-
>>  1 files changed, 5 insertions(+), 1 deletions(-)
>>
>>
>> If NTF client initializes and sends notification while failover 
>> happening, Agent
>> could possibly update server state as NTFA_NTFSV_NEW_ACTIVE. This 
>> server state
>> NTFA_NTFSV_NEW_ACTIVE currently treats as NTFA_NTFSV_UP, but in this 
>> scenario
>> server state is udpated as NTFA_NTFSV_NEW_ACTIVE which is not 
>> supported in
>> ntfa_update_ntfsv_state() and checkNtfServerState().
>>
>> Patch make sures server state will not dropped into 
>> NTFA_NTFSV_NEW_ACTIVE
>>
>> diff --git a/osaf/libs/agents/saf/ntfa/ntfa_util.c 
>> b/osaf/libs/agents/saf/ntfa/ntfa_util.c
>> --- a/osaf/libs/agents/saf/ntfa/ntfa_util.c
>> +++ b/osaf/libs/agents/saf/ntfa/ntfa_util.c
>> @@ -1504,7 +1504,11 @@ void ntfa_update_ntfsv_state(ntfa_ntfsv_
>>
>>      switch (ntfa_cb.ntfa_ntfsv_state){
>>      case NTFA_NTFSV_NONE:
>> -        ntfa_cb.ntfa_ntfsv_state = changedState;
>> +        if (changedState == NTFA_NTFSV_NEW_ACTIVE) {
>> +            ntfa_cb.ntfa_ntfsv_state = NTFA_NTFSV_UP;
>> +        } else {
>> +            ntfa_cb.ntfa_ntfsv_state = changedState;
>> +        }
>>          break;
>>      case NTFA_NTFSV_DOWN:
>>          if (changedState == NTFA_NTFSV_NEW_ACTIVE ||
>>
>


------------------------------------------------------------------------------
Find and fix application performance issues faster with Applications Manager
Applications Manager provides deep performance insights into multiple tiers of
your business applications. It resolves application problems quickly and
reduces your MTTR. Get your free trial!
https://ad.doubleclick.net/ddm/clk/302982198;130105516;z
_______________________________________________
Opensaf-devel mailing list
Opensaf-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/opensaf-devel

Reply via email to