summaryrefslogtreecommitdiff
path: root/sql
diff options
context:
space:
mode:
authorMarko Mäkelä <marko.makela@oracle.com>2011-06-09 13:31:15 +0300
committerMarko Mäkelä <marko.makela@oracle.com>2011-06-09 13:31:15 +0300
commit6348b7375a506bfe340a390ed6ac832d1e224333 (patch)
tree3983098bdc89c69d7d278d47685025ef0ba2f089 /sql
parent768b9a0ef68b9cf1ff29e46a5a9e0e295da8b8d8 (diff)
downloadmariadb-git-6348b7375a506bfe340a390ed6ac832d1e224333.tar.gz
BLOB instrumentation for Bug#12612184 Race condition in row_upd_clust_rec()
If UNIV_DEBUG or UNIV_BLOB_LIGHT_DEBUG is enabled, add !rec_offs_any_null_extern() assertions, ensuring that records do not contain null pointers to externally stored columns in inappropriate places. btr_cur_optimistic_update(): Assert !rec_offs_any_null_extern(). Incomplete records must never be updated or deleted. This assertion will cover also the pessimistic route. row_build(): Assert !rec_offs_any_null_extern(). Search tuples must never be built from incomplete index entries. row_rec_to_index_entry(): Assert !rec_offs_any_null_extern() unless ROW_COPY_DATA is requested. ROW_COPY_DATA is used for multi-versioning, and therefore it might be valid to copy the most recent (uncommitted) version while it contains a null pointer to off-page columns. row_vers_build_for_consistent_read(), row_vers_build_for_semi_consistent_read(): Assert !rec_offs_any_null_extern() on all versions except the most recent one. trx_undo_prev_version_build(): Assert !rec_offs_any_null_extern() on the previous version. rb:682 approved by Sunny Bains
Diffstat (limited to 'sql')
0 files changed, 0 insertions, 0 deletions