1
0
mirror of https://github.com/MariaDB/server.git synced 2026-01-06 05:22:24 +03:00

AUTO_INCREMENT support for MERGE

HA_AUTO_PART_KEY support for handler parent class
This commit is contained in:
serg@sergbook.mysql.com
2002-07-21 23:55:32 +02:00
parent 0642d54a37
commit e20d9e06c5
5 changed files with 108 additions and 23 deletions

View File

@@ -628,16 +628,29 @@ longlong handler::get_auto_increment()
{
longlong nr;
int error;
(void) extra(HA_EXTRA_KEYREAD);
index_init(table->next_number_index);
error=index_last(table->record[1]);
if (!table->next_number_key_offset)
{ // Autoincrement at key-start
error=index_last(table->record[1]);
}
else
{
byte key[MAX_KEY_LENGTH];
key_copy(key,table,table->next_number_index,
table->next_number_key_offset);
error=index_read(table->record[1], key, table->next_number_key_offset,
HA_READ_PREFIX_LAST);
}
if (error)
nr=1;
else
nr=(longlong) table->next_number_field->
val_int_offset(table->rec_buff_length)+1;
(void) extra(HA_EXTRA_NO_KEYREAD);
index_end();
(void) extra(HA_EXTRA_NO_KEYREAD);
return nr;
}