1
0
mirror of https://github.com/MariaDB/server.git synced 2025-12-24 11:21:21 +03:00

New SET syntax & system variables.

Made a some new buffers thread specific and changeable.
Resize of key_buffer.
AUTO_COMMIT -> AUTOCOMMIT
Fixed mutex bug in DROP DATABASE
Fixed bug when using auto_increment as second part of a key where first part could include NULL.
Split handler->extra() to extra() and extra_opt() to be able to support thread specific buffers.
Don't write message to error log when slave reconnects becasue of timeout.
Fixed possible update problem when using DELETE/UPDATE on small tables
(In some cases we used index even if table scanning would be better)
A lot of minior code cleanups
This commit is contained in:
monty@mashka.mysql.fi
2002-07-23 18:31:22 +03:00
parent 373e19dca1
commit dddc20d9d1
146 changed files with 4346 additions and 2480 deletions

View File

@@ -426,7 +426,7 @@ mysql_select(THD *thd,TABLE_LIST *tables,List<Item> &fields,COND *conds,
goto err;
}
if (!(thd->options & OPTION_BIG_SELECTS) &&
join.best_read > (double) thd->max_join_size &&
join.best_read > (double) thd->variables.max_join_size &&
!(select_options & SELECT_DESCRIBE))
{ /* purecov: inspected */
result->send_error(ER_TOO_BIG_SELECT,ER(ER_TOO_BIG_SELECT)); /* purecov: inspected */
@@ -4894,7 +4894,8 @@ end_send(JOIN *join, JOIN_TAB *join_tab __attribute__((unused)),
error=join->result->send_data(*join->fields);
if (error)
DBUG_RETURN(-1); /* purecov: inspected */
if (++join->send_records >= join->thd->select_limit && join->do_send_rows)
if (++join->send_records >= join->thd->select_limit &&
join->do_send_rows)
{
if (join->select_options & OPTION_FOUND_ROWS)
{
@@ -4986,7 +4987,8 @@ end_send_group(JOIN *join, JOIN_TAB *join_tab __attribute__((unused)),
join->send_records++;
DBUG_RETURN(0);
}
if (!error && ++join->send_records >= join->thd->select_limit &&
if (!error &&
++join->send_records >= join->thd->select_limit &&
join->do_send_rows)
{
if (!(join->select_options & OPTION_FOUND_ROWS))
@@ -5776,7 +5778,7 @@ remove_duplicates(JOIN *join, TABLE *entry,List<Item> &fields, Item *having)
if (!field_count)
{ // only const items
join->thd->select_limit=1; // Only send first row
join->thd->select_limit=1; // Only send first row
DBUG_RETURN(0);
}
Field **first_field=entry->field+entry->fields - field_count;