mirror of
https://github.com/MariaDB/server.git
synced 2025-01-19 21:42:35 +01:00
7271bcb4ec
columns When the server crashes after a record stub has been inserted and before all its off-page columns have been written, the record will contain incomplete off-page columns after crash recovery. Such records may only be accessed at the READ UNCOMMITTED isolation level or when rolling back a recovered transaction in recv_recovery_rollback_active(). Skip these records at the READ UNCOMMITTED isolation level. TODO: Add assertions for checking the above assumptions hold when an incomplete BLOB is encountered. btr_rec_copy_externally_stored_field(): Return NULL if the field is incomplete. row_prebuilt_t::templ_contains_blob: Clarify what "BLOB" means in this context. Hint: MySQL BLOBs are not the same as InnoDB BLOBs. row_sel_store_mysql_rec(): Return FALSE if not all columns could be retrieved. Previously this function always returned TRUE. Assert that the record is not delete-marked. row_sel_push_cache_row_for_mysql(): Return FALSE if not all columns could be retrieved. row_search_for_mysql(): Skip records containing incomplete off-page columns. Assert that the transaction isolation level is READ UNCOMMITTED. rb://380 approved by Jimmy Yang |
||
---|---|---|
.. | ||
btr | ||
buf | ||
data | ||
dict | ||
dyn | ||
eval | ||
fil | ||
fsp | ||
fut | ||
ha | ||
handler | ||
ibuf | ||
include | ||
lock | ||
log | ||
mach | ||
mem | ||
mtr | ||
mysql-test/patches | ||
os | ||
page | ||
pars | ||
que | ||
read | ||
rem | ||
row | ||
scripts | ||
srv | ||
sync | ||
thr | ||
trx | ||
usr | ||
ut | ||
ChangeLog | ||
CMakeLists.txt | ||
compile-innodb | ||
compile-innodb-debug | ||
COPYING | ||
COPYING.Google | ||
COPYING.Percona | ||
COPYING.Sun_Microsystems | ||
Doxyfile | ||
ha_innodb.def | ||
Makefile.am | ||
plug.in | ||
revert_gen.sh | ||
setup.sh |