From 793b1fe3fb9740e3c103d39f897907914183466c Mon Sep 17 00:00:00 2001 From: marko Date: Mon, 21 Jan 2008 09:51:40 +0000 Subject: [PATCH] branches/zip: row_sel_get_clust_rec_for_mysql(): Similar to the function row_sel_get_clust_rec(), return if a previous version of the clustered index record does not exist in the read view. This bug was made and found by Heikki. It was harmless as long as the clustered index record contained a long enough local prefix of externally stored columns, to allow secondary index records to be built without fetching BLOBs. InnoDB transactions should never look at a clustered index record whose transaction identifier (DB_TRX_ID) is not visible in the transaction's read view. --- row/row0sel.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/row/row0sel.c b/row/row0sel.c index c236260e531..db9ab87d92b 100644 --- a/row/row0sel.c +++ b/row/row0sel.c @@ -2994,7 +2994,7 @@ row_sel_get_clust_rec_for_mysql( clust_rec, offsets, offset_heap, &old_vers, mtr); - if (err != DB_SUCCESS) { + if (err != DB_SUCCESS || old_vers == NULL) { goto err_exit; }