Summary: IMM PBE: use syncronous admin-op to abort CCBs & delay attach by 1 sec 
[#1261]
Review request for Trac Ticket(s): 1261
Peer Reviewer(s): Neel
Pull request to: 
Affected branch(es): default
Development branch: default

--------------------------------
Impacted area       Impact y/n
--------------------------------
 Docs                    n
 Build system            n
 RPM/packaging           n
 Configuration files     n
 Startup scripts         n
 SAF services            n
 OpenSAF services        n
 Core libraries          n
 Samples                 n
 Tests                   n
 Other                   n


Comments (indicate scope for each "y" above):
---------------------------------------------

changeset d844faaf6d52f9096283e16cad438785388a617f
Author: Anders Bjornerstedt <[email protected]>
Date:   Wed, 08 Jul 2015 14:46:29 +0200

        IMM PBE: use syncronous admin-op to abort CCBs & delay attach by 1 sec
        [#1261]

        Using a syncronous admin-op results in the PBE getting blocked until the
        admin-op has been completed. The admin-op only sets a flag in he IMMND 
coord
        indicating the request to abort non crirical ccbs. The actual 
processing is
        done in ImmModel::cleanTheBasement with a period of 1 sec. To cover 
this the
        PBE also waits for 1 second after the admin-operation has returned to 
ensure
        that the abort messages have been generated by the IMMND coord. This 
still
        means that fevs messages for ccb aborts may be in transit. But since the
        attach of the PBE-OI itself goes over fevs, the PBE-OI attach should get
        processed after the aborts.

        The mechanism is not 100% tight. On the other hand, enabling and 
disabling
        the PBE should be rare and avoided and CCBs may get resource aborted for
        other reasons such as a blocked/overloaded filesystem. This adjustment 
to
        PBE was needed to cater for usage by SMF which is actually questionable
        since the PBE is togled off and on during an SMF campaign and not just
        before and after a campaign. But since the fix is trivial and has no 
serious
        down side, we accept it. The 1 second delay will not delay cluster 
restart
        or any other realtime critical operations. The PBE availability is only
        necessary to service CCBs and persistent runtime data changes, neither 
of
        which should ever be realtime critical or SA critical.


Complete diffstat:
------------------
 osaf/services/saf/immsv/immpbed/immpbe.cc |  22 +++++++++++++---------
 1 files changed, 13 insertions(+), 9 deletions(-)


Testing Commands:
-----------------
Starting with PBE disabled, testing in principle in principle requires
two CCBs in sequence. The first CCB enables PBE. The second CCB updates
some data. Ideally the second CCB should be delayed by TRY_AGAIN until PBE 
has attached as PBE-OI.

Testing, Expected Results:
--------------------------
The secopnd CCB will often succeed.
Success can not be 100% guaranteed since tghere is never 100% guarantee
of CCB success. But at least he seconds CCB should hopefully succeed much
more often than it fails. 


Conditions of Submission:
-------------------------
Ack from Neel.



Arch      Built     Started    Linux distro
-------------------------------------------
mips        n          n
mips64      n          n
x86         n          n
x86_64      n          n
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.


------------------------------------------------------------------------------
Don't Limit Your Business. Reach for the Cloud.
GigeNET's Cloud Solutions provide you with the tools and support that
you need to offload your IT needs and focus on growing your business.
Configured For All Businesses. Start Your Cloud Today.
https://www.gigenetcloud.com/
_______________________________________________
Opensaf-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensaf-devel

Reply via email to