1
0
mirror of https://github.com/MariaDB/server.git synced 2025-08-07 00:04:31 +03:00

Merged some functions and removed some unused client functions.

Remember UNION for ALTER TABLE
Added test for if we are supporting transactions.
Don't allow REPLACE to replace a row when we have generated an auto_increment key
Fixed bug when using BLOB keys
Fixed bug in SET @variable=user.


Docs/manual.texi:
  Added some examples and moved the Error access denied section to the
  error section.
client/mysqltest.c:
  Changed to use the new mysql_send_query()
include/mysql.h:
  Changed mysql_reap_query() to mysql_send_query().
libmysql/libmysql.c:
  Changed mysql_reap_query() to mysql_send_query()
  Merged some functions and removed some unused functions.
mysql-test/r/bdb.result:
  New test case
mysql-test/r/distinct.result:
  New test case
mysql-test/r/key.result:
  New test case
mysql-test/r/merge.result:
  New test case
mysql-test/r/replace.result:
  New test case
mysql-test/t/bdb.test:
  New test case
mysql-test/t/key.test:
  New test case
mysql-test/t/merge.test:
  New test case
mysql-test/t/replace.test:
  New test case
mysys/my_lock.c:
  Moved global lock variable to static
sql-bench/test-insert.sh:
  Added test case for index-read only
sql/field.h:
  Fixed that one can optimize ORDER BY with ISAM and GEMINI
sql/ha_berkeley.cc:
  Added type casts needed for Windows
sql/ha_innobase.cc:
  Removed reference to manual from comment.
sql/ha_myisammrg.cc:
  Remember UNION for ALTER TABLE
sql/ha_myisammrg.h:
  Remember UNION for ALTER TABLE
sql/handler.cc:
  Added test for if we are supporting transactions.
  Don't allow REPLACE to replace a row when we have generated an auto_increment key.
sql/handler.h:
  Remember UNION for ALTER TABLE
sql/key.cc:
  Fixed bug when using BLOB keys
sql/mysql_priv.h:
  Added new variables
sql/mysqld.cc:
  Added new variables
sql/opt_range.cc:
  Fixed problem with BLOB keys
sql/opt_sum.cc:
  Fix for BLOB keys
sql/sql_class.cc:
  Added test if we need to init/clean transaction variables
sql/sql_insert.cc:
  Fix for REPLACE and auto_increment keys
sql/sql_parse.cc:
  Fixed bug in max_user_connections
sql/sql_select.cc:
  Fixed problem with key on BLOB
sql/sql_yacc.yy:
  Fixed bug in SET @variable=user.
sql/table.cc:
  Fixed problem with keys on BLOB
This commit is contained in:
unknown
2001-03-06 15:24:08 +02:00
parent ec5e2f589f
commit 869c89feaa
33 changed files with 561 additions and 351 deletions

View File

@@ -346,6 +346,14 @@ int write_record(TABLE *table,COPY_INFO *info)
error=HA_WRITE_SKIPP; /* Database can't find key */
goto err;
}
/*
Don't allow REPLACE to replace a row when a auto_increment column
was used. This ensures that we don't get a problem when the
whole range of the key has been used.
*/
if (table->next_number_field && key_nr == table->next_number_index &&
table->file->auto_increment_column_changed)
goto err;
if (table->file->option_flag() & HA_DUPP_POS)
{
if (table->file->rnd_pos(table->record[1],table->file->dupp_ref))