Hi Praveen

From talking with Zoran/Hung, the IMM behaviour is expected and correct.
I’m not sure about the last question.

As you know, in AMFND, the trigger to read from IMM is from an AMFD message.
The CCB could be committed on the node where active AMFD resides, so I guess 
the admin op would be accepted regardless of the answer to your question.

Gary

On 21/6/17, 4:43 pm, "praveen malviya" <praveen.malv...@oracle.com> wrote:

    Hi Gary,
    
    Is there any ticket in IMM for any related issue?
    Both creation of SU and admin operation on it will go through IMM only.
    I do not know how IMM handles it and how IMM spec talks about it.
    Does IMM spec allow admin operation on a entity for which all synced 
    IMMNDS (leaving non synced IMMNDS on the nodes joining the cluster) are 
    not updated?
    
    Thanks,
    Praveen
    
    On 15-Jun-17 1:11 PM, Gary Lee wrote:
    > On a congested network, sometimes a newly created IMM object can take some
    > time to be available on other nodes.
    > 
    > In our test, a new SU is created on SC-1 and unlocked. But sometimes
    > it fails on a remote node due to:
    > 
    > 2017-05-19 13:55:19 SC-2 osafamfnd[258]: ER 
amf_saImmOmSearchInitialize_o2 failed: 12
    > 
    > To get around this, we will retry on SA_AIS_ERR_NOT_EXIST a few times.
    > ---
    >   src/amf/amfnd/util.cc | 15 +++++++++++++++
    >   1 file changed, 15 insertions(+)
    > 
    > diff --git a/src/amf/amfnd/util.cc b/src/amf/amfnd/util.cc
    > index ed0905ce2..bca642eac 100644
    > --- a/src/amf/amfnd/util.cc
    > +++ b/src/amf/amfnd/util.cc
    > @@ -38,6 +38,9 @@
    >   #include <unistd.h>
    >   #include "osaf/configmake.h"
    >   #include "amf/amfnd/avnd.h"
    > +#include "base/osaf_time.h"
    > +
    > +extern struct ImmutilWrapperProfile immutilWrapperProfile;
    >   
    >   const char *presence_state[] = {
    >       "OUT_OF_RANGE",         "UNINSTANTIATED",     "INSTANTIATING",
    > @@ -335,6 +338,18 @@ SaAisErrorT amf_saImmOmSearchInitialize_o2(
    >                                                 scope, searchOptions, 
searchParam,
    >                                                 attributeNames, 
&searchHandle);
    >       }
    > +  } else if (rc == SA_AIS_ERR_NOT_EXIST) {
    > +    // it is possible for 'rootName' to be not yet available
    > +    // at the local immnd. Retry a few times to allow CCB to be 
propagated.
    > +    unsigned int nTries = 1;
    > +    while (rc == SA_AIS_ERR_NOT_EXIST &&
    > +      nTries < immutilWrapperProfile.nTries) {
    > +      osaf_nanosleep(&kHundredMilliseconds);
    > +      rc = immutil_saImmOmSearchInitialize_o2(immHandle, 
rootName.c_str(),
    > +        scope, searchOptions, searchParam,
    > +        attributeNames, &searchHandle);
    > +      nTries++;
    > +    }
    >     }
    >     return rc;
    >   }
    > 
    



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