Ejemplo n.º 1
0
 internal IBTreeRootNode MakeWrittableTransaction(InMemoryKeyValueDBTransaction keyValueDBTransaction, IBTreeRootNode btreeRoot)
 {
     lock (_writeLock)
     {
         if (_writingTransaction != null) throw new BTDBTransactionRetryException("Another writting transaction already running");
         if (LastCommited != btreeRoot) throw new BTDBTransactionRetryException("Another writting transaction already finished");
         _writingTransaction = keyValueDBTransaction;
         return btreeRoot.NewTransactionRoot();
     }
 }
Ejemplo n.º 2
0
 internal IBTreeRootNode MakeWrittableTransaction(InMemoryKeyValueDBTransaction keyValueDBTransaction, IBTreeRootNode btreeRoot)
 {
     lock (_writeLock)
     {
         if (_writingTransaction != null)
         {
             throw new BTDBTransactionRetryException("Another writting transaction already running");
         }
         if (LastCommited != btreeRoot)
         {
             throw new BTDBTransactionRetryException("Another writting transaction already finished");
         }
         _writingTransaction = keyValueDBTransaction;
         return(btreeRoot.NewTransactionRoot());
     }
 }