diff options
author | unknown <magnus@neptunus.(none)> | 2004-04-14 10:53:21 +0200 |
---|---|---|
committer | unknown <magnus@neptunus.(none)> | 2004-04-14 10:53:21 +0200 |
commit | 6386c55cee50bad6a9979d1fab28e03bb8612ca7 (patch) | |
tree | 3fbbacf704304b69228474b9f03549ccd585a017 /ndb/test/include/HugoAsynchTransactions.hpp | |
parent | 0ba6cb48d84f1ff951d09871a96be6cdef3f2c3c (diff) | |
download | mariadb-git-6386c55cee50bad6a9979d1fab28e03bb8612ca7.tar.gz |
Initial revision of NDB Cluster files
BitKeeper/etc/logging_ok:
Logging to logging@openlogging.org accepted
Diffstat (limited to 'ndb/test/include/HugoAsynchTransactions.hpp')
-rw-r--r-- | ndb/test/include/HugoAsynchTransactions.hpp | 75 |
1 files changed, 75 insertions, 0 deletions
diff --git a/ndb/test/include/HugoAsynchTransactions.hpp b/ndb/test/include/HugoAsynchTransactions.hpp new file mode 100644 index 00000000000..d7e6e8fc187 --- /dev/null +++ b/ndb/test/include/HugoAsynchTransactions.hpp @@ -0,0 +1,75 @@ +/* Copyright (C) 2003 MySQL AB + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ + +#ifndef HUGO_ASYNCH_TRANSACTIONS_HPP +#define HUGO_ASYNCH_TRANSACTIONS_HPP + + +#include <NDBT.hpp> +#include <HugoCalculator.hpp> +#include <HugoTransactions.hpp> + +class HugoAsynchTransactions : private HugoTransactions { +public: + HugoAsynchTransactions(const NdbDictionary::Table&); + ~HugoAsynchTransactions(); + int loadTableAsynch(Ndb*, + int records = 0, + int batch = 1, + int trans = 1, + int operations = 1); + int pkReadRecordsAsynch(Ndb*, + int records = 0, + int batch= 1, + int trans = 1, + int operations = 1); + int pkUpdateRecordsAsynch(Ndb*, + int records = 0, + int batch= 1, + int trans = 1, + int operations = 1); + int pkDelRecordsAsynch(Ndb*, + int records = 0, + int batch = 1, + int trans = 1, + int operations = 1); + void transactionCompleted(); + + long getTransactionsCompleted(); + +private: + enum NDB_OPERATION {NO_INSERT, NO_UPDATE, NO_READ, NO_DELETE}; + + void allocTransactions(int trans); + void deallocTransactions(); + + int executeAsynchOperation(Ndb*, + int records, + int batch, + int trans, + int operations, + NDB_OPERATION theOperation, + ExecType theType = Commit); + + long transactionsCompleted; + int numTransactions; + NdbConnection** transactions; +}; + + + +#endif + |