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

Reply via email to