-
?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 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      s&   t  Z d d  Z d   Z d   Z RS(   Ns
   tpc_finishc    s>   | |  _  | |  _ | |  _ 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  |  i i   } t t d   } |  i i	 | t
 | d |  i  |  i i   } t t d   } |  i i	 | t
 | d |  i  |  i   |  i d j o |  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    sR   |  i i i } | i d |  i i  } |  i i   | i	 |  |  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   t  Z d Z d   Z d   Z d   Z 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    s>   x. |  i D]# \ } } | i |  | i   q
 Wg  |  _ 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    s^   t    } |  i i |  |  i i   } |  i i | t t	 t
 d   d |  | | 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    sq   |  i   \ } } |  i i |  |  i   |  i i |  |  i i | d  |  i	   |  i
   |  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    s^   |  i   \ } } |  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    sQ   |  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    s)   |  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    s,   |  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    sy   |  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    s?   |  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    s<   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   			
.