summaryrefslogtreecommitdiff
path: root/heap
diff options
context:
space:
mode:
authorramil@mysql.com <>2005-03-15 13:32:12 +0400
committerramil@mysql.com <>2005-03-15 13:32:12 +0400
commit46613bafbe9ee1d25885c78a4960cfb23aa77f75 (patch)
tree41e3f57ec9e5632602bbaf0aeb4a973e7c77dccb /heap
parent18343b9454e7711b8fea5319360f2f325d8d9d15 (diff)
downloadmariadb-git-46613bafbe9ee1d25885c78a4960cfb23aa77f75.tar.gz
A fix (bug #8489: Strange auto_increment behaviour with HEAP table).
Diffstat (limited to 'heap')
-rw-r--r--heap/hp_create.c3
1 files changed, 2 insertions, 1 deletions
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 */