~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to drizzled/transaction_services.h

  • Committer: Lee Bieber
  • Date: 2010-10-27 01:49:45 UTC
  • mfrom: (1861.6.8 bug660779)
  • mto: This revision was merged to the branch mainline in revision 1883.
  • Revision ID: kalebral@gmail.com-20101027014945-katd6fnrwxr6vo9i
Merge Shrews - fix bug 660779: Transaction log retaining partial information from an aborted transaction

Show diffs side-by-side

added added

removed removed

Lines of Context:
260
260
   * @param use_update_record If true, uses the values from the update row instead
261
261
   */
262
262
  void deleteRecord(Session *in_session, Table *in_table, bool use_update_record= false);
 
263
 
 
264
  /**
 
265
   * Used to undo effects of a failed statement.
 
266
   *
 
267
   * An SQL statement, like an UPDATE, that affects multiple rows could
 
268
   * potentially fail mid-way through processing the rows. In such a case,
 
269
   * the successfully modified rows that preceeded the failing row would
 
270
   * have been added to the Statement message. This method is used for
 
271
   * rolling back that change.
 
272
   *
 
273
   * @note
 
274
   * This particular failure is seen on column constraint violations
 
275
   * during a multi-row UPDATE and a multi-row INSERT..SELECT.
 
276
   *
 
277
   * @param in_session Pointer to the Session containing the Statement
 
278
   * @param count The number of records to remove from Statement.
 
279
   *
 
280
   * @retval true Successfully removed 'count' records
 
281
   * @retval false Failure
 
282
   */
 
283
  bool removeStatementRecords(Session *in_session, uint32_t count);
 
284
 
263
285
  /**
264
286
   * Creates a CreateSchema Statement GPB message and adds it
265
287
   * to the Session's active Transaction GPB message for pushing