From 25408c8e48e8dd02e50f15eee1383af41cd92a5f Mon Sep 17 00:00:00 2001
From: marko <>
Date: Mon, 13 Oct 2008 18:29:12 +0000
Subject: [PATCH] branches/zip: page_cur_delete_rec(): Remove the bogus
 page_zip_validate_low() assertion that was added in r2781 and explain why it
 was bogus.

---
 page/page0cur.c | 14 +++++++++-----
 1 file changed, 9 insertions(+), 5 deletions(-)

diff --git a/page/page0cur.c b/page/page0cur.c
index f4bc34c07cc..66e02b1529e 100644
--- a/page/page0cur.c
+++ b/page/page0cur.c
@@ -1766,11 +1766,15 @@ page_cur_delete_rec(
 
 	page = page_cur_get_page(cursor);
 	page_zip = page_cur_get_page_zip(cursor);
-#ifdef UNIV_ZIP_DEBUG
-	/* Strict page_zip_validate() may fail here when
-	btr_cur_pessimistic_delete() invokes btr_set_min_rec_mark(). */
-	ut_a(!page_zip || page_zip_validate_low(page_zip, page, TRUE));
-#endif /* UNIV_ZIP_DEBUG */
+
+	/* page_zip_validate() will fail here when
+	btr_cur_pessimistic_delete() invokes btr_set_min_rec_mark().
+	Then, both "page_zip" and "page" would have the min-rec-mark
+	set on the smallest user record, but "page" would additionally
+	have it set on the smallest-but-one record.  Because sloppy
+	page_zip_validate_low() only ignores min-rec-flag differences
+	in the smallest user record, it cannot be used here either. */
+
 	current_rec = cursor->rec;
 	ut_ad(rec_offs_validate(current_rec, index, offsets));
 	ut_ad(!!page_is_comp(page) == dict_table_is_comp(index->table));