mariadb/storage/innobase/row
Vicențiu Ciorbaru b87873b221 Merge branch 'merge-innodb-5.6' into bb-10.0-vicentiu
This merge reverts commit 6ca4f693c1ce472e2b1bf7392607c2d1124b4293
from current 5.6.36 innodb.

Bug #23481444	OPTIMISER CALL ROW_SEARCH_MVCC() AND READ THE
                       INDEX APPLIED BY UNCOMMITTED ROW
Problem:
========
row_search_for_mysql() does whole table traversal for range query
even though the end range is passed. Whole table traversal happens
when the record is not with in transaction read view.

Solution:
=========

Convert the innodb last record of page to mysql format and compare
with end range if the traversal of row_search_mvcc() exceeds 100,
no ICP involved. If it is out of range then InnoDB can avoid the
whole table traversal. Need to refactor the code little bit to
make it compile.

Reviewed-by: Jimmy Yang <jimmy.yang@oracle.com>
Reviewed-by: Knut Hatlen <knut.hatlen@oracle.com>
Reviewed-by: Dmitry Shulga <dmitry.shulga@oracle.com>
RB: 14660
2017-05-17 14:53:28 +03:00
..
row0ext.cc move to storage/innobase 2015-05-04 19:17:21 +02:00
row0ftsort.cc Fix some InnoDB type mismatch 2017-04-21 17:39:12 +03:00
row0import.cc MDEV-12488 Remove type mismatch in InnoDB printf-like calls 2017-04-21 12:06:29 +03:00
row0ins.cc Merge branch 'merge-innodb-5.6' into 10.0 2016-06-21 14:58:19 +02:00
row0log.cc Merge branch 'merge-innodb-5.6' into bb-10.0-vicentiu 2017-05-17 14:53:28 +03:00
row0merge.cc Merge branch 'merge-innodb-5.6' into bb-10.0-vicentiu 2017-05-17 14:53:28 +03:00
row0mysql.cc MDEV-12674 Innodb_row_lock_current_waits has overflow 2017-05-12 12:24:53 +03:00
row0purge.cc 5.6.31 2016-06-21 14:21:03 +02:00
row0quiesce.cc 5.6.31 2016-06-21 14:21:03 +02:00
row0row.cc 5.6.31 2016-06-21 14:21:03 +02:00
row0sel.cc Merge branch 'merge-innodb-5.6' into bb-10.0-vicentiu 2017-05-17 14:53:28 +03:00
row0uins.cc 5.6.31 2016-06-21 14:21:03 +02:00
row0umod.cc Merge branch 'merge-innodb-5.6' into 10.0 2016-06-21 14:58:19 +02:00
row0undo.cc 5.6.31 2016-06-21 14:21:03 +02:00
row0upd.cc Merge branch '5.5' into 10.0 2017-03-03 01:37:54 +02:00
row0vers.cc move to storage/innobase 2015-05-04 19:17:21 +02:00