Bug#14400 - Query joins wrong rows from table which is subject of
"concurrent insert" After merge fix.
This commit is contained in:
parent
203d099962
commit
addff97f31
@ -103,7 +103,7 @@ int mi_rkey(MI_INFO *info, byte *buf, int inx, const byte *key, uint key_len,
|
|||||||
{
|
{
|
||||||
do
|
do
|
||||||
{
|
{
|
||||||
uint not_used;
|
uint not_used[2];
|
||||||
/*
|
/*
|
||||||
Skip rows that are inserted by other threads since we got a lock
|
Skip rows that are inserted by other threads since we got a lock
|
||||||
Note that this can only happen if we are not searching after an
|
Note that this can only happen if we are not searching after an
|
||||||
@ -122,7 +122,7 @@ int mi_rkey(MI_INFO *info, byte *buf, int inx, const byte *key, uint key_len,
|
|||||||
*/
|
*/
|
||||||
if (search_flag == HA_READ_KEY_EXACT &&
|
if (search_flag == HA_READ_KEY_EXACT &&
|
||||||
ha_key_cmp(keyinfo->seg, key_buff, info->lastkey, use_key_length,
|
ha_key_cmp(keyinfo->seg, key_buff, info->lastkey, use_key_length,
|
||||||
SEARCH_FIND, ¬_used))
|
SEARCH_FIND, not_used))
|
||||||
{
|
{
|
||||||
my_errno= HA_ERR_KEY_NOT_FOUND;
|
my_errno= HA_ERR_KEY_NOT_FOUND;
|
||||||
info->lastpos= HA_OFFSET_ERROR;
|
info->lastpos= HA_OFFSET_ERROR;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user