19 #ifndef HUGO_OPERATIONS_HPP
20 #define HUGO_OPERATIONS_HPP
23 #include <HugoCalculator.hpp>
24 #include <UtilTransactions.hpp>
34 const char *keyData= 0, Uint32 keyLen= 0);
36 int closeTransaction(
Ndb*);
40 void setTransactionId(Uint64);
42 int pkInsertRecord(
Ndb*,
45 int updatesValue = 0);
47 int pkWriteRecord(
Ndb*,
50 int updatesValue = 0);
52 int pkWritePartialRecord(
Ndb*,
56 int pkReadRecord(
Ndb*,
62 int pkReadRandRecord(
Ndb*,
68 int pkReadRecordLockHandle(
Ndb*,
75 int pkUnlockRecord(
Ndb*,
78 int numRecords = ~(0),
81 int pkUpdateRecord(
Ndb*,
84 int updatesValue = 0);
86 int pkDeleteRecord(
Ndb*,
90 int pkRefreshRecord(
Ndb*,
93 int anyValueInfo = 0);
95 int execute_Commit(
Ndb*,
96 AbortOption ao = AbortOnError);
97 int execute_NoCommit(
Ndb*,
98 AbortOption ao = AbortOnError);
99 int execute_Rollback(
Ndb*);
101 int saveCopyOfRecord(
int numRecords = 1);
102 int compareRecordToCopy(
int numRecords = 1);
105 int getRecordGci(
int recordNum);
118 bool getPartIdForRow(
const NdbOperation* pOp,
int rowid, Uint32& partId);
122 int verifyUpdatesValue(
int updatesValue,
int _numRows = 0);
124 int indexReadRecords(
Ndb*,
const char * idxName,
int recordNo,
125 bool exclusive =
false,
128 int indexUpdateRecord(
Ndb*,
129 const char * idxName,
132 int updatesValue = 0);
145 int wait_async(
Ndb*,
int timeout = -1);
147 int releaseLockHandles(
Ndb*,
150 int numRecords = ~(0));
152 const NdbError& getNdbError()
const;
153 void setQuiet() { m_quiet =
true; }
155 typedef Uint32 (*AnyValueCallback)(
Ndb*,
NdbTransaction*,
int rowid,
int updVal);
157 void setAnyValueCallback(AnyValueCallback);
160 void allocRows(
int rows);
175 friend void HugoOperations_async_callback(
int,
NdbTransaction*,
void*);
177 Uint32 getAnyValueForRowUpd(
int row,
int update);
180 void setNdbError(
const NdbError& error);
183 AnyValueCallback avCallback;