-
?c       s     d  Z    d k Z  d k Z  d k l Z  d k l Z  d k l Z l	 Z	  d k
 Z  d k l Z  d k l Z  d d Z  d	 f  d
     YZ ! d e f d     YZ O d f  d     YZ d S(   s%   Tests of the distributed commit lock.N(   s   Transaction(   s	   TimeStamp(   s   zodb_pickles   MinPO(   s   ClientDisconnected(   s
   TestThreads    i   s   DummyDBc      s    t  Z  d   Z RS(   Nc    s
     d  S(   N(    (   s   selfs   argss   kwargs(    (    sA   /usr/pkg/lib/python2.2/site-packages/ZEO/tests/CommitLockTests.pys
   invalidate s   (   s   __name__s
   __module__s
   invalidate(    (    (    sA   /usr/pkg/lib/python2.2/site-packages/ZEO/tests/CommitLockTests.pys   DummyDB s   	s   WorkerThreadc      s2   ! t  Z & d d  Z - d   Z > d   Z RS(   Ns
   tpc_finishc    sP   & ' | |  _  ( | |  _ ) | |  _ * t i   |  _ + t i |  |  d  S(   N(
   s   storages   selfs   transs   methods	   threadings   Events   readys
   TestThreads   __init__s   testcase(   s   selfs   testcases   storages   transs   method(    (    sA   /usr/pkg/lib/python2.2/site-packages/ZEO/tests/CommitLockTests.pys   __init__& s
   c    s"  - . y / |  i i |  i  0 |  i i   } 1 t t d   } 2 |  i i	 | t
 | d |  i  3 |  i i   } 4 t t d   } 5 |  i i	 | t
 | d |  i  6 |  i   7 |  i d j o 8 |  i i |  i  n : |  i i |  i  Wn ; t j
 o
 < n Xd  S(   Ns   cs    s
   tpc_finish(   s   selfs   storages	   tpc_begins   transs   new_oids   oids   zodb_pickles   MinPOs   ps   stores   ZEROs   myvotes   methods
   tpc_finishs	   tpc_aborts   ClientDisconnected(   s   selfs   ps   oid(    (    sA   /usr/pkg/lib/python2.2/site-packages/ZEO/tests/CommitLockTests.pys   testrun- s   ""c    sd   > I |  i i i } J | i d |  i i  } K |  i i   L | i	 |  M |  i i
   d  S(   Ns   vote(   s   selfs   storages   _servers   rpcs   _deferred_calls   _serials   msgids   readys   sets   _deferred_waits   _check_serials(   s   selfs   msgids   rpc(    (    sA   /usr/pkg/lib/python2.2/site-packages/ZEO/tests/CommitLockTests.pys   myvote> s
   (   s   __name__s
   __module__s   __init__s   testruns   myvote(    (    (    sA   /usr/pkg/lib/python2.2/site-packages/ZEO/tests/CommitLockTests.pys   WorkerThread! s   	s   CommitLockTestsc      s   O t  Z Q d Z ] d   Z c d   Z j d   Z x d   Z  d   Z  d   Z  d   Z	  d	   Z
  d
   Z  d   Z  d   Z  d   Z  d   Z  d   Z  d   Z RS(   Ni   c    sP   ] ^ x7 |  i D^ ]) \ } } _ | i |  ` | i   q Wa g  |  _ d  S(   N(   s   selfs	   _storagess   stores   transs	   tpc_aborts   close(   s   selfs   transs   store(    (    sA   /usr/pkg/lib/python2.2/site-packages/ZEO/tests/CommitLockTests.pys   _cleanup] s
    c    sp   c d t    } e |  i i |  f |  i i   } g |  i i | t t	 t
 d   d |  h | | f Sd  S(   Ni   s    (   s   Transactions   txns   selfs   _storages	   tpc_begins   new_oids   oids   stores   ZEROs   zodb_pickles   MinPO(   s   selfs   txns   oid(    (    sA   /usr/pkg/lib/python2.2/site-packages/ZEO/tests/CommitLockTests.pys
   _start_txnc s
   +c    s   j k |  i   \ } } l |  i i |  n |  i   p |  i i |  q |  i i | d  s |  i	   u |  i
   v |  i   d  S(   Ns    (   s   selfs
   _start_txns   oids   txns   _storages   tpc_votes   _begin_threadss
   tpc_finishs   loads   _finish_threadss   _dostores   _cleanup(   s   selfs   txns   oid(    (    sA   /usr/pkg/lib/python2.2/site-packages/ZEO/tests/CommitLockTests.pys   checkCommitLockVoteFinishj s   c    sv   x y |  i   \ } } z |  i i |  | |  i   ~ |  i i |   |  i    |  i	    |  i
   d  S(   N(   s   selfs
   _start_txns   oids   txns   _storages   tpc_votes   _begin_threadss	   tpc_aborts   _finish_threadss   _dostores   _cleanup(   s   selfs   txns   oid(    (    sA   /usr/pkg/lib/python2.2/site-packages/ZEO/tests/CommitLockTests.pys   checkCommitLockVoteAbortx s   c    sf     |  i   \ } }  |  i i |   |  i    |  i i    |  i    |  i	   d  S(   N(
   s   selfs
   _start_txns   oids   txns   _storages   tpc_votes   _begin_threadss   closes   _finish_threadss   _cleanup(   s   selfs   txns   oid(    (    sA   /usr/pkg/lib/python2.2/site-packages/ZEO/tests/CommitLockTests.pys   checkCommitLockVoteClose s   c    s5     |  i    |  i i   }  | d d Sd  S(   Ni    s   id(   s   selfs   _dostores   _storages   undoInfos   L(   s   selfs   L(    (    sA   /usr/pkg/lib/python2.2/site-packages/ZEO/tests/CommitLockTests.pys   _get_trans_id s   c    s8     |  i i i }  | i d |  |  i i  Sd  S(   Ns   transactionalUndo(   s   selfs   _storages   _servers   rpcs   _deferred_calls   trans_ids   _serial(   s   selfs   trans_ids   rpc(    (    sA   /usr/pkg/lib/python2.2/site-packages/ZEO/tests/CommitLockTests.pys   _begin_undo s   c    s      |  i i i i |  Sd  S(   N(   s   selfs   _storages   _servers   rpcs   _deferred_waits   msgid(   s   selfs   msgid(    (    sA   /usr/pkg/lib/python2.2/site-packages/ZEO/tests/CommitLockTests.pys   _finish_undo s   c    s     |  i   }  |  i   \ } }  |  i |  }  |  i    |  i	 |   |  i
 i |   |  i
 i |   |  i
 i | d   |  i    |  i    |  i   d  S(   Ns    (   s   selfs   _get_trans_ids   trans_ids
   _start_txns   oids   txns   _begin_undos   msgids   _begin_threadss   _finish_undos   _storages   tpc_votes
   tpc_finishs   loads   _finish_threadss   _dostores   _cleanup(   s   selfs   txns   oids   trans_ids   msgid(    (    sA   /usr/pkg/lib/python2.2/site-packages/ZEO/tests/CommitLockTests.pys   checkCommitLockUndoFinish s   c    s     |  i   }  |  i   \ } }  |  i |  }  |  i    |  i	 |   |  i
 i |   |  i
 i |   |  i    |  i    |  i   d  S(   N(   s   selfs   _get_trans_ids   trans_ids
   _start_txns   oids   txns   _begin_undos   msgids   _begin_threadss   _finish_undos   _storages   tpc_votes	   tpc_aborts   _finish_threadss   _dostores   _cleanup(   s   selfs   txns   oids   trans_ids   msgid(    (    sA   /usr/pkg/lib/python2.2/site-packages/ZEO/tests/CommitLockTests.pys   checkCommitLockUndoAbort s   c    s     |  i   }  |  i   \ } }  |  i |  }  |  i    |  i	 |   |  i
 i |   |  i
 i    |  i    |  i   d  S(   N(   s   selfs   _get_trans_ids   trans_ids
   _start_txns   oids   txns   _begin_undos   msgids   _begin_threadss   _finish_undos   _storages   tpc_votes   closes   _finish_threadss   _cleanup(   s   selfs   txns   oids   trans_ids   msgid(    (    sA   /usr/pkg/lib/python2.2/site-packages/ZEO/tests/CommitLockTests.pys   checkCommitLockUndoClose s   c    s     g  |  _  g  |  _  x t |  i  D ] }  |  i   }  t   }  |  i
   }  t |  | |  }  |  i i |   | i    | i i    | d j o  | i   n  |  i i | | f  q. Wd  S(   Ni    (   s   selfs	   _storagess   _threadss   ranges   NUM_CLIENTSs   is   _duplicate_clients   storages   Transactions   txns   _get_timestamps   tids   WorkerThreads   ts   appends   starts   readys   waits   close(   s   selfs   txns   ts   is   tids   storage(    (    sA   /usr/pkg/lib/python2.2/site-packages/ZEO/tests/CommitLockTests.pys   _begin_threads s    	c    s.     x! |  i D ] }  | i   q Wd  S(   N(   s   selfs   _threadss   ts   cleanup(   s   selfs   t(    (    sA   /usr/pkg/lib/python2.2/site-packages/ZEO/tests/CommitLockTests.pys   _finish_threads s    	c    sQ      |  i i }  t i i | d d }  | i t   t	   | Sd S(   s.   Open another ClientStorage to the same server.s   waiti   N(
   s   selfs   _storages   _addrs   addrs   ZEOs   ClientStorages   news
   registerDBs   DummyDBs   None(   s   selfs   addrs   new(    (    sA   /usr/pkg/lib/python2.2/site-packages/ZEO/tests/CommitLockTests.pys   _duplicate_client s
   c    sH     t  i    }  t t t  i |  d  | d f  }  | Sd  S(   Ni   i<   (   s   times   ts   applys	   TimeStamps   gmtime(   s   selfs   t(    (    sA   /usr/pkg/lib/python2.2/site-packages/ZEO/tests/CommitLockTests.pys   _get_timestamp s   *(   s   __name__s
   __module__s   NUM_CLIENTSs   _cleanups
   _start_txns   checkCommitLockVoteFinishs   checkCommitLockVoteAborts   checkCommitLockVoteCloses   _get_trans_ids   _begin_undos   _finish_undos   checkCommitLockUndoFinishs   checkCommitLockUndoAborts   checkCommitLockUndoCloses   _begin_threadss   _finish_threadss   _duplicate_clients   _get_timestamp(    (    (    sA   /usr/pkg/lib/python2.2/site-packages/ZEO/tests/CommitLockTests.pys   CommitLockTestsO s    		(   s   __doc__s	   threadings   times   ZODB.Transactions   Transactions   ZODB.TimeStamps	   TimeStamps   ZODB.tests.StorageTestBases   zodb_pickles   MinPOs   ZEO.ClientStorages   ZEOs   ZEO.Exceptionss   ClientDisconnecteds   ZEO.tests.TestThreads
   TestThreads   ZEROs   DummyDBs   WorkerThreads   CommitLockTests(   s   Transactions   CommitLockTestss   ClientDisconnecteds   zodb_pickles	   TimeStamps   ZEOs   WorkerThreads	   threadings   ZEROs   MinPOs   times   DummyDBs
   TestThread(    (    sA   /usr/pkg/lib/python2.2/site-packages/ZEO/tests/CommitLockTests.pys   ? s   .