3802 Jorgen Loland 2012-08-28
Bug#14547952: DEBUG BUILD FAILS ASSERTION IN RECORDS_IN_RANGE()
ha_innobase::records_in_range(): Remove a debug assertion
that prohibits an open range (full table).
This assertion catches unnecessary calls to this method,
but such calls are not harming correctness.
modified:
storage/innobase/handler/ha_innodb.cc
3801 Marko Mäkelä 2012-08-21
Fix regression from Bug#12845774 OPTIMISTIC INSERT/UPDATE USES WRONG
HEURISTICS FOR COMPRESSED PAGE SIZE
The fix of Bug#12845774 was supposed to skip known-to-fail
btr_cur_optimistic_insert() calls. There was only one such call, in
btr_cur_pessimistic_update(). All other callers of
btr_cur_pessimistic_insert() would release and reacquire the B-tree
page latch before attempting the pessimistic insert. This would allow
other threads to restructure the B-tree, allowing (and requiring) the
insert to succeed as an optimistic (single-page) operation.
Failure to attempt an optimistic insert before a pessimistic one would
trigger an attempt to split an empty page.
rb:1234 approved by Sunny Bains
modified:
storage/innodb_plugin/ibuf/ibuf0ibuf.c
storage/innodb_plugin/row/row0ins.c
=== modified file 'storage/innobase/handler/ha_innodb.cc'
--- a/storage/innobase/handler/ha_innodb.cc 2012-06-29 11:25:57 +0000
+++ b/storage/innobase/handler/ha_innodb.cc 2012-08-28 12:51:01 +0000
@@ -6380,7 +6380,6 @@ ha_innobase::records_in_range(
void* heap2;
DBUG_ENTER("records_in_range");
- DBUG_ASSERT(min_key || max_key);
ut_a(prebuilt->trx == thd_to_trx(ha_thd()));
No bundle (reason: useless for push emails).| Thread |
|---|
| • bzr push into mysql-5.1 branch (jorgen.loland:3801 to 3802) Bug#14547952 | Jorgen Loland | 30 Aug |