diff options
author | unknown <svoj@june.mysql.com> | 2007-04-18 16:35:22 +0500 |
---|---|---|
committer | unknown <svoj@june.mysql.com> | 2007-04-18 16:35:22 +0500 |
commit | 78035fb5d5cd237fa545493b644e70118d73bfff (patch) | |
tree | 85b7e68bc1525abfdcc7fa3744e12b6f140d2e5c /storage/myisam | |
parent | 1ff64d6e1111247536ecc004505ca376df8a58b6 (diff) | |
parent | de15763cfbf230c7fa1333b84a707abc25cde2d6 (diff) | |
download | mariadb-git-78035fb5d5cd237fa545493b644e70118d73bfff.tar.gz |
Merge mysql.com:/home/svoj/devel/mysql/BUG24342/mysql-5.0-engines
into mysql.com:/home/svoj/devel/mysql/BUG24342/mysql-5.1-engines
mysql-test/r/merge.result:
Auto merged
mysql-test/t/merge.test:
Auto merged
storage/myisam/mi_rkey.c:
Auto merged
storage/myisam/myisamdef.h:
Auto merged
storage/myisammrg/myrg_rkey.c:
SCCS merged
Diffstat (limited to 'storage/myisam')
-rw-r--r-- | storage/myisam/mi_rkey.c | 3 | ||||
-rw-r--r-- | storage/myisam/myisamdef.h | 1 |
2 files changed, 3 insertions, 1 deletions
diff --git a/storage/myisam/mi_rkey.c b/storage/myisam/mi_rkey.c index 373ab303bf0..a4be66bd4f2 100644 --- a/storage/myisam/mi_rkey.c +++ b/storage/myisam/mi_rkey.c @@ -49,7 +49,7 @@ int mi_rkey(MI_INFO *info, byte *buf, int inx, const byte *key, key_buff=info->lastkey+info->s->base.max_key_length; pack_key_length= keypart_map; bmove(key_buff, key, pack_key_length); - last_used_keyseg= 0; + last_used_keyseg= info->s->keyinfo[inx].seg + info->last_used_keyseg; } else { @@ -60,6 +60,7 @@ int mi_rkey(MI_INFO *info, byte *buf, int inx, const byte *key, keypart_map, &last_used_keyseg); /* Save packed_key_length for use by the MERGE engine. */ info->pack_key_length= pack_key_length; + info->last_used_keyseg= last_used_keyseg - info->s->keyinfo[inx].seg; DBUG_EXECUTE("key",_mi_print_key(DBUG_FILE, keyinfo->seg, key_buff, pack_key_length);); } diff --git a/storage/myisam/myisamdef.h b/storage/myisam/myisamdef.h index 7325340b970..a491e6d210c 100644 --- a/storage/myisam/myisamdef.h +++ b/storage/myisam/myisamdef.h @@ -276,6 +276,7 @@ struct st_myisam_info { enum ha_rkey_function last_key_func; /* CONTAIN, OVERLAP, etc */ uint save_lastkey_length; uint pack_key_length; /* For MYISAMMRG */ + uint16 last_used_keyseg; /* For MyISAMMRG */ int errkey; /* Got last error on this key */ int lock_type; /* How database was locked */ int tmp_lock_type; /* When locked by readinfo */ |