On 02-Apr-16 4:51 PM, Anders Widell wrote:
> Hi!
>
> This change makes NTF depend on CLM. CLM already depends on NTF, so it
> means we now have a circular dependency.
As of now circular deps has been resolved by updating NTF version to 
A.01.02. All middle-ware services (AMF, PLM CLM and SMF) intialize with 
NTF with A.01.01, so they will not get ERR_UNAVAIlABLE.
However as mentioned in README also, if there is change in init sequence 
of OpenSAF in 5.1, then some changes may come.

  I think you need to introduce a
> separate thread in NTF that handles all CLM API calls. Also, you need to
> handle the SA_AIS_ERR_BAD_HANDLE return code from CLM, at the very least
> when you get it from saClmDispatch(), and re-initialize the CLM handle
> if you get this error code.
In which situation BAD_HANDLE will be returned. The two APIS that is 
being used works even on non-member nodes with only restriction that 
only local node status will be delivered through track callback.


Thanks,
Praveen
>
> regards,
> Anders Widell
>
> On 03/29/2016 11:02 AM, praveen.malv...@oracle.com wrote:
>> Summary: ntf: Integrate NTF service with CLM {#1639] V2
>> Review request for Trac Ticket(s): #1639
>> Peer Reviewer(s): Lennart, Minh, Mathi
>> Pull request to: <<LIST THE PERSON WITH PUSH ACCESS HERE>>
>> Affected branch(es): Default
>> Development branch: <<IF ANY GIVE THE REPO URL>>
>>
>> --------------------------------
>> Impacted area       Impact y/n
>> --------------------------------
>>   Docs                    n
>>   Build system            n
>>   RPM/packaging           n
>>   Configuration files     n
>>   Startup scripts         n
>>   SAF services            y
>>   OpenSAF services        n
>>   Core libraries          n
>>   Samples                 n
>>   Tests                   n
>>   Other                   n
>>
>>
>> Comments (indicate scope for each "y" above):
>> ---------------------------------------------
>> This V2 is rebased over #79 and #1180.
>>
>> Minor functional change in patch 4 (ntfa patch):
>> During headless state if OpenSAF is stopped on payload,then A.01.02
>> clients
>> will not be recovered on that payload node. These clients will get
>> SA_AIS_ERR_UNAVAILABLE. This implements the comment that I had given
>> on #1180.
>>
>>
>> changeset 1eca6814a649886e5ebc6b25b2ef62128f60474d
>> Author:    praveen.malv...@oracle.com
>> Date:    Tue, 29 Mar 2016 14:14:35 +0530
>>
>>     ntf: update README for NTFSv integration with CLM [#1639]
>>
>>     No change from V1.
>>
>>     Added information for:
>>     -details of implementation.
>>     -changes at NTFS.
>>     -changes at NTFA.
>>
>> changeset 1e20a02074e8802601c5aa7977b8d2c0348e7afd
>> Author:    praveen.malv...@oracle.com
>> Date:    Tue, 29 Mar 2016 14:15:40 +0530
>>
>>     ntf: add new structure for message from NTFS to NTFA [#1639]
>>
>>     No change from v1.
>>
>>     New message structure to be used by NTFS to send CLM membership
>> status of
>>     node to clients.
>>
>> changeset 9328a2a61cfd6da7450ff49b35fc1da8ef9bda42
>> Author:    praveen.malv...@oracle.com
>> Date:    Tue, 29 Mar 2016 14:16:34 +0530
>>
>>     ntfs: add support for tracking CLM membership related events and
>> act on them
>>     [#1639]
>>
>>     No functional change, only rebased over #79.
>>
>>     Changes include:
>>     -subscribe with CLM service to track CLM membership status of nodes.
>>     -send updates to ntf agent whenever there is any change in
>> membership status
>>     of its node.
>>     -maintain list of member nodes to be used for new clients.
>>     -maintain SAF version of the clients and checkpoint it to standby
>> also.
>>
>> changeset 465383691e1bb7de57965c268ae002e8ffb12c50
>> Author:    praveen.malv...@oracle.com
>> Date:    Tue, 29 Mar 2016 14:17:24 +0530
>>
>>     ntfa: support for returning SA_AIS_ERR_UNAVAILABLE on non-member
>> node[#1639]
>>     V2
>>
>>     V2 changes:
>>     -Rebased over #1180 (Cloud resilience patch).
>>     -During headless state, OpenSAF may get stopped on payload with
>> NTF app
>>     running. Since OpenSAF is not running on the payload, any A.01.02
>> NTF client
>>     should not be served on this node and this client should not be
>> recovered.
>>     After first controller comes up, A.01.02 client will not be
>> recovered and
>>     application will get SA_AIS_ERR_UNAVAILABLE upon which an app can
>> call
>>     saNtfFinalize() for freeing the resources.
>>
>>      Changes include:
>>     -maintain SAF version.
>>     -minor version is updated from 01 to 02.
>>     -ntfa will get NTFSV_CLM_NODE_STATUS_CALLBACK from NTFS for
>> membership status
>>     of node.
>>     -check is included in all apis, excluding saNTfFinalize(), to return
>>     SA_AIS_ERR_UNAVAILABLE if node loses CLM membership.
>>
>> changeset 8f8657451f23c2ea6e8da565933d0d1c84999226
>> Author:    praveen.malv...@oracle.com
>> Date:    Tue, 29 Mar 2016 14:18:21 +0530
>>
>>     ntf/safntf: update SAF version of ntfsend, ntfread and
>> ntfsubscribe [#1639]
>>
>>     No change from V1..
>>
>>     SAF version for ntfsend, ntfread and ntfsubscribe is updated from
>> A.01.01 to
>>     A.01.02. On a non member node all these commands will exit.
>>
>> changeset a2af4e8a5fdeb22cda818fe229a92bc2f0e1d40c
>> Author:    praveen.malv...@oracle.com
>> Date:    Tue, 29 Mar 2016 14:19:20 +0530
>>
>>     ntf/tests: add test cases for NTF functionality [#1639]
>>
>>     No change from V1.
>>
>>     New file tet_ntf_clm.c contains new test cases for testing this
>>     funtionality. On a non-member node, ntf APIs must return
>>     SA_AIS_ERR_UNAVAILABLE.
>>
>>
>> Complete diffstat:
>> ------------------
>>   osaf/libs/agents/saf/ntfa/ntfa.h              |    2 +
>>   osaf/libs/agents/saf/ntfa/ntfa_api.c          |  226
>> +++++++++++++++++++++++++-
>>   osaf/libs/agents/saf/ntfa/ntfa_mds.c          |   52 ++++++
>>   osaf/libs/agents/saf/ntfa/ntfa_util.c         |    3 +
>>   osaf/libs/common/ntfsv/include/ntfsv_defs.h   |    6 +-
>>   osaf/libs/common/ntfsv/include/ntfsv_msg.h    |    7 +
>>   osaf/services/saf/ntfsv/README                |   74 ++++++++
>>   osaf/services/saf/ntfsv/ntfs/Makefile.am      |    2 +
>>   osaf/services/saf/ntfsv/ntfs/NtfAdmin.cc      |  203
>> +++++++++++++++++++++++-
>>   osaf/services/saf/ntfsv/ntfs/NtfAdmin.hh      |   10 +-
>>   osaf/services/saf/ntfsv/ntfs/NtfClient.cc     |   42 +++++
>>   osaf/services/saf/ntfsv/ntfs/NtfClient.hh     |    4 +
>>   osaf/services/saf/ntfsv/ntfs/ntfs.h           |    1 +
>>   osaf/services/saf/ntfsv/ntfs/ntfs_cb.h        |    5 +
>>   osaf/services/saf/ntfsv/ntfs/ntfs_clm.c       |  124 ++++++++++++++
>>   osaf/services/saf/ntfsv/ntfs/ntfs_com.c       |   50 +++++-
>>   osaf/services/saf/ntfsv/ntfs/ntfs_com.h       |   23 ++-
>>   osaf/services/saf/ntfsv/ntfs/ntfs_evt.c       |   71 ++++++++-
>>   osaf/services/saf/ntfsv/ntfs/ntfs_main.c      |   28 +++
>>   osaf/services/saf/ntfsv/ntfs/ntfs_mbcsv.c     |   48 ++++-
>>   osaf/services/saf/ntfsv/ntfs/ntfs_mbcsv.h     |    4 +-
>>   osaf/services/saf/ntfsv/ntfs/ntfs_mds.c       |   55 ++++++
>>   osaf/tools/safntf/ntfread/ntfread.c           |    2 +-
>>   osaf/tools/safntf/ntfsend/ntfsend.c           |    2 +-
>>   osaf/tools/safntf/ntfsubscribe/ntfsubscribe.c |    2 +-
>>   tests/ntfsv/Makefile.am                       |    3 +-
>>   tests/ntfsv/tet_ntf_clm.c                     |  501
>> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
>>   tests/ntfsv/tet_ntf_common.h                  |    7 +
>>   tests/ntfsv/tet_ntf_main.c                    |    4 +-
>>   29 files changed, 1520 insertions(+), 41 deletions(-)
>>
>>
>> Testing Commands:
>> -----------------
>> Executed newly added test cases.
>> Also tested non-recovery of A.01.02 clients
>> by stopping OpenSAF on payload node during headless state.
>>
>> Testing, Expected Results:
>> --------------------------
>> All above test cases passed.
>>
>> Conditions of Submission:
>> -------------------------
>> Ack from any reviewer.
>>
>> Arch      Built     Started    Linux distro
>> -------------------------------------------
>> mips        n          n
>> mips64      n          n
>> x86         n          n
>> x86_64      y          y
>> powerpc     n          n
>> powerpc64   n          n
>>
>>
>> Reviewer Checklist:
>> -------------------
>> [Submitters: make sure that your review doesn't trigger any checkmarks!]
>>
>>
>> Your checkin has not passed review because (see checked entries):
>>
>> ___ Your RR template is generally incomplete; it has too many blank
>> entries
>>      that need proper data filled in.
>>
>> ___ You have failed to nominate the proper persons for review and push.
>>
>> ___ Your patches do not have proper short+long header
>>
>> ___ You have grammar/spelling in your header that is unacceptable.
>>
>> ___ You have exceeded a sensible line length in your
>> headers/comments/text.
>>
>> ___ You have failed to put in a proper Trac Ticket # into your commits.
>>
>> ___ You have incorrectly put/left internal data in your comments/files
>>      (i.e. internal bug tracking tool IDs, product names etc)
>>
>> ___ You have not given any evidence of testing beyond basic build tests.
>>      Demonstrate some level of runtime or other sanity testing.
>>
>> ___ You have ^M present in some of your files. These have to be removed.
>>
>> ___ You have needlessly changed whitespace or added whitespace crimes
>>      like trailing spaces, or spaces before tabs.
>>
>> ___ You have mixed real technical changes with whitespace and other
>>      cosmetic code cleanup changes. These have to be separate commits.
>>
>> ___ You need to refactor your submission into logical chunks; there is
>>      too much content into a single commit.
>>
>> ___ You have extraneous garbage in your review (merge commits etc)
>>
>> ___ You have giant attachments which should never have been sent;
>>      Instead you should place your content in a public tree to be pulled.
>>
>> ___ You have too many commits attached to an e-mail; resend as threaded
>>      commits, or place in a public tree for a pull.
>>
>> ___ You have resent this content multiple times without a clear
>> indication
>>      of what has changed between each re-send.
>>
>> ___ You have failed to adequately and individually address all of the
>>      comments and change requests that were proposed in the initial
>> review.
>>
>> ___ You have a misconfigured ~/.hgrc file (i.e. username, email etc)
>>
>> ___ Your computer have a badly configured date and time; confusing the
>>      the threaded patch review.
>>
>> ___ Your changes affect IPC mechanism, and you don't present any results
>>      for in-service upgradability test.
>>
>> ___ Your changes affect user manual and documentation, your patch series
>>      do not contain the patch that updates the Doxygen manual.
>>
>>
>> ------------------------------------------------------------------------------
>>
>> Transform Data into Opportunity.
>> Accelerate data analysis in your applications with
>> Intel Data Analytics Acceleration Library.
>> Click to learn more.
>> http://pubads.g.doubleclick.net/gampad/clk?id=278785471&iu=/4140
>> _______________________________________________
>> Opensaf-devel mailing list
>> Opensaf-devel@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/opensaf-devel
>>
>

------------------------------------------------------------------------------
_______________________________________________
Opensaf-devel mailing list
Opensaf-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/opensaf-devel

Reply via email to