/// <summary> /// InitDb /// </summary> private void InitDb() { //trying to check and create folder try { if (Configuration.Storage == DBreezeConfiguration.eStorage.DISK) { DirectoryInfo di = new DirectoryInfo(MainFolder); if (!di.Exists) di.Create(); } //trying to open schema file DBreezeSchema = new Scheme(this); //Initializing Transactions Coordinator _transactionsCoordinator = new TransactionsCoordinator(this); //Initializing transactions Journal, may be later move journal into transactionsCoordinator //We must create journal after Schema, for getting path to rollback files _transactionsJournal = new TransactionsJournal(this); //Initializes transaction locker, who can help block tables of writing and reading threads _transactionTablesLocker = new TransactionTablesLocker(); //Initializing DeferredIndexer = new TextDeferredIndexer(this); } catch (Exception ex) { DBisOperable = false; DBisOperableReason = "InitDb"; throw DBreezeException.Throw(DBreezeException.eDBreezeExceptions.CREATE_DB_FOLDER_FAILED, ex); } }
//public TransactionUnit(TransactionsCoordinator transactionsCoordinator) //{ // this._transactionsCoordinator = transactionsCoordinator; // this._transaction = new Transaction(this); //} public TransactionUnit(int transactionType, TransactionsCoordinator transactionsCoordinator, eTransactionTablesLockTypes lockType, params string[] tables) { this._transactionsCoordinator = transactionsCoordinator; this._transaction = new Transaction(transactionType, this, lockType, tables); }
//public TransactionUnit(TransactionsCoordinator transactionsCoordinator) //{ // this._transactionsCoordinator = transactionsCoordinator; // this._transaction = new Transaction(this); //} public TransactionUnit(int transactionType, TransactionsCoordinator transactionsCoordinator, eTransactionTablesLockTypes lockType, params string[] tables) { this._transactionsCoordinator = transactionsCoordinator; this._transaction = new Transaction(transactionType, this, lockType, tables); }