×

Testing of lock managers in computing environments

  • US 10,061,777 B1
  • Filed: 02/01/2018
  • Issued: 08/28/2018
  • Est. Priority Date: 04/04/2017
  • Status: Active Grant
First Claim
Patent Images

1. A method for integrity testing, through a plurality of testing iterations each incorporating a lock phase followed by a verification phase, a lock manager configured for locking a set of files stored in a computing environment, the method comprising:

  • establishing, by the lock manager, a lock testing plan;

    assigning, for a first testing iteration of the plurality of testing iterations and based on the lock testing plan, responsibility for acquiring a first set of initial locks among a plurality of processes such that upon assignment each process of the plurality of processes is responsible for acquiring at least one initial lock on at least one portion of the set of files;

    acquiring, during a first lock phase of the first testing iteration and by the plurality of processes, the assigned first set of initial locks;

    assigning, for the first testing iteration and based on the lock testing plan, responsibility for attempting to acquire a first set of test locks among the plurality of processes such that upon assignment each process of the plurality of processes is responsible for attempting to acquire at least one test lock on at least one portion of the set of files that is currently locked by an initial lock of the assigned first set of initial locks that was acquired by another process of the plurality of processes during the first lock phase;

    attempting, during a first verification phase of the first testing iteration and by the plurality of processes, to acquire the assigned first set of test locks;

    comparing results of the attempted first set of test lock acquisitions to expected results of the attempted first set of test lock acquisitions;

    relinquishing, after the comparing results of the attempted first set of test lock acquisitions to expected results of the attempted first set of test lock acquisitions and by the plurality of processes, the assigned first set of initial locks;

    assigning, for a second testing iteration of the plurality of testing iterations that occurs after the verification phase of the testing iteration and based on the lock testing plan, responsibility for acquiring a second set of initial locks among the plurality of processes such that upon assignment each process of the plurality of processes is responsible for acquiring at least one initial lock on at least one portion of the set of files for which another process was responsible for acquiring an initial lock during the first lock phase of the first testing iteration;

    acquiring, during a second lock phase of the second testing iteration, after the relinquishing the assigned first set of initial locks, and by the plurality of processes, the assigned second set of initial locks;

    assigning, for the second testing iteration and based on the lock testing plan, responsibility for attempting to acquire a second set of test locks among the plurality of processes such that upon assignment each process of the plurality of processes is responsible for attempting to acquire at least one test lock on at least one portion of the set of files that is currently locked by an initial lock of the assigned second set of initial locks that was acquired by another process of the plurality of processes during the second lock phase and for which another process was responsible for acquiring a test lock of the first set of test locks during the first verification phase of the first testing iteration;

    attempting, during a second verification phase of the second testing iteration and by the plurality of processes, to acquire the assigned second set of test locks;

    comparing results of the attempted second set of test lock acquisitions to expected results of the attempted second set of test lock acquisitions; and

    evaluating, based on the comparing results of the attempted first set of test lock acquisitions to expected results of the attempted first set of test lock acquisitions and further based on the comparing results of the attempted second set of test lock acquisitions to expected results of the attempted second set of test lock acquisitions, the integrity of the lock manager.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×