Loading Docs/manual.texi +14 −19 Original line number Diff line number Diff line Loading @@ -3705,26 +3705,9 @@ list valid only if you are reading it from the MySQL web site @item Allow users to change startup options without taking down the server. @item Better command-line argument handling. @item New key cache, which will give better performance when using many threads. @item New table definition file format (@file{.frm} files). This will enable us to not run out of bits when adding more table options. One will still be able to use the old @file{.frm} file format with 4.0. All newly created tables will, however, use the new format. The new file format will enable us to add new column types, more options for keys, and possibly to store and retrieve @code{FOREIGN KEY} definitions. @item @code{SHOW COLUMNS FROM table_name} (used by @code{mysql} client to allow expansions of column names) should not open the table, only the definition file. This will require less memory and be much faster. @item @code{SET SQL_DEFAULT_TABLE_TYPE=[MyISAM | INNODB | BDB | HEAP]}. @end itemize @node TODO MySQL 4.1, TODO future, TODO MySQL 4.0, TODO @subsection Things That Should be in 4.1 Loading @@ -3741,6 +3724,18 @@ Subqueries. SELECT id FROM t WHERE grp IN (SELECT grp FROM g WHERE u > 100); @end example @item New table definition file format (@file{.frm} files). This will enable us to not run out of bits when adding more table options. One will still be able to use the old @file{.frm} file format with 4.0. All newly created tables will, however, use the new format. The new file format will enable us to add new column types, more options for keys, and possibly to store and retrieve @code{FOREIGN KEY} definitions. @item @code{SHOW COLUMNS FROM table_name} (used by @code{mysql} client to allow expansions of column names) should not open the table, only the definition file. This will require less memory and be much faster. @item Foreign keys for @code{MyISAM} tables, including cascading delete. @item Fail-safe replication. Loading Loading @@ -4056,8 +4051,6 @@ Implement function: @code{get_changed_tables(timeout,table1,table2,...)}. Change reading through tables to use memmap when possible. Now only compressed tables use memmap. @item Add a new @code{SHOW} privilege for @code{SHOW} commands. @item Make the automatic timestamp code nicer. Add timestamps to the update log with @code{SET TIMESTAMP=#;}. @item Loading Loading @@ -49458,6 +49451,8 @@ Our TODO section contains what we plan to have in 4.0. @xref{TODO MySQL 4.0}. @itemize @bullet @item Fixed bug in @code{innodb_log_group_home_dir} in @code{SHOW VARIABLES}. @item Fixed a bug in optimiser with merge tables when non-uniques values are used in summing up (causing crashes). @item sql/ha_innodb.cc +3 −1 Original line number Diff line number Diff line Loading @@ -356,6 +356,8 @@ ha_innobase::update_thd( /************************************************************************* Opens an InnoDB database. */ char current_lib[3]; // Set if using current lib bool innobase_init(void) /*===============*/ Loading @@ -363,7 +365,7 @@ innobase_init(void) { int err; bool ret; char current_lib[3], *default_path; char *default_path; DBUG_ENTER("innobase_init"); Loading sql/mysqld.cc +2 −1 Original line number Diff line number Diff line Loading @@ -2411,7 +2411,8 @@ static void create_new_thread(THD *thd) inline void kill_broken_server() { /* hack to get around signals ignored in syscalls for problem OS's */ if (unix_sock == INVALID_SOCKET || (!opt_disable_networking && ip_sock ==INVALID_SOCKET)) if (unix_sock == INVALID_SOCKET || (!opt_disable_networking && ip_sock == INVALID_SOCKET)) { select_thread_in_use = 0; kill_server((void*)MYSQL_KILL_SIGNAL); /* never returns */ Loading sql/opt_range.cc +2 −1 Original line number Diff line number Diff line Loading @@ -1291,7 +1291,8 @@ and_all_keys(SEL_ARG *key1,SEL_ARG *key2,uint clone_flag) } if (key1->type == SEL_ARG::MAYBE_KEY) { key1->right=key1->left= &null_element; key1->next=key1->prev=0; key1->right= key1->left= &null_element; key1->next= key1->prev= 0; } for (next=key1->first(); next ; next=next->next) { Loading Loading
Docs/manual.texi +14 −19 Original line number Diff line number Diff line Loading @@ -3705,26 +3705,9 @@ list valid only if you are reading it from the MySQL web site @item Allow users to change startup options without taking down the server. @item Better command-line argument handling. @item New key cache, which will give better performance when using many threads. @item New table definition file format (@file{.frm} files). This will enable us to not run out of bits when adding more table options. One will still be able to use the old @file{.frm} file format with 4.0. All newly created tables will, however, use the new format. The new file format will enable us to add new column types, more options for keys, and possibly to store and retrieve @code{FOREIGN KEY} definitions. @item @code{SHOW COLUMNS FROM table_name} (used by @code{mysql} client to allow expansions of column names) should not open the table, only the definition file. This will require less memory and be much faster. @item @code{SET SQL_DEFAULT_TABLE_TYPE=[MyISAM | INNODB | BDB | HEAP]}. @end itemize @node TODO MySQL 4.1, TODO future, TODO MySQL 4.0, TODO @subsection Things That Should be in 4.1 Loading @@ -3741,6 +3724,18 @@ Subqueries. SELECT id FROM t WHERE grp IN (SELECT grp FROM g WHERE u > 100); @end example @item New table definition file format (@file{.frm} files). This will enable us to not run out of bits when adding more table options. One will still be able to use the old @file{.frm} file format with 4.0. All newly created tables will, however, use the new format. The new file format will enable us to add new column types, more options for keys, and possibly to store and retrieve @code{FOREIGN KEY} definitions. @item @code{SHOW COLUMNS FROM table_name} (used by @code{mysql} client to allow expansions of column names) should not open the table, only the definition file. This will require less memory and be much faster. @item Foreign keys for @code{MyISAM} tables, including cascading delete. @item Fail-safe replication. Loading Loading @@ -4056,8 +4051,6 @@ Implement function: @code{get_changed_tables(timeout,table1,table2,...)}. Change reading through tables to use memmap when possible. Now only compressed tables use memmap. @item Add a new @code{SHOW} privilege for @code{SHOW} commands. @item Make the automatic timestamp code nicer. Add timestamps to the update log with @code{SET TIMESTAMP=#;}. @item Loading Loading @@ -49458,6 +49451,8 @@ Our TODO section contains what we plan to have in 4.0. @xref{TODO MySQL 4.0}. @itemize @bullet @item Fixed bug in @code{innodb_log_group_home_dir} in @code{SHOW VARIABLES}. @item Fixed a bug in optimiser with merge tables when non-uniques values are used in summing up (causing crashes). @item
sql/ha_innodb.cc +3 −1 Original line number Diff line number Diff line Loading @@ -356,6 +356,8 @@ ha_innobase::update_thd( /************************************************************************* Opens an InnoDB database. */ char current_lib[3]; // Set if using current lib bool innobase_init(void) /*===============*/ Loading @@ -363,7 +365,7 @@ innobase_init(void) { int err; bool ret; char current_lib[3], *default_path; char *default_path; DBUG_ENTER("innobase_init"); Loading
sql/mysqld.cc +2 −1 Original line number Diff line number Diff line Loading @@ -2411,7 +2411,8 @@ static void create_new_thread(THD *thd) inline void kill_broken_server() { /* hack to get around signals ignored in syscalls for problem OS's */ if (unix_sock == INVALID_SOCKET || (!opt_disable_networking && ip_sock ==INVALID_SOCKET)) if (unix_sock == INVALID_SOCKET || (!opt_disable_networking && ip_sock == INVALID_SOCKET)) { select_thread_in_use = 0; kill_server((void*)MYSQL_KILL_SIGNAL); /* never returns */ Loading
sql/opt_range.cc +2 −1 Original line number Diff line number Diff line Loading @@ -1291,7 +1291,8 @@ and_all_keys(SEL_ARG *key1,SEL_ARG *key2,uint clone_flag) } if (key1->type == SEL_ARG::MAYBE_KEY) { key1->right=key1->left= &null_element; key1->next=key1->prev=0; key1->right= key1->left= &null_element; key1->next= key1->prev= 0; } for (next=key1->first(); next ; next=next->next) { Loading