mariadb/trx
marko 938774502a branches/zip: When logging updates or deletes in the undo log, store long
enough prefixes of externally stored columns, so that purge will not have
to dereference any BLOB pointers, which may be invalid.  This will not be
necessary for logging inserts, because inserts are no-ops in purge, and
the record will remain locked during transaction rollback.

TODO: in dict_build_table_def_step() or dict_build_index_def_step(),
prevent the creation of tables with too many columns for which a
prefix index is defined.  This is because there is a size limit of undo
log records, and for each prefix-indexed column, the log must store
REC_MAX_INDEX_COL_LEN + BTR_EXTERN_FIELD_REF_SIZE bytes.

trx_undo_page_report_insert(): Assert that the index is clustered.

trx_undo_page_fetch_ext(): New function, for fetching the BLOB prefix
in trx_undo_page_report_modify().

trx_undo_page_report_modify(): Write long enough prefixes of the externally
stored columns to the undo log.

trx_undo_rec_get_partial_row(): Remove the parameter "ext".  Assert that
the undo log contains long enough prefixes of the externally stored columns.

purge_node_t: Remove the field "ext".
2007-12-05 14:10:15 +00:00
..
trx0i_s.c branches/zip: 2007-11-29 13:47:09 +00:00
trx0purge.c branches/zip: Use ut_dulint_zero and ut_dulint_is_zero whenever possible. 2007-05-18 11:01:58 +00:00
trx0rec.c branches/zip: When logging updates or deletes in the undo log, store long 2007-12-05 14:10:15 +00:00
trx0roll.c branches/zip: trx_rollback_or_clean_all_recovered(): Acquire the 2007-11-02 12:53:06 +00:00
trx0rseg.c branches/zip: Make mutex_own() work with UNIV_DEBUG, without UNIV_SYNC_DEBUG. 2007-01-18 18:29:12 +00:00
trx0sys.c branches/zip: Merge 1664:1783 from trunk. 2007-08-30 09:21:25 +00:00
trx0trx.c branches/zip: 2007-11-28 07:07:23 +00:00
trx0undo.c branches/zip: Introduce two new dictionary operation modes for transactions. 2007-10-19 10:52:25 +00:00