Excellent!

This shows how useful it is to have test cases. :-)

regards,
Anders Widell

On 11/30/2015 10:09 AM, Nhat Pham wrote:
> Hi Anders,
>
> I managed to reproduce the problem. Look like there are several problems in
> ckpt relating to closing and unlinking the non-collocated checkpoint.
> The following tickets were raised on the problems.
>
> https://sourceforge.net/p/opensaf/tickets/1615/
> https://sourceforge.net/p/opensaf/tickets/1616/
>
> Best regards,
> Nhat Pham
>
> -----Original Message-----
> From: Anders Widell [mailto:[email protected]]
> Sent: Friday, November 27, 2015 9:04 PM
> To: Nhat Pham <[email protected]>; 'A V Mahesh'
> <[email protected]>
> Cc: [email protected]
> Subject: Re: [devel] [PATCH 0 of 1] Review Request for ckpt: cpsv tests
> improvement [#1481] v4
>
> Hi!
>
> I tried to reproduce the failed CKPT test cases, and it turns out that the
> way to trigger this problem is to run the ckpttest program concurrently on
> two nodes (in my case PL-3 and SC-2, not sure if it matters). After I have
> run it concurrently on two nodes, it seems the system breaks and after that
> I always get the failed test cases when I run the test program on either of
> the controller nodes (not concurrently this time).
>
> So, either the test case leaves some garbage that it forgets to clean up
> when it has finished, or the checkpoint service gets into some kind of
> problem and enters a bad state. In either case, I think it is worth
> investigating!
>
> regards,
> Anders Widell
>
> On 11/26/2015 10:28 AM, Nhat Pham wrote:
>> Hi Anders,
>>
>> The patch was updated with your comments (1 and 2). Please have a look.
>>
>> Regarding the comment 3, I didn't see the failed test cases. Please
>> have a look at the test log.
>> I tested with the changeset below.
>>
>> changeset:   7136:1881b5ad6dd8
>> tag:         tip
>> user:        Hans Nordeback <[email protected]>
>> date:        Wed Nov 25 12:41:42 2015 +0100
>> summary:     AMFD: Unit test case for encode/decode of AVD_COMP #1544
>>
>> Best regards,
>> Nhat Pham
>>
>>
>> -----Original Message-----
>> From: Anders Widell [mailto:[email protected]]
>> Sent: Wednesday, November 25, 2015 7:29 PM
>> To: Nhat Pham <[email protected]>; 'A V Mahesh'
>> <[email protected]>
>> Cc: [email protected]
>> Subject: Re: [devel] [PATCH 0 of 1] Review Request for ckpt: cpsv
>> tests improvement [#1481] v3
>>
>> Hi!
>>
>> Ack from me, with some comments. I haven't had time to review the
>> code, so my comments are just from trying to build and test it. Since
>> you already have an ack from Mahesh, I think you can go ahead and push
>> it after you have fixed the first of my comments:
>>
>> 1 (major): If I configure OpenSAF with "./configure --enable-tests
>> --disable-ais-ckpt", then OpenSAF fails to build:
>>
>> make[2]: *** No rule to make target
>> `../../osaf/libs/saf/libSaCkpt/libSaCkpt.la', needed by `cpsvtest'. Stop.
>> make[2]: *** Waiting for unfinished jobs....
>>      CC       cpsvtest-test_cpa.o
>>      CC       cpsvtest-test_cpa_util.o
>>
>> 2: Maybe rename the test to ckpttest instead of cpsvtest?
>>
>> 3: A lot of the test cases fail when I run it on either of the system
>> controllers. Do you know why? This ought to be fixed; it is not so
>> useful to have tests that fail (unless you are doing TDD and are
>> planning to implement the code later on, but I am assuming this is not
>> the case here...)
>>
>> # cpsvtest
>>
>> Suite 1: CKPT API saCkptInitialize()
>>        1  PASSED   To verify that saCkptInitialize initializes checkpoint
>> service;
>>        2  PASSED   To verify initialization when NULL pointer is fed as
> clbks;
>>        3  PASSED   To verify initialization with NULL version pointer;
>>        4  PASSED   To verify initialization with NULL as paramaters for
>> clbks and version;
>>        5  PASSED   To verify initialization with error version relCode <
>> supported release code;
>>        6  PASSED   To verify initialization with error version relCode >
>> supported;
>>        7  PASSED   To verify initialization with error version
>> majorVersion > supported;
>>        8  PASSED   To verify init whether correct version is returned when
>> wrong version is passed;
>>        9  PASSED   To verify saCkptInitialize with NULL handle;
>>       10  PASSED   To verify saCkptInitialize with one NULL clbk;
>>
>> Suite 2: CKPT API saCkptSelectObjectGet()
>>        1  PASSED   To verify saCkptSelectionObjectGet returns operating
>> system handle;
>>        2  PASSED   To verify SelObj api with uninitialized handle;
>>        3  PASSED   To verify SelObj api with finalized handle;
>>        4  PASSED   To verify SelObj api with NULL handle;
>>        5  PASSED   To verify SelObj api with NULL selObj;
>>        6  PASSED   To verify SelObj api with both NULL handle and selObj;
>>
>> Suite 3: CKPT API saCkptDispatch()
>>        1  PASSED   To verify that callback is invoked when dispatch is
>> called with DISPATCH_ONE;
>>        2  PASSED   To verify that callback is invoked when dispatch is
>> called with DISPATCH_ALL;
>>        3  PASSED   To verify that dispatch blocks for callback when
>> dispatchFlag is DISPATCH_BLOCKING;
>>        4  PASSED   To verify dispatch with invalid dispatchFlag;
>>        5  PASSED   To verify dispatch with NULL ckptHandle and
> DISPATCH_ONE;
>>        6  PASSED   To verify dispatch with NULL ckptHandle and
> DISPATCH_ALL;
>>        7  PASSED   To verify dispatch with NULL ckptHandle and
>> DISPATCH_BLOCKING;
>>        8  PASSED   To verify dispatch with invalid ckptHandle and
>> DISPATCH_ONE;
>>        9  PASSED   To verify dispatch after finalizing ckpt service;
>>
>> Suite 4: CKPT API saCkptFinalize()
>>        1  PASSED   To verify that finalize closes association between
>> service and process;
>>        2  PASSED   To verify finalize when service is not initialized;
>>        3  PASSED   To verify that after finalize selobj gets invalid;
>>        4  PASSED   To verify that after finalize ckpts are closed;
>>
>> Suite 5: CKPT API saCkptCheckpointOpen()
>>        1  PASSED   To verify opening a ckpt with synchronous update option;
>>        2  PASSED   To verify opening a ckpt with asynchronous update
> option;
>>        3  PASSED   To verify opening an existing ckpt;
>>        4  PASSED   To verify opening an existing ckpt when its creation
>> attributes match;
>>        5  PASSED   To verify opening an nonexisting ckpt;
>>        6  PASSED   To verify opening an ckpt when
>> SA_CKPT_CHECKPOINT_CREATE flag not set and CR_ATTR is NOT NULL;
>>        7  PASSED   To verify opening an ckpt when
>> SA_CKPT_CHECKPOINT_CREATE flag set and CR_ATTR is NULL;
>>        8  PASSED   To verify opening an ckpt with ckptSize > maxSec *
>> maxSectionSize;
>>        9  PASSED   To verify opening an ckpt when
>> ALL_REPLICAS|ACTIVE_REPLICA specified;
>>       10  PASSED   To verify opening an ckpt when
>> ALL_REPLICAS|ACTIVE_REPLICA_WEAK specified;
>>       11  PASSED   To verify opening an ckpt when
>> ACTIVE_REPLICA|ACTIVE_REPLICA_WEAK specified;
>>       12  PASSED   To verify opening an ckpt when NULL name is specified;
>>       13  PASSED   To verify opening an ckpt with
>> SA_CKPT_CHECKPOINT_CREATE flag not set and CR_ATTR NOT NULL;
>>       14  PASSED   To verify opening an ckpt when NULL is passed as
>> checkpointHandle;
>>       15  PASSED   To verify opening an ckpt when ALL_REPLICAS|COLLOCATED
>> is specified;
>>       16  PASSED   To verify opening an ckpt when REPLICA_WEAK|COLLOCATED
>> is specified;
>>       17  PASSED   To verify opening an ckpt when
>> ACTIVE_REPLICA|COLLOCATED is specified;
>>       18  PASSED   To verify opening an ckpt when invalid openFlags is
>> specified;
>>       19  PASSED   To verify creating a ckpt when already exists but with
>> different creation attributes;
>>       20  PASSED   To verify creating a ckpt when already exists but with
>> different ckpt size;
>>       21  PASSED   To verify creating a ckpt when already exists but with
>> different retention duration;
>>       22  PASSED   To verify creating a ckpt when already exists but with
>> different maxSections;
>>       23  PASSED   To verify creating a ckpt when already exists but with
>> different maxSectionSize;
>>       24  PASSED   To verify creating a ckpt when already exists but with
>> different maxSectionIdSize;
>>       25  PASSED   To verify creating a ckpt when ckpt service has not
>> been initialized;
>>       26  PASSED   To verify creating a ckpt when NULL open clbk is
>> provided during initialization;
>>       27  PASSED   To verify openAsync with synchronous update option;
>>       28  PASSED   To verify openAsync with asynchronous update option;
>>       29  PASSED   To verify openAsync to open an existing ckpt;
>>       30  PASSED   To verify openAsync to open an existing ckpt if its
>> creation attributes match;
>>       31  PASSED   To verify openAsync to open an nonexisting ckpt;
>>       32  PASSED   To verify openAsync with SA_CKPT_CHECKPOINT_CREATE flag
>> not set and CR_ATTR NOT NULL;
>>       33  PASSED   To verify openAsync with SA_CKPT_CHECKPOINT_CREATE flag
>> set and NULL CR_ATTR;
>>       34  PASSED   To verify openAsync with ckptSize > maxSec *
>> maxSectionSize;
>>       35  PASSED   To verify openAsync when ALL_REPLICAS|ACTIVE_REPLICA
>> specified;
>>       36  PASSED   To verify openAsync when
>> ALL_REPLICAS|ACTIVE_REPLICA_WEAK specified;
>>       37  PASSED   To verify openAsync when
>> ACTIVE_REPLICA|ACTIVE_REPLICA_WEAK specified;
>>       38  PASSED   To verify openAsync when NULL name is specified;
>>       39  PASSED   To verify openAsync for reading/writing which is not
>> created;
>>       40  PASSED   To verify openAsync when NULL invocation is specified;
>>       41  PASSED   To verify openAsync when ALL_REPLICAS|COLLOCATED is
>> specified;
>>       42  PASSED   To verify openAsync when REPLICA_WEAK|COLLOCATED is
>> specified;
>>       43  PASSED   To verify openAsync when ACTIVE_REPLICA|COLLOCATED is
>> specified;
>>       44  PASSED   To verify openAsync when invalid openFlags is specified;
>>       45  PASSED   To verify openAsync when already exists but with
>> different creation attributes;
>>       46  PASSED   To verify openAsync when already exists but with
>> different checkpointSize;
>>       47  PASSED   To verify openAsync when already exists but with
>> different retentionDuration;
>>       48  PASSED   To verify openAsync when already exists but with
>> different maxSections;
>>       49  PASSED   To verify openAsync when already exists but with
>> different maxSectionSize;
>>       50  PASSED   To verify openAsync when already exists but with
>> different maxSectionIdSize;
>>       51  PASSED   To verify creating a ckpt with invalid creation flags;
>>       52  PASSED   To verify creating a ckpt with invalid creation flags;
>>       53  PASSED   To verify creating a ckpt with invalid creation flags;
>>
>> Suite 6: CKPT API saCkptCheckpointClose()
>>        1  PASSED   To verify Closing of the checkpoint designated by
>> checkpointHandle;
>>        2  PASSED   To verify that after close checkpointHandle is no
>> longer valid;
>>        3  PASSED   To test Closing of the checkpoint after unlink;
>>        4  PASSED   To test Closing of the checkpoint before unlink;
>>        5  PASSED   To test close api when calling process is not
>> registered with checkpoint service;
>>        6  PASSED   To verify that close cancels all pending callbacks;
>>        7  FAILED   To test that the checkpoint can be opened after close
>> and before checkpoint expiry (expected SA_AIS_NOT_VALID, got
>> SA_AIS_ERR_LIBRARY);
>>        8  PASSED   To verify that close cancels pending callbacks for that
>> handle only;
>>
>> Suite 7: CKPT API saCkptCheckpointUnlink()
>>        1  PASSED   To test Unlink deletes the existing checkpoint from the
>> cluster;
>>        2  PASSED   To test that name is no longer valid after unlink;
>>        3  PASSED   To test that the ckpt with same name can be created
>> after unlinking and yet not closed;
>>        4  PASSED   To test that ckpt gets deleted immediately when no
>> process has opened it;
>>        5  PASSED   To test that the ckpt can be accessed after unlinking
>> till it is closed;
>>        6  PASSED   To test unlink after retention duration of ckpt;
>>        7  PASSED   To test Closing of the checkpoint before unlink;
>>        8  FAILED   To test unlink with correct handle (expected
>> SA_AIS_NOT_VALID, got SA_AIS_OK);
>>        9  PASSED   To test unlink with uninitialized handle;
>>       10  PASSED   To test unlink in the child process - NOT SUPPORTED;
>>       11  PASSED   To test unlink with NULL ckpt name;
>>
>> Suite 8: CKPT API saCkptRetenionDurationSet()
>>        1  PASSED   To test that invoking rdset changes the rd for the
>> checkpoint;
>>        2  PASSED   To test that invoking rdset changes the rd for the
>> checkpoint;
>>        3  PASSED   To test rdset api with invalid handle;
>>        4  FAILED   To test when rdset is invoked after unlink (expected
>> SA_AIS_NOT_VALID, got SA_AIS_ERR_LIBRARY);
>>        5  PASSED   To test when ret.duration to be set is zero;
>>
>> Suite 9: CKPT API saCkptActiveReplicaSet()
>>        1  PASSED   To verify that local replica becomes active after
>> invoking replicaset;
>>        2  PASSED   To test that replica can be set for only for collocated
>> ckpt;
>>        3  PASSED   To test replica can be set active only for asynchronous
>> ckpt;
>>        4  PASSED   To test replica set when handle with read option is
>> passed to the api;
>>        5  PASSED   To verify replicaset when an invalid handle is passed;
>>
>> Suite 10: CKPT API saCkptCheckpointStatusGet()
>>        1  PASSED   To test that this api can be used to retrieve the
>> checkpoint status;
>>        2  PASSED   To test when arbitrary handle is passed to status get
> api;
>>        3  PASSED   To test status get when there is no active replica;
>>        4  PASSED   To test status get when invalid param is passed;
>>
>> Suite 11: CKPT API saCkptSectionCreate()
>>        1  PASSED   To verify section create with arbitrary handle;
>>        2  PASSED   To verify section create with correct handle;
>>        3  PASSED   To verify creating sections greater than maxSections;
>>        4  PASSED   To verify section create when there is no active
> replica;
>>        5  PASSED   To verify section create when ckpt is not opened in
>> write mode;
>>        6  PASSED   To verify section create when maxSections is 1;
>>        7  PASSED   To verify section create with NULL section creation
>> attributes;
>>        8  PASSED   To verify section create with NULL initial data and
>> datasize > 0;
>>        9  PASSED   To verify section create with NULL initial data and
>> datasize = 0;
>>       10  FAILED   To verify section create with sectionId which is
>> already present (expected SA_AIS_NOT_VALID, got SA_AIS_ERR_LIBRARY);
>>       11  PASSED   To verify section create with generated sectionId;
>>       12  PASSED   To verify section create with section idLen greater
>> than maxsec id size;
>>       13  PASSED   To verify section create with section idSize zero;
>>       14  PASSED   To verify free of section create with generated
> sectionId;
>> Suite 12: CKPT API saCkptSectionDelete()
>>        1  PASSED   To verify section delete with arbitrary handle;
>>        2  PASSED   To verify section delete with correct handle;
>>        3  PASSED   To verify section delete when ckpt is not opened in
>> write mode;
>>        4  PASSED   To verify section delete with an invalid section id;
>>        5  PASSED   To verify that when a section is deleted it is deleted
>> atleast in active replica;
>>        6  PASSED   To verify section delete when maxSections is 1;
>>
>> Suite 13: CKPT API saCkptSectionExpirationTimeSet()
>>        1  PASSED   To verify section expset with arbitrary handle;
>>        2  PASSED   To verify section expset with correct handle;
>>        3  PASSED   To verify that section exp time of a default section
>> cannot be changed;
>>        4  PASSED   To verify section exp set when ckpt is opened in read
> mode;
>>        5  PASSED   To verify section exp set with invalid sectionid;
>>
>> Suite 14: CKPT API saCkptSectionIterationInitialize()
>>        1  PASSED   To verify that iter init returns handle;
>>        2  PASSED   To verify iter init with bad handle;
>>        3  PASSED   To verify iter init with finalized handle;
>>        4  PASSED   To verify sections with SA_TIME_END are returned when
>> sectionsChosen is FOREVER;
>>        5  FAILED   To verify iter init when sectionsChosen is LEQ_EXP_TIME
>> (expected SA_AIS_NOT_VALID, got SA_AIS_ERR_LIBRARY);
>>        6  FAILED   To verify iter init when sectionsChosen is GEQ_EXP_TIME
>> (expected SA_AIS_NOT_VALID, got SA_AIS_ERR_LIBRARY);
>>        7  PASSED   To verify iter init with NULL section iter handle;
>>        8  PASSED   To verify iter init with invalid sectionsChosen value;
>>
>> Suite 15: CKPT API saCkptSectionIterationNext()
>>        1  PASSED   To verify iter next with uninitialized handle;
>>        2  PASSED   To verify that sec created before iter init and not
>> deleted before iterfinalize are returned;
>>        3  FAILED   To verify iter next with NULL sec descriptor (expected
>> SA_AIS_NOT_VALID, got SA_AIS_ERR_LIBRARY);
>>        4  FAILED   To verify iter next after Finalize (expected
>> SA_AIS_NOT_VALID, got SA_AIS_ERR_LIBRARY);
>>
>> Suite 16: CKPT API saCkptSectionIterationFinalize()
>>        1  FAILED   To verify iter finalize with correct handle (expected
>> SA_AIS_NOT_VALID, got SA_AIS_ERR_LIBRARY);
>>        2  PASSED   To verify iter finalize with arbitrary handle;
>>        3  FAILED   To verify iter finalize when ckpt has been closed and
>> unlinked (expected SA_AIS_NOT_VALID, got SA_AIS_ERR_LIBRARY);
>>
>> Suite 17: CKPT API saCkptCheckpointWrite()
>>        1  PASSED   To verify that write api writes into the ckpt;
>>        2  FAILED   To verify that write api writes into the ACTIVE_REPLICA
>> ckpt (expected SA_AIS_NOT_VALID, got SA_AIS_ERR_LIBRARY);
>>        3  PASSED   To verify that write api writes into the
>> ACTIVE_REPLICA_WEAK ckpt;
>>        4  PASSED   To verify that write api writes into the COLLOCATED
> ckpt;
>>        5  PASSED   To verify write api with an arbitrary handle;
>>        6  PASSED   To verify write api after finalize is called;
>>        7  PASSED   To verify write when there is no such section in the
> ckpt;
>>        8  PASSED   To verify write when the ckpt is not opened for writing;
>>        9  PASSED   To verify write when NULL iovector is passed;
>>       10  PASSED   To verify write when the data to be written exceeds the
>> maxSectionSize;
>>       11  PASSED   To verify write with NULL err index;
>>       12  PASSED   To verify write when the dataOffset+dataSize exceeds
>> maxSectionSize;
>>       13  PASSED   To verify write when there is more than one section to
>> be written and read from ckpt;
>>
>> Suite 18: CKPT API saCkptCheckpointRead()
>>        1  PASSED   To verify that when data is read the data is copied;
>>        2  PASSED   To verify read with arbitrary handle;
>>        3  PASSED   To verify read with already finalized handle;
>>        4  PASSED   To verify read with sectionid that doesnot exist;
>>        5  PASSED   To verify read when the ckpt is not opened for reading;
>>        6  PASSED   To verify read when the dataSize > maxSectionSize;
>>        7  PASSED   To verify read when the dataOffset > maxSectionSize;
>>        8  PASSED   To verify read with NULL err index;
>>        9  PASSED   To verify read api when there is no data to be read;
>>       10  PASSED   To verify read api with NULL data buffer;
>>
>> Suite 19: CKPT API saCkptCheckpointSynchronize()
>>        1  FAILED   To verify sync api (expected SA_AIS_NOT_VALID, got
>> SA_AIS_ERR_LIBRARY);
>>        2  FAILED   To verify sync async api (expected SA_AIS_NOT_VALID,
>> got SA_AIS_ERR_LIBRARY);
>>        3  FAILED   To verify sync api when the ckpt is opened in read mode
>> (expected SA_AIS_NOT_VALID, got SA_AIS_ERR_LIBRARY);
>>        4  PASSED   To verify sync api when the ckpt is synchronous;
>>        5  PASSED   To verify sync async api when the ckpt is synchronous;
>>        6  FAILED   To verify sync async api when the ckpt is opened in
>> read mode (expected SA_AIS_NOT_VALID, got SA_AIS_ERR_LIBRARY);
>>        7  PASSED   To verify sync async api when process is not registered
>> to have sync callback;
>>        8  PASSED   To verify sync api when there is no active replica;
>>        9  PASSED   To verify sync api when there are no sections in the
> ckpt;
>>       10  PASSED   To verify sync api when service is not initialized;
>>       11  PASSED   To verify sync async api when service is not
> initialized;
>>       12  PASSED   To verify sync api when service is finalized;
>>       13  PASSED   To verify sync async api when service is finalized;
>>       14  FAILED   To verify sync api with NULL handle (expected
>> SA_AIS_NOT_VALID, got SA_AIS_ERR_LIBRARY);
>>
>> Suite 20: CKPT API saCkptSectionOverwrite()
>>        1  PASSED   To verify that overwrite writes into a section other
>> than default section;
>>        2  PASSED   To verify that overwrite writes into a default section;
>>        3  PASSED   To verify overwrite with dataSize > maxSectionSize;
>>        4  FAILED   To verify overwrite in ACTIVE_REPLICA ckpt (expected
>> SA_AIS_NOT_VALID, got SA_AIS_ERR_LIBRARY);
>>        5  PASSED   To verify overwrite with an arbitrary handle;
>>        6  FAILED   To verify overwrite with already finalized handle
>> (expected SA_AIS_NOT_VALID, got SA_AIS_ERR_LIBRARY);
>>        7  PASSED   To verify overwrite when section doesnot exist;
>>        8  FAILED   To verify overwrite when ckpt is not opened for writing
>> (expected SA_AIS_NOT_VALID, got SA_AIS_ERR_LIBRARY);
>>        9  PASSED   To verify overwrite when NULL dataBuffer is provided;
>>       10  PASSED   To verify overwrite when NULL sectionId is provided;
>>
>> Suite 21: CKPT OpenCallBack
>>        1  PASSED   To verify opencallback when opening an nonexisting ckpt;
>>        2  PASSED   To verify openclbk when ckpt already exists but trying
>> to open with different creation attributes;
>>
>> Suite 22: CKPT SynchronizeCallback
>>        1  PASSED   To verify sync clbk when there is no active replica;
>>
>> Suite 23: CKPT Single node test cases
>>        1  PASSED   To verify that process can write into ckpt
> incrementally;
>>        2  PASSED   To verify status get after a section has been deleted;
>>        3  PASSED   To verify write and read with generated sectionId;
>>
>> Suite 24: CKPT Arrival Callback
>>        1  PASSED   To verify the functionality of arrival callback;
>>        2  PASSED   To verify the arrival callback when NULL clbk is passed;
>>
>> ======================================================================
>> ======
>> =========
>>
>>       Test Result:
>>          Total:  210
>>          Passed: 191
>>          Failed: 19
>>
>> / Anders Widell
>>
>> On 11/25/2015 07:31 AM, Nhat Pham wrote:
>>> Hi Anders,
>>>
>>> Would you have comment on this? Thanks.
>>>
>>> Best regards,
>>> Nhat Pham
>>>
>>> -----Original Message-----
>>> From: A V Mahesh [mailto:[email protected]]
>>> Sent: Tuesday, November 24, 2015 10:57 AM
>>> To: Nhat Pham <[email protected]>; [email protected]
>>> Cc: [email protected]
>>> Subject: Re: [devel] [PATCH 0 of 1] Review Request for ckpt: cpsv
>>> tests improvement [#1481] v3
>>>
>>> Hi,
>>>
>>> ACK from me .
>>>
>>> It looks patch covered the previous comments are addressed , now we
>>> can push this patch  ( not tested )
>>>
>>> subsequent  while usage if we find any small things missing we can
>>> fix them as Bug later , so please go a head and push it .
>>>
>>>
>>> -AVM
>>>
>>>
>>> On 11/23/2015 8:44 AM, Nhat Pham wrote:
>>>> Hi,
>>>>
>>>> Could you please have a look at this patch? Thanks.
>>>>
>>>> Best regards,
>>>> Nhat Pham
>>>>
>>>> -----Original Message-----
>>>> From: Nhat Pham [mailto:[email protected]]
>>>> Sent: Monday, November 16, 2015 11:20 AM
>>>> To: [email protected]; [email protected]
>>>> Cc: [email protected]
>>>> Subject: [devel] [PATCH 0 of 1] Review Request for ckpt: cpsv tests
>>>> improvement [#1481] v3
>>>>
>>>> Summary: ckpt: cpsv tests improvement Review request for Trac
>>>> Ticket(s): 1481 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                   y
>>>>      Other                   n
>>>>
>>>>
>>>> Comments (indicate scope for each "y" above):
>>>> ---------------------------------------------
>>>>
>>>> changeset f67165cd4720b24c4343b17692f1409cd936794f
>>>> Author:    Nhat Pham <[email protected]>
>>>> Date:      Mon, 16 Nov 2015 11:12:57 +0700
>>>>
>>>>    ckpt: cpsv tests improvement [#1481]
>>>>
>>>>    To make cpsv tests working again and independent from tetware.
>>>>
>>>>
>>>> Added Files:
>>>> ------------
>>>>      tests/cpsv/cpsvtest.c
>>>>      tests/cpsv/Makefile.am
>>>>      tests/cpsv/README
>>>>      tests/cpsv/test_cpa.c
>>>>      tests/cpsv/test_cpa_util.c
>>>>      tests/cpsv/test_cpsv_conf.h
>>>>      tests/cpsv/test_cpsv.h
>>>>
>>>>
>>>> Removed Files:
>>>> --------------
>>>>      tests/cpsv/inc/tet_cpsv_conf.h
>>>>      tests/cpsv/inc/tet_cpsv.h
>>>>      tests/cpsv/Makefile
>>>>      tests/cpsv/src/tet_cpa.c
>>>>      tests/cpsv/src/tet_cpa_test.c
>>>>      tests/cpsv/src/tet_cpd.c
>>>>      tests/cpsv/src/tet_cpnd.c
>>>>      tests/cpsv/src/tet_cpsv_util.c
>>>>      tests/cpsv/suites/cpsv_env.sh
>>>>      tests/cpsv/suites/reg_cpsv.cfg
>>>>      tests/cpsv/suites/reg_cpsv.dep
>>>>      tests/cpsv/suites/reg_cpsv.scen
>>>>
>>>>
>>>> Complete diffstat:
>>>> ------------------
>>>>      Makefile.am                         |     1 +
>>>>      configure.ac                        |     1 +
>>>>      opensaf.spec.in                     |     1 +
>>>>      osaf/libs/agents/saf/cpa/cpa_init.c |     1 -
>>>>      tests/cpsv/Makefile                 |    48 -
>>>>      tests/cpsv/Makefile.am              |    44 +
>>>>      tests/cpsv/README                   |    63 +
>>>>      tests/cpsv/cpsvtest.c               |    54 +
>>>>      tests/cpsv/inc/tet_cpsv.h           |   988
> -------------------------
>>>>      tests/cpsv/inc/tet_cpsv_conf.h      |   182 ----
>>>>      tests/cpsv/src/tet_cpa.c            |  2325
>>>> ------------------------------------------------------------
>>>>      tests/cpsv/src/tet_cpa_test.c       |  7179
>>>> --------------------------------------------------------------------
>>>> -
>>>> -------
>>>> --------------------------------------------------------------------
>>>> -
>>>> -------
>>>> ----------------------------------
>>>>      tests/cpsv/src/tet_cpd.c            |    98 --
>>>>      tests/cpsv/src/tet_cpnd.c           |   101 --
>>>>      tests/cpsv/src/tet_cpsv_util.c      |   659 -----------------
>>>>      tests/cpsv/suites/cpsv_env.sh       |    17 -
>>>>      tests/cpsv/suites/reg_cpsv.cfg      |     4 -
>>>>      tests/cpsv/suites/reg_cpsv.dep      |     6 -
>>>>      tests/cpsv/suites/reg_cpsv.scen     |     2 -
>>>>      tests/cpsv/test_cpa.c               |  7009
>>>>
> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
>>>> +++++++++++++++++++++++++++++
>>>>      tests/cpsv/test_cpa_util.c          |  2161
>>>> +++++++++++++++++++++++++++++++++++++++++++++++++++++++
>>>>      tests/cpsv/test_cpsv.h              |   967
> +++++++++++++++++++++++++
>>>>      tests/cpsv/test_cpsv_conf.h         |   183 ++++
>>>>      23 files changed, 10484 insertions(+), 11610 deletions(-)
>>>>
>>>>
>>>> Testing Commands:
>>>> -----------------
>>>> cpsv_test
>>>>
>>>>
>>>> Testing, Expected Results:
>>>> --------------------------
>>>> All test cases should pass.
>>>>
>>>>
>>>> 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.
>>>>
>>>>
>>>> --------------------------------------------------------------------
>>>> -
>>>> -------
>>>> --
>>>> Presto, an open source distributed SQL query engine for big data,
>>>> initially developed by Facebook, enables you to easily query your
>>>> data on Hadoop in a more interactive manner. Teradata is also now
>>>> providing full enterprise support for Presto. Download a free open
>>>> source
>> copy now.
>>>> http://pubads.g.doubleclick.net/gampad/clk?id=250295911&iu=/4140
>>>> _______________________________________________
>>>> Opensaf-devel mailing list
>>>> [email protected]
>>>> https://lists.sourceforge.net/lists/listinfo/opensaf-devel
>>>>
>>>>
>


------------------------------------------------------------------------------
Go from Idea to Many App Stores Faster with Intel(R) XDK
Give your users amazing mobile app experiences with Intel(R) XDK.
Use one codebase in this all-in-one HTML5 development environment.
Design, debug & build mobile apps & 2D/3D high-impact games for multiple OSs.
http://pubads.g.doubleclick.net/gampad/clk?id=254741551&iu=/4140
_______________________________________________
Opensaf-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensaf-devel

Reply via email to