def abort(self): """ Aborts the transaction. @return: None """ _db.abortTransaction(self.txn)
def retry(self): """ Called by the application server whenever a transaction commit fails. @return: None @raise porcupine.exceptions.DBTransactionIncomplete: if the maximum number of transaction retries has been reached, as defined in the C{porcupine.ini} file. """ while self._retries < _db.db_handle.trans_max_retries: _db.abortTransaction(self.txn) self._retries += 1 time.sleep(0.05) self.txn = _db.createTransaction() try: tmpActions, self.actions = copy.copy(self.actions), [] dummy = [func(*args) for func,args in tmpActions] return except exceptions.DBTransactionIncomplete: pass else: raise exceptions.DBTransactionIncomplete
def abort(self): _db.abortTransaction(self.txn)