summaryrefslogtreecommitdiff
path: root/myisam/mi_rnext_same.c
diff options
context:
space:
mode:
authorunknown <sergefp@mysql.com>2004-11-29 06:51:30 +0300
committerunknown <sergefp@mysql.com>2004-11-29 06:51:30 +0300
commit7ea16212077eb53bdc8161af1d132deae8f030ff (patch)
tree0212745a88314b9199da4949005a684b4e2167f3 /myisam/mi_rnext_same.c
parent1b898a22460a369b8ca21f573973a8a0518e85d4 (diff)
downloadmariadb-git-7ea16212077eb53bdc8161af1d132deae8f030ff.tar.gz
Fix and testcase for BUG#6699
myisam/mi_rnext_same.c: Fix for BUG#6699: MERGE handler now uses mi_rnext_same() with priority queue, so skip record unpacking if buf==NULL myisammrg/myrg_rnext_same.c: Fix for BUG#6699: make myrg_rnext_same sort always sort records and return them in key order. mysql-test/r/merge.result: Test for BUG#6699 mysql-test/t/merge.test: Test for BUG#6699
Diffstat (limited to 'myisam/mi_rnext_same.c')
-rw-r--r--myisam/mi_rnext_same.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/myisam/mi_rnext_same.c b/myisam/mi_rnext_same.c
index 1342718d6aa..a50c578e081 100644
--- a/myisam/mi_rnext_same.c
+++ b/myisam/mi_rnext_same.c
@@ -88,6 +88,10 @@ int mi_rnext_same(MI_INFO *info, byte *buf)
if (my_errno == HA_ERR_KEY_NOT_FOUND)
my_errno=HA_ERR_END_OF_FILE;
}
+ else if (!buf)
+ {
+ DBUG_RETURN(info->lastpos==HA_OFFSET_ERROR ? my_errno : 0);
+ }
else if (!(*info->read_record)(info,info->lastpos,buf))
{
info->update|= HA_STATE_AKTIV; /* Record is read */