Hi Mahesh, Thanks a lot for your review. The attachment is the patch for the README file. Could you please help to push the code? Thanks.
Best regards, Nhat Pham -----Original Message----- From: A V Mahesh [mailto:[email protected]] Sent: Thursday, March 10, 2016 5:12 PM To: Nhat Pham <[email protected]>; [email protected] Cc: [email protected] Subject: Re: [devel] [PATCH 0 of 1] Review Request for cpsv: Support preserving and recovering checkpoint replicas during headless state V3 [#1621] Hi Nhat Pham, ACK form me : Tested & reviewed following : ----------------------------------------- 1) Application running on payloads and controllers WITHOUT headless state occurrences 2) Application running on payloads and controllers WITH headless state occurrences 3) Application running on payloads and controllers CPND restart & WITH headless state occurrences 3) In service upgrade while application running on payload WITH headless state occurrences (Active controller old without #1621 patch , Standby controller new with #1621 patch and 2 payloads old without #1621 patch) 4) In service upgrade while application running on Standby/Active new/old Controllers WITH headless state occurrences (Active controller old without #1621 patch , Standby controller new with #1621 patch and 2 payloads old without #1621 patch) No major issue observed except some `saImmOiRtObjectCreate_2 failed with error = 14` ================================================================================= Mar 10 15:22:57 SC-1 osafamfd[15219]: NO Node 'PL-3' joined the cluster Mar 10 15:23:12 SC-1 osafckptd[15382]: ER saImmOiRtObjectCreate_2 failed with error = 14 Mar 10 15:23:12 SC-1 osafckptd[15382]: ER create runtime ckpt object failed with error: 14 ================================================================================= Not yet tested : ----------------------------------------- 1) Ckpt Data content restoration after headless state occurrences Note : Observed some issue with dataSize in the ioVector and this testing i will contentiou , if we find any issue we can fix any issue found in CKPT data restore. ================================================================================= 520|0 304 13304835 1 68| Verifying IO Vector returned in the CheckpointTrackCallback 520|0 304 13304835 1 69| Size of the data written 13 and the dataSize in the ioVector 46 doesnot match ================================================================================= General note : --------------------- Please add README in CPSV folder . -AVM > > > On 3/3/2016 3:41 PM, Nhat Pham wrote: >> Hi Mahesh, >> >> Have you reviewed the patch? >> >> Best regards, >> Nhat Pham >> >> -----Original Message----- >> From: A V Mahesh [mailto:[email protected]] >> Sent: Monday, February 29, 2016 1:15 PM >> To: Nhat Pham <[email protected]>; [email protected] >> Cc: [email protected] >> Subject: Re: [devel] [PATCH 0 of 1] Review Request for cpsv: Support >> preserving and recovering checkpoint replicas during headless state >> V3 [#1621] >> >> Hi Nhat Pham, >> >> I will review V3 patch and do the final functional testing and get >> back to you soon. >> ( I may take some time , I also need to work on my published MDS >> enhancements ) >> >> -AVM >> >> >> On 2/29/2016 9:39 AM, Nhat Pham wrote: >>> Hi, >>> >>> Following is the summary of updating in V3: >>> >>> Comment 1: This functionality should be under checks if Hydra >>> configuration is enabled in IMM attrName = >>> const_cast<SaImmAttrNameT>("scAbsenceAllowed"). >>> >>> Status: Included in V3 >>> >>> Comment 2: To keep the scope of CPSV service as non-collocated >>> checkpoint creation NOT_SUPPORTED , if cluster is running with >>> IMMSV_SC_ABSENCE_ALLOWED ( headless state configuration enabled at >>> the time of cluster startup currently it is not configurable , so >>> there no chance of run-time configuration change ). >>> >>> Status: No change in code. The CPSV still keep supporting >>> non-collocated checkpoint even if IMMSV_SC_ABSENCE_ALLOWED is enable. >>> >>> Comment 3: This is about case where checkpoint node director (cpnd) >>> crashes during headless state. In this case the cpnd can't finish >>> starting because it can't initialize CLM service. >>> Then after time out, the AMF triggers a restart again. Finally, the >>> node is rebooted. >>> It is expected that this problem should not lead to a node reboot. >>> >>> Status: Included in V3. CPND reinitializes CLM service if the fault >>> TRY_AGAIN is returned. >>> >>> Comment 4: The Suggestion was to re-create the checkpoint without >>> any sections in case the all replicas is lost. If the sections were >>> re-created, the application wouldn't know that data has been lost. I >>> think the BAD_HANDLE approach is okay since we have used it in other >>> services, but I see it as kind of a hack solution that is not really >>> in line with the specs. >>> The specs never intended BAD_HANDLE to be something that can happen >>> spontaneously on a previously valid handle, lest you are suffering >>> from memory corruption. In the future we could consider the >>> feasibility of avoiding spontaneous BAD_HANDLE where possible, and >>> in CKPT I think it may be possible by re-creating the checkpoints. >>> >>> Status: NOT included in V3. >>> This change is quite much and requires a detailed design in >>> different scenarios. I would suggest to create an enhancement ticket for >>> this. >>> How would you think? >>> >>> Best regards, >>> Nhat Pham >>> >>> -----Original Message----- >>> From: Nhat Pham [mailto:[email protected]] >>> Sent: Monday, February 29, 2016 11:06 AM >>> To: [email protected]; [email protected] >>> Cc: [email protected] >>> Subject: [devel] [PATCH 0 of 1] Review Request for cpsv: Support >>> preserving and recovering checkpoint replicas during headless state >>> V3 [#1621] >>> >>> Summary: cpsv: Support preserving and recovering checkpoint replicas >>> during headless state V3 [#1621] Review request for Trac Ticket(s): >>> 1621 Peer >>> Reviewer(s): [email protected]; [email protected] >>> Pull request to: [email protected] 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 y >>> OpenSAF services n >>> Core libraries n >>> Samples n >>> Tests n >>> Other n >>> >>> >>> Comments (indicate scope for each "y" above): >>> --------------------------------------------- >>> >>> changeset 8559fe4cea27efc8234f7cf779f3c7413efcd40f >>> Author: Nhat Pham <[email protected]> >>> Date: Mon, 29 Feb 2016 11:02:15 +0700 >>> >>> cpsv: Support preserving and recovering checkpoint replicas >>> during headless state V3 [#1621] >>> >>> Background: >>> ---------- >>> This enhancement supports to preserve checkpoint replicas in case >>> both SCs down (headless state) and recover replicas in case one >>> of SCs up >>> again. If both SCs goes down, checkpoint replicas on surviving >>> nodes still >>> remain. When a SC is available again, surviving replicas are >>> automatically >>> registered to the SC checkpoint database. Content in surviving >>> replicas are >>> intacted and synchronized to new replicas. >>> >>> When no SC is available, client API calls changing checkpoint >>> configuration >>> which requires SC communication, are rejected. Client API calls >>> reading and >>> writing existing checkpoint replicas still work. >>> >>> Limitation: The CKPT service does not support recovering >>> checkpoints in >>> following cases: >>> - The checkpoint which is unlinked before headless. >>> - The non-collocated checkpoint has active replica locating on SC. >>> - The non-collocated checkpoint has active replica locating on >>> a PL and this >>> PL restarts during headless state. In this cases, the checkpoint >>> replica is >>> destroyed. The fault code SA_AIS_ERR_BAD_HANDLE is returned when >>> the client >>> accesses the checkpoint in these cases. The client must re-open the >>> checkpoint. >>> >>> While in headless state, accessing checkpoint replicas does not >>> work if the >>> node which hosts the active replica goes down. It will back >>> working when a >>> SC available again. >>> >>> Solution: >>> --------- >>> The solution for this enhancement includes 2 parts: >>> >>> 1. To destroy un-recoverable checkpoint described above when >>> both SCs are >>> down: When both SCs are down, the CPND deletes un-recoverable >>> checkpoint >>> nodes and replicas on PLs. Then it requests CPA to destroy >>> corresponding >>> checkpoint node by using new message CPA_EVT_ND2A_CKPT_DESTROY >>> >>> 2. To update CPD with checkpoint information When an active SC >>> is up after >>> headless, CPND will update CPD with checkpoint information by >>> using new >>> message CPD_EVT_ND2D_CKPT_INFO_UPDATE instead of using >>> CPD_EVT_ND2D_CKPT_CREATE. This is because the CPND will create >>> new ckpt_id >>> for the checkpoint which might be different with the current >>> ckpt id if the >>> CPD_EVT_ND2D_CKPT_CREATE is used. The CPD collects checkpoint >>> information >>> within 6s. During this updating time, following requests is >>> rejected with >>> fault code SA_AIS_ERR_TRY_AGAIN: >>> - CPD_EVT_ND2D_CKPT_CREATE >>> - CPD_EVT_ND2D_CKPT_UNLINK >>> - CPD_EVT_ND2D_ACTIVE_SET >>> - CPD_EVT_ND2D_CKPT_RDSET >>> >>> >>> Complete diffstat: >>> ------------------ >>> osaf/libs/agents/saf/cpa/cpa_proc.c | 52 >>> ++++++++++++++++++++++++++ >>> osaf/libs/common/cpsv/cpsv_edu.c | 43 >>> +++++++++++++++++++++ >>> osaf/libs/common/cpsv/include/cpd_cb.h | 4 ++ >>> osaf/libs/common/cpsv/include/cpd_imm.h | 2 + >>> osaf/libs/common/cpsv/include/cpd_proc.h | 7 +++ >>> osaf/libs/common/cpsv/include/cpd_tmr.h | 3 +- >>> osaf/libs/common/cpsv/include/cpnd_cb.h | 3 + >>> osaf/libs/common/cpsv/include/cpnd_init.h | 3 + >>> osaf/libs/common/cpsv/include/cpsv_evt.h | 20 ++++++++++ >>> osaf/services/saf/cpsv/cpd/Makefile.am | 3 +- >>> osaf/services/saf/cpsv/cpd/cpd_evt.c | 229 >>> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ >>> >>> ++++++++++++++++++++++++++++++++++++++ >>> osaf/services/saf/cpsv/cpd/cpd_imm.c | 202 >>> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ >>> >>> +++++++++++++++++++++++++ >>> osaf/services/saf/cpsv/cpd/cpd_init.c | 26 ++++++++++++- >>> osaf/services/saf/cpsv/cpd/cpd_proc.c | 309 >>> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ >>> >>> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ >>> >>> ++ >>> osaf/services/saf/cpsv/cpd/cpd_tmr.c | 7 +++ >>> osaf/services/saf/cpsv/cpnd/Makefile.am | 6 ++- >>> osaf/services/saf/cpsv/cpnd/cpnd_db.c | 16 ++++++++ >>> osaf/services/saf/cpsv/cpnd/cpnd_evt.c | 24 ++++++++++++ >>> osaf/services/saf/cpsv/cpnd/cpnd_init.c | 34 ++++++++++++++++- >>> osaf/services/saf/cpsv/cpnd/cpnd_mds.c | 13 ++++++ >>> osaf/services/saf/cpsv/cpnd/cpnd_proc.c | 429 >>> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ >>> >>> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ >>> >>> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-- >>> 21 files changed, 1423 insertions(+), 12 deletions(-) >>> >>> >>> Testing Commands: >>> ----------------- >>> - >>> >>> Testing, Expected Results: >>> -------------------------- >>> - >>> >>> >>> Conditions of Submission: >>> ------------------------- >>> - >>> >>> >>> 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. >>> >>> >>> -------------------------------------------------------------------- >>> -- >>> ------ >>> -- >>> Site24x7 APM Insight: Get Deep Visibility into Application >>> Performance APM + Mobile APM + RUM: Monitor 3 App instances at just >>> $35/Month Monitor end-to-end web transactions and take corrective >>> actions now Troubleshoot faster and improve end-user experience. Signup >>> Now! >>> http://pubads.g.doubleclick.net/gampad/clk?id=272487151&iu=/4140 >>> _______________________________________________ >>> Opensaf-devel mailing list >>> [email protected] >>> https://lists.sourceforge.net/lists/listinfo/opensaf-devel >>> >>> >> > begin 666 1621_cpsv_to_add_README_file_for_headless_v1.patch M(R!(1R!C:&%N9V5S970@<&%T8V@*(R!087)E;G0@9F8W,S=D9C!F.#9A93(Y M,3)D83EC.38T9C(R8CDW-S$X-F)D9#1E-@IC<'-V.B!4;R!A9&0@4D5!1$U% M+DA%041,15-3(&9I;&4@:6X@8W!S=B!6,2!;(S$V,C%="@ID:69F("TM9VET M(&$O;W-A9B]S97)V:6-E<R]S868O8W!S=B]214%$344N2$5!1$Q%4U,@8B]O M<V%F+W-E<G9I8V5S+W-A9B]C<'-V+U)%041-12Y(14%$3$534PIN97<@9FEL M92!M;V1E(#$P,#8T- HM+2T@+V1E=B]N=6QL"BLK*R!B+V]S868O<V5R=FEC M97,O<V%F+V-P<W8O4D5!1$U%+DA%041,15-3"D! ("TP+# @*S$L-S<@0$ * M*R,**R,@(" @(" M*BT@3W!E;E-!1B @+2HM"BLC"BLC("A#*2!#;W!Y<FEG M:'0@,C Q-2!4:&4@3W!E;E-!1B!&;W5N9&%T:6]N"BLC"BLC(%1H:7,@<')O M9W)A;2!I<R!D:7-T<FEB=71E9"!I;B!T:&4@:&]P92!T:&%T(&ET('=I;&P@ M8F4@=7-E9G5L+"!B=70**R,@5TE42$]55"!!3ED@5T%24D%.5%D[('=I=&AO M=70@979E;B!T:&4@:6UP;&EE9"!W87)R86YT>2!O9B!-15)#2$%.5$%"24Q) M5%D**R,@;W(@1DE43D534R!&3U(@02!005)424-53$%2(%!54E!/4T4N(%1H M:7,@9FEL92!A;F0@<')O9W)A;2!A<F4@;&EC96YS960**R,@=6YD97(@=&AE M($=.52!,97-S97(@1V5N97)A;"!0=6)L:6,@3&EC96YS92!697)S:6]N(#(N M,2P@1F5B<G5A<GD@,3DY.2X**R,@5&AE(&-O;7!L971E(&QI8V5N<V4@8V%N M(&)E(&%C8V5S<V5D(&9R;VT@=&AE(&9O;&QO=VEN9R!L;V-A=&EO;CH**R,@ M:'1T<#HO+V]P96YS;W5R8V4N;W)G+VQI8V5N<V5S+VQG<&PM;&EC96YS92YP M:' **R,@4V5E('1H92!#;W!Y:6YG(&9I;&4@:6YC;'5D960@=VET:"!T:&4@ M3W!E;E-!1B!D:7-T<FEB=71I;VX@9F]R(&9U;&P**R,@;&EC96YS:6YG('1E M<FUS+@HK(PHK(R!!=71H;W(H<RDZ($5R:6-S<V]N($%""BLC"BL**T=%3D52 M04P**RTM+2TM+2T**PHK5&AI<R!I<R!A(&1E<V-R:7!T:6]N(&]F(&AO=R!T M:&4@0VAE8VMP;VEN="!S97)V:6-E('!R97-E<G9E<R!C:&5C:W!O:6YT(')E M<&QI8V%S(&EN(&-A<V4**V)O=&@@4T-S(&1O=VX@*&AE861L97-S('-T871E M*2!A;F0@<F5C;W9E<G,@<F5P;&EC87,@:6X@8V%S92!O;F4@;V8@4T-S('5P M(&%G86EN+B **PHK268@8F]T:"!30W,@9V]E<R!D;W=N+"!C:&5C:W!O:6YT M(')E<&QI8V%S(&]N('-U<G9I=FEN9R!N;V1E<R!S=&EL; HK<F5M86EN+B!7 M:&5N(&$@4T,@:7,@879A:6QA8FQE(&%G86EN+"!S=7)V:79I;F<@<F5P;&EC M87,@87)E(&%U=&]M871I8V%L;'D**W)E9VES=&5R960@=&\@=&AE(%-#(&-H M96-K<&]I;G0@9&%T86)A<V4N($-O;G1E;G0@:6X@<W5R=FEV:6YG(')E<&QI M8V%S(&%R90HK:6YT86-T960@86YD('-Y;F-H<F]N:7IE9"!T;R!N97<@<F5P M;&EC87,N"BL**TEN(&AE861L97-S('-T871E+"!C:&5C:W!O:6YT(&-L:65N M="!C86X@<F5A9"!F<F]M(&%N9"!W<FET92!T;R!E>&ES=&EN9R!C:&5C:W!O M:6YT(')E<&QI8V%S+B **TAO=V5V97(@8VAE8VMP;VEN="!!4$ES(&-H86YG M:6YG(&-H96-K<&]I;G0@8V]N9FEG=7)A=&EO;B!W:&EC:"!R97%U:7)E<R!3 M0R!C;VUM=6YI8V%T:6]N( HK87)E(')E:F5C=&5D('=I=&@@9F%U;'0@8V]D M92!305]!25-?15)27U1265]!1T%)3BX@5&AE(')E:F5C=&5D($%027,@87)E M.@HK"BLM('-A0VMP=$-H96-K<&]I;G1/<&5N*"D**RT@<V%#:W!T0VAE8VMP M;VEN=$]P96Y!<WEN8R@I"BLM('-A0VMP=$-H96-K<&]I;G1#;&]S92@I"BLM M('-A0VMP=$-H96-K<&]I;G15;FQI;FLH*0HK+2!S84-K<'1#:&5C:W!O:6YT M4F5T96YT:6]N1'5R871I;VY3970H*0HK+2!S84-K<'1!8W1I=F5297!L:6-A M4V5T*"D**PHK26X@8V%S92!T:&4@;F]D92!W:&EC:"!H;W-T<R!T:&4@86-T M:79E(')E<&QI8V$@9V]E<R!D;W=N(&1U<FEN9R!H96%D;&5S<R!S=&%T92P* M*V%C8V5S<VEN9R!C:&5C:W!O:6YT(')E<&QI8V%S(&1O97,@;F]T('=O<FL@ M86YY;6]R92X@270@=VEL;"!B86-K('=O<FMI;F<@=VAE;B!A(%-#(&%V86EL M86)L92!A9V%I;BX**PHK4D5#3U9%4ED@2$%.1$Q)3D<**RTM+2TM+2TM+2TM M+2TM+2TM"BL**TEN(&-A<V4@:&5A9&QE<W,@<W1A=&4@:&%P<&5N+"!T:&4@ M0VAE8VMP;VEN="!.;V1E($1I<F5C=&]R("A#4$Y$*2!D96QE=&5S('5N+7)E M8V]V97)A8FQE( HK8VAE8VMP;VEN="!N;V1E<R!O;B!03',N(%1H96X@:70@ M<F5Q=65S=',@0U!!('1O(&1E<W1R;WD@8V]R<F5S<&]N9&EN9R!C:&5C:W!O M:6YT(&YO9&4@8GD@"BMU<VEN9R!T:&4@;F5W(&UE<W-A9V4@0U!!7T565%]. M1#)!7T-+4%1?1$535%)/62X**PHK26X@8V%S92!A;B!A8W1I=F4@4T,@:7,@ M=7 @869T97(@:&5A9&QE<W,L($-03D0@=7!D871E<R!#4$0@=VET:"!C:&5C M:W!O:6YT(&EN9F]R;6%T:6]N(&)Y('5S:6YG"BMA(&YE=R!M97-S86=E($-0 M1%]%5E1?3D0R1%]#2U!47TE.1D]?55!$051%(&EN<W1E860@;V8@=7-I;F<@ M0U!$7T565%].1#)$7T-+4%1?0U)%051%+B!4:&ES(&ES"BMB96-A=7-E('1H M92!#4$Y$('=I;&P@8W)E871E(&YE=R!C:W!T7VED(&9O<B!T:&4@8VAE8VMP M;VEN="!W:&EC:"!M:6=H="!B92!D:69F97)E;G0@=VET:"!T:&4**V-U<G)E M;G0@8VMP="!I9"!I9B!T:&4@0U!$7T565%].1#)$7T-+4%1?0U)%051%(&ES M('5S960N( HK"BM4:&4@0U!$(&-O;&QE8W1S(&-H96-K<&]I;G0@:6YF;W)M M871I;VX@=VET:&EN(#9S+B!$=7)I;F<@=&AI<R!U<&1A=&EN9R!T:6UE+"!F M;VQL;W=I;F<@<F5Q=65S=',@"BMI<R!R96IE8W1E9"!W:71H(&9A=6QT(&-O M9&4@4T%?04E37T524E]44EE?04=!24XZ"BL**RT@0U!$7T565%].1#)$7T-+ M4%1?0U)%051%"BLM($-01%]%5E1?3D0R1%]#2U!47U5.3$E.2PHK+2!#4$1? M15947TY$,D1?04-4259%7U-%5 HK+2!#4$1?15947TY$,D1?0TM05%]21%-% M5 HK"BM,24U)5$%424].4PHK+2TM+2TM+2TM+2T**PHK5&AE($-+4%0@<V5R M=FEC92!C86X@;F]T('-U<'!O<G0@<F5C;W9E<FEN9R!C:&5C:W!O:6YT<R!I M;B!F;VQL;W=I;F<@8V%S97,Z"BL**R M(%1H92!C:&5C:W!O:6YT('=H:6-H M(&ES('5N;&EN:V5D(&)E9F]R92!H96%D;&5S<RX**PHK("T@5&AE(&YO;BUC M;VQL;V-A=&5D(&-H96-K<&]I;G0@:&%S(&%C=&EV92!R97!L:6-A(&QO8V%T M:6YG(&]N(%-#+@HK"BL@+2!4:&4@;F]N+6-O;&QO8V%T960@8VAE8VMP;VEN M="!H87,@86-T:79E(')E<&QI8V$@;&]C871I;F<@;VX@82!03"!A;F0@=&AI M<PHK(" @4$P@<F5S=&%R=',@9'5R:6YG(&AE861L97-S('-T871E+B **PHK M26X@=&AE<V4@8V%S97,L('1H92!C:&5C:W!O:6YT(')E<&QI8V$@:7,@9&5S M=')O>65D+B!4:&4@9F%U;'0@8V]D92 **U-!7T%)4U]%4E)?0D%$7TA!3D1, M12!I<R!R971U<FYE9"!W:&5N('1H92!C;&EE;G0@86-C97-S97,@=&AE(&-H M96-K<&]I;G0@"BMI;B!T:&5S92!C87-E<RX@5&AE(&-L:65N="!M=7-T(')E 6+6]P96X@=&AE(&-H96-K<&]I;G0N"@`` ` end ------------------------------------------------------------------------------ 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=278785111&iu=/4140 _______________________________________________ Opensaf-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/opensaf-devel
