From 9c04a77e0c69728941387e88bd118adbc0374c45 Mon Sep 17 00:00:00 2001 From: unknown Date: Tue, 15 Mar 2005 13:32:12 +0400 Subject: A fix (bug #8489: Strange auto_increment behaviour with HEAP table). heap/hp_create.c: A fix (bug #8489: Strange auto_increment behaviour with HEAP table). Handle autoincrement keys MyISAM-way. include/heap.h: A fix (bug #8489: Strange auto_increment behaviour with HEAP table). Handle autoincrement keys MyISAM-way. sql/ha_heap.cc: A fix (bug #8489: Strange auto_increment behaviour with HEAP table). Handle autoincrement keys MyISAM-way. --- heap/hp_create.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'heap') diff --git a/heap/hp_create.c b/heap/hp_create.c index af32fefea1b..b1b132a16fb 100644 --- a/heap/hp_create.c +++ b/heap/hp_create.c @@ -137,6 +137,8 @@ int heap_create(const char *name, uint keys, HP_KEYDEF *keydef, keyinfo->write_key= hp_write_key; keyinfo->hash_buckets= 0; } + if ((keyinfo->flag & HA_AUTO_KEY) && create_info->with_auto_increment) + share->auto_key= i + 1; } share->min_records= min_records; share->max_records= max_records; @@ -147,7 +149,6 @@ int heap_create(const char *name, uint keys, HP_KEYDEF *keydef, share->keys= keys; share->max_key_length= max_length; share->changed= 0; - share->auto_key= create_info->auto_key; share->auto_key_type= create_info->auto_key_type; share->auto_increment= create_info->auto_increment; /* Must be allocated separately for rename to work */ -- cgit v1.2.1