185
185
* Implementing classes should override these to provide savepoint
188
virtual int savepoint_set_hook(Session *, NamedSavepoint &) { return 0; }
190
virtual int savepoint_rollback_hook(Session *, NamedSavepoint &) { return 0; }
192
virtual int savepoint_release_hook(Session *, NamedSavepoint &) { return 0; }
188
virtual int doSetSavepoint(Session *, NamedSavepoint &) { return 0; }
190
virtual int doRollbackToSavepoint(Session *, NamedSavepoint &) { return 0; }
192
virtual int doReleaseSavepoint(Session *, NamedSavepoint &) { return 0; }
286
286
NOTE 'all' is also false in auto-commit mode where 'end of statement'
287
287
and 'real commit' mean the same event.
289
virtual int commit(Session *, bool)
294
virtual int rollback(Session *, bool)
300
The void * points to an uninitialized storage area of requested size
301
(see savepoint_offset description)
303
int savepoint_set(Session *session, NamedSavepoint &sp)
305
return savepoint_set_hook(session, sp);
309
The void * points to a storage area, that was earlier passed
310
to the savepoint_set call
312
int savepoint_rollback(Session *session, NamedSavepoint &sp)
314
return savepoint_rollback_hook(session, sp);
317
int savepoint_release(Session *session, NamedSavepoint &sp)
319
return savepoint_release_hook(session, sp);
289
virtual int commit(Session *, bool)
294
virtual int rollback(Session *, bool)
299
int setSavepoint(Session *session, NamedSavepoint &sp)
301
return doSetSavepoint(session, sp);
304
int rollbackToSavepoint(Session *session, NamedSavepoint &sp)
306
return doRollbackToSavepoint(session, sp);
309
int releaseSavepoint(Session *session, NamedSavepoint &sp)
311
return doReleaseSavepoint(session, sp);
322
314
virtual int prepare(Session *, bool) { return 0; }
323
315
virtual int recover(XID *, uint32_t) { return 0; }
324
virtual int commit_by_xid(XID *) { return 0; }
325
virtual int rollback_by_xid(XID *) { return 0; }
316
virtual int commitByXid(XID *) { return 0; }
317
virtual int rollbackByXid(XID *) { return 0; }
326
318
virtual Cursor *create(TableShare &, drizzled::memory::Root *)= 0;
328
320
virtual void drop_database(char*) { }