List:Commits« Previous MessageNext Message »
From:monty Date:November 21 2006 9:33pm
Subject:bk commit into 5.1 tree (monty:1.2337)
View as plain text  
Below is the list of changes that have just been committed into a local
5.1 repository of monty. When monty does a push these changes will
be propagated to the main repository and, within 24 hours after the
push, to the public repository.
For information on how to access the public repository
see http://dev.mysql.com/doc/mysql/en/installing-source-tree.html

ChangeSet@stripped, 2006-11-21 22:32:58+02:00, monty@stripped +81 -0
  Added --debug-info to most clients to detect memory leaks in mysql-test-run
  Moved .progress files into the log directory
  Moved 'cluster' database tables into the MySQL database, to not have 'cluster' beeing a reserved database name
  Fixed bug where mysqld got a core dump when trying to use a table created by MySQL 3.23
  Fixed some compiler warnings
  Fixed small memory leak in libmysql
  Note that this doesn't changeset doesn't include the new mysqldump.c code required to run some tests. This will be added when I merge 5.0 to 5.1

  client/client_priv.h@stripped, 2006-11-21 22:32:47+02:00, monty@stripped +2 -1
    Added OPT_DEBUG_INFO and OPT_COLUMN_TYPES

  client/mysql.cc@stripped, 2006-11-21 22:32:47+02:00, monty@stripped +14 -9
    Split --debug-info into --debug-info and --column-type-info

  client/mysql_upgrade.c@stripped, 2006-11-21 22:32:47+02:00, monty@stripped +1 -1
    Give only error info at end if using --debug-info

  client/mysqladmin.cc@stripped, 2006-11-21 22:32:47+02:00, monty@stripped +5 -3
    Added --debug-info to detect memory leaks in mysqltest

  client/mysqlbinlog.cc@stripped, 2006-11-21 22:32:47+02:00, monty@stripped +6 -4
    Added --debug-info to detect memory leaks in mysqltest

  client/mysqlcheck.c@stripped, 2006-11-21 22:32:47+02:00, monty@stripped +6 -4
    Added --debug-info to detect memory leaks in mysqltest

  client/mysqlimport.c@stripped, 2006-11-21 22:32:48+02:00, monty@stripped +5 -3
    Added --debug-info to detect memory leaks in mysqltest

  client/mysqlshow.c@stripped, 2006-11-21 22:32:48+02:00, monty@stripped +7 -6
    Added --debug-info to detect memory leaks in mysqltest

  client/mysqltest.c@stripped, 2006-11-21 22:32:48+02:00, monty@stripped +15 -8
    Added --debug-info to detect memory leaks in mysqltest
    Added option --logdir to force .progress files in a specific directory

  libmysql/libmysql.c@stripped, 2006-11-21 22:32:48+02:00, monty@stripped +2 -3
    Fixed memory leak

  mysql-test/include/ndb_setup_slave.inc@stripped, 2006-11-21 22:32:48+02:00, monty@stripped +2 -2
    Moved cluster tables under 'mysql'

  mysql-test/include/query_cache.inc@stripped, 2006-11-21 22:32:48+02:00, monty@stripped +79 -1
    Added more tests for query cache

  mysql-test/lib/init_db.sql@stripped, 2006-11-21 22:32:48+02:00, monty@stripped +1 -2
    Move cluster.binlog_index -> mysql.binlog_index

  mysql-test/lib/mtr_report.pl@stripped, 2006-11-21 22:32:48+02:00, monty@stripped +2 -1
    Find memory leaks

  mysql-test/mysql-test-run-shell.sh@stripped, 2006-11-21 22:32:48+02:00, monty@stripped +8 -8
    Added --debug-info to programs to detect memory leaks

  mysql-test/mysql-test-run.pl@stripped, 2006-11-21 22:32:48+02:00, monty@stripped +18 -17
    Added --debug-info to programs to detect memory leaks
    Force log files to var/log
    cluster tables moved under 'mysql'

  mysql-test/r/1st.result@stripped, 2006-11-21 22:32:54+02:00, monty@stripped +29 -0
    New BitKeeper file ``mysql-test/r/1st.result''

  mysql-test/r/1st.result@stripped, 2006-11-21 22:32:54+02:00, monty@stripped +0 -0

  mysql-test/r/cache_innodb.result@stripped, 2006-11-21 22:32:49+02:00, monty@stripped +91 -0
    New query cache test with innodb

  mysql-test/r/connect.result@stripped, 2006-11-21 22:32:49+02:00, monty@stripped +3 -0
    binlog_index is now in mysql

  mysql-test/r/drop.result@stripped, 2006-11-21 22:32:49+02:00, monty@stripped +0 -2
    Removed 'cluster' database

  mysql-test/r/information_schema.result@stripped, 2006-11-21 22:32:49+02:00, monty@stripped +2 -5
    Removed 'cluster' database

  mysql-test/r/mysqlcheck.result@stripped, 2006-11-21 22:32:49+02:00, monty@stripped +2 -1
    cluster.binlog_index -> mysql.binlog_index

  mysql-test/r/ndb_binlog_basic.result@stripped, 2006-11-21 22:32:49+02:00, monty@stripped +7 -7
    cluster.binlog_index -> mysql.binlog_index

  mysql-test/r/ndb_binlog_ddl_multi.result@stripped, 2006-11-21 22:32:49+02:00, monty@stripped +3 -3
    cluster -> mysql

  mysql-test/r/ndb_binlog_discover.result@stripped, 2006-11-21 22:32:49+02:00, monty@stripped +1 -1
    cluster -> mysql

  mysql-test/r/ndb_binlog_multi.result@stripped, 2006-11-21 22:32:49+02:00, monty@stripped +9 -9
    cluster -> mysql

  mysql-test/r/ndb_restore_compat.result@stripped, 2006-11-21 22:32:49+02:00, monty@stripped +2 -2
    cluster -> mysql

  mysql-test/r/ps_1general.result@stripped, 2006-11-21 22:32:49+02:00, monty@stripped +0 -1
    Removed cluster database

  mysql-test/r/rpl_create_database.result@stripped, 2006-11-21 22:32:49+02:00, monty@stripped +0 -4
    Removed cluster database

  mysql-test/r/rpl_load_from_master.result@stripped, 2006-11-21 22:32:49+02:00, monty@stripped +0 -3
    Removed cluster database

  mysql-test/r/rpl_loaddata_m.result@stripped, 2006-11-21 22:32:49+02:00, monty@stripped +0 -1
    Removed cluster database

  mysql-test/r/rpl_ndb_bank.result@stripped, 2006-11-21 22:32:49+02:00, monty@stripped +6 -6
    cluster -> mysql

  mysql-test/r/rpl_ndb_dd_advance.result@stripped, 2006-11-21 22:32:50+02:00, monty@stripped +5 -5
    cluster -> mysql

  mysql-test/r/rpl_ndb_dd_basic.result@stripped, 2006-11-21 22:32:50+02:00, monty@stripped +1 -1
    cluster -> mysql

  mysql-test/r/rpl_ndb_idempotent.result@stripped, 2006-11-21 22:32:50+02:00, monty@stripped +2 -2
    cluster -> mysql

  mysql-test/r/rpl_ndb_log.result@stripped, 2006-11-21 22:32:50+02:00, monty@stripped +12 -12
    cluster -> mysql

  mysql-test/r/rpl_ndb_multi.result@stripped, 2006-11-21 22:32:50+02:00, monty@stripped +2 -2
    cluster -> mysql

  mysql-test/r/rpl_ndb_sync.result@stripped, 2006-11-21 22:32:50+02:00, monty@stripped +4 -4
    cluster -> mysql

  mysql-test/r/rpl_row_basic_11bugs.result@stripped, 2006-11-21 22:32:50+02:00, monty@stripped +0 -2
    Removed cluster database

  mysql-test/r/rpl_truncate_7ndb.result@stripped, 2006-11-21 22:32:50+02:00, monty@stripped +26 -26
    Position have changed

  mysql-test/r/rpl_truncate_7ndb_2.result@stripped, 2006-11-21 22:32:50+02:00, monty@stripped +4 -4
    cluster -> mysql

  mysql-test/r/schema.result@stripped, 2006-11-21 22:32:50+02:00, monty@stripped +0 -1
    Removed cluster database

  mysql-test/r/show_check.result@stripped, 2006-11-21 22:32:51+02:00, monty@stripped +0 -1
    Removed cluster database

  mysql-test/r/system_mysql_db.result@stripped, 2006-11-21 22:32:51+02:00, monty@stripped +1 -0
    binlog_index moved under mysql

  mysql-test/r/upgrade.result@stripped, 2006-11-21 22:32:51+02:00, monty@stripped +2 -0
    More tests

  mysql-test/std_data/old_table-323.frm@stripped, 2006-11-21 22:32:54+02:00, monty@stripped +193 -0
    New BitKeeper file ``mysql-test/std_data/old_table-323.frm''

  mysql-test/std_data/old_table-323.frm@stripped, 2006-11-21 22:32:54+02:00, monty@stripped +0 -0

  mysql-test/t/1st.test@stripped, 2006-11-21 22:32:54+02:00, monty@stripped +5 -0
    New BitKeeper file ``mysql-test/t/1st.test''

  mysql-test/t/1st.test@stripped, 2006-11-21 22:32:54+02:00, monty@stripped +0 -0

  mysql-test/t/information_schema.test@stripped, 2006-11-21 22:32:51+02:00, monty@stripped +2 -2
    cluster -> mysql

  mysql-test/t/mysqldump.test@stripped, 2006-11-21 22:32:51+02:00, monty@stripped +3 -0
    More test to detect memory leaks

  mysql-test/t/ndb_binlog_basic.test@stripped, 2006-11-21 22:32:51+02:00, monty@stripped +7 -7
    cluster -> mysql

  mysql-test/t/ndb_binlog_multi.test@stripped, 2006-11-21 22:32:51+02:00, monty@stripped +5 -5
    cluster -> mysql

  mysql-test/t/ndb_restore_compat.test@stripped, 2006-11-21 22:32:51+02:00, monty@stripped +2 -2
    cluster -> mysql

  mysql-test/t/rpl_ndb_bank.test@stripped, 2006-11-21 22:32:51+02:00, monty@stripped +4 -4
    cluster -> mysql

  mysql-test/t/rpl_ndb_dd_advance.test@stripped, 2006-11-21 22:32:51+02:00, monty@stripped +5 -5
    cluster -> mysql

  mysql-test/t/rpl_ndb_idempotent.test@stripped, 2006-11-21 22:32:51+02:00, monty@stripped +3 -3
    cluster -> mysql

  mysql-test/t/rpl_ndb_multi.test@stripped, 2006-11-21 22:32:51+02:00, monty@stripped +3 -3
    cluster -> mysql

  mysql-test/t/rpl_ndb_sync.test@stripped, 2006-11-21 22:32:52+02:00, monty@stripped +3 -3
    cluster -> mysql

  mysql-test/t/system_mysql_db_fix.test@stripped, 2006-11-21 22:32:52+02:00, monty@stripped +1 -1
    Drop also binlog_index

  mysql-test/t/upgrade.test@stripped, 2006-11-21 22:32:52+02:00, monty@stripped +9 -0
    Check that tables created with 3.23 works

  mysys/my_error.c@stripped, 2006-11-21 22:32:52+02:00, monty@stripped +12 -0
    Remove all registered errors (to avoid memory leaks)

  mysys/my_init.c@stripped, 2006-11-21 22:32:52+02:00, monty@stripped +3 -1
    call my_error_unregister_all() to avoid some possible memory leaks

  mysys/mysys_priv.h@stripped, 2006-11-21 22:32:52+02:00, monty@stripped +2 -0
    Added prototype

  scripts/mysql_create_system_tables.sh@stripped, 2006-11-21 22:32:52+02:00, monty@stripped +1 -2
    cluster -> mysql

  scripts/mysql_fix_privilege_tables.sql@stripped, 2006-11-21 22:32:52+02:00, monty@stripped +45 -43
    Changed -- to #
    Create binlog_index table if it dosesn't exist

  sql/field.cc@stripped, 2006-11-21 22:32:52+02:00, monty@stripped +0 -6
    Made offset() inline

  sql/field.h@stripped, 2006-11-21 22:32:52+02:00, monty@stripped +4 -1
    Changed prototype of offset() to not make it depending on TABLE structure

  sql/field_conv.cc@stripped, 2006-11-21 22:32:52+02:00, monty@stripped +6 -6
    Removed some usage of current_thd

  sql/ha_ndbcluster_tables.h@stripped, 2006-11-21 22:32:52+02:00, monty@stripped +1 -1
    cluster -> mysql

  sql/item_sum.cc@stripped, 2006-11-21 22:32:52+02:00, monty@stripped +7 -4
    Usage of new 'offset' parameters

  sql/key.cc@stripped, 2006-11-21 22:32:52+02:00, monty@stripped +33 -16
    Changed 'find_ref_key' to not be dependent on field->table
    (This fixed a crash when using a table created in MySQL 3.23)

  sql/mysql_priv.h@stripped, 2006-11-21 22:32:53+02:00, monty@stripped +2 -1
    Changed find_ref_key() to not use field->table

  sql/mysqld.cc@stripped, 2006-11-21 22:32:53+02:00, monty@stripped +1 -1
    Fix that plugin_init() works properly on bootstrap
    (Previously we got warnings from plugin_init)

  sql/sql_class.cc@stripped, 2006-11-21 22:32:53+02:00, monty@stripped +3 -1
    new 'field->offset()'

  sql/sql_select.cc@stripped, 2006-11-21 22:32:54+02:00, monty@stripped +5 -4
    New field->offset()

  sql/table.cc@stripped, 2006-11-21 22:32:54+02:00, monty@stripped +8 -12
    We don't need field->table to be set in find_ref_key() or find_field() anymore.

  storage/archive/ha_archive.cc@stripped, 2006-11-21 22:32:54+02:00, monty@stripped +11 -7
    New field->offset()

  storage/federated/ha_federated.cc@stripped, 2006-11-21 22:32:54+02:00, monty@stripped +2 -1
    New field->offset()

  storage/innobase/handler/ha_innodb.cc@stripped, 2006-11-21 22:32:54+02:00, monty@stripped +2 -2
    Fixed compiler warnings

  storage/myisam/ha_myisam.cc@stripped, 2006-11-21 22:32:54+02:00, monty@stripped +8 -6
    Fixed compiler warnings (Wrong paramter to sprintf())
    New field->offset()

  storage/myisam/ha_myisam.h@stripped, 2006-11-21 22:32:54+02:00, monty@stripped +1 -1
    Fixed wrong type of table_flags

  storage/ndb/tools/restore/Restore.cpp@stripped, 2006-11-21 22:32:54+02:00, monty@stripped +1 -1
    Fixed compiler warning

# This is a BitKeeper patch.  What follows are the unified diffs for the
# set of deltas contained in the patch.  The rest of the patch, the part
# that BitKeeper cares about, is below these diffs.
# User:	monty
# Host:	nosik.monty.fi
# Root:	/home/my/mysql-5.1

--- 1.235/client/mysql.cc	2006-11-21 22:33:07 +02:00
+++ 1.236/client/mysql.cc	2006-11-21 22:33:07 +02:00
@@ -44,7 +44,7 @@
 #include <locale.h>
 #endif
 
-const char *VER= "14.12";
+const char *VER= "14.13";
 
 /* Don't try to make a nice table if the data is too big */
 #define MAX_COLUMN_LENGTH	     1024
@@ -140,6 +140,7 @@
 	       default_charset_used= 0, opt_secure_auth= 0,
                default_pager_set= 0, opt_sigint_ignore= 0,
                show_warnings= 0, executing_query= 0, interrupted_query= 0;
+static my_bool column_types_flag;
 static ulong opt_max_allowed_packet, opt_net_buffer_length;
 static uint verbose=0,opt_silent=0,opt_mysql_port=0, opt_local_infile=0;
 static my_string opt_mysql_unix_port=0;
@@ -530,7 +531,7 @@
   my_free(current_prompt,MYF(MY_ALLOW_ZERO_PTR));
   mysql_server_end();
   free_defaults(defaults_argv);
-  my_end(info_flag ? MY_CHECK_ERROR | MY_GIVE_INFO : 0);
+  my_end(info_flag ? MY_CHECK_ERROR : 0);
   exit(status.exit_status);
 }
 
@@ -585,12 +586,13 @@
   {"character-sets-dir", OPT_CHARSETS_DIR,
    "Directory where character sets are.", (gptr*) &charsets_dir,
    (gptr*) &charsets_dir, 0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
-  {"default-character-set", OPT_DEFAULT_CHARSET,
-   "Set the default character set.", (gptr*) &default_charset,
-   (gptr*) &default_charset, 0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
+  {"column-type-info", OPT_COLUMN_TYPES, "Display column type information.",
+   (gptr*) &column_types_flag, (gptr*) &column_types_flag,
+   0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0},
   {"compress", 'C', "Use compression in server/client protocol.",
    (gptr*) &opt_compress, (gptr*) &opt_compress, 0, GET_BOOL, NO_ARG, 0, 0, 0,
    0, 0, 0},
+
 #ifdef DBUG_OFF
   {"debug", '#', "This is a non-debug version. Catch this and exit",
    0,0, 0, GET_DISABLED, OPT_ARG, 0, 0, 0, 0, 0, 0},
@@ -598,8 +600,13 @@
   {"debug", '#', "Output debug log", (gptr*) &default_dbug_option,
    (gptr*) &default_dbug_option, 0, GET_STR, OPT_ARG, 0, 0, 0, 0, 0, 0},
 #endif
+  {"debug-info", 'T', "Print some debug info at exit.", (gptr*) &info_flag,
+   (gptr*) &info_flag, 0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0},
   {"database", 'D', "Database to use.", (gptr*) &current_db,
    (gptr*) &current_db, 0, GET_STR_ALLOC, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
+  {"default-character-set", OPT_DEFAULT_CHARSET,
+   "Set the default character set.", (gptr*) &default_charset,
+   (gptr*) &default_charset, 0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
   {"delimiter", OPT_DELIMITER, "Delimiter to be used.", (gptr*) &delimiter_str,
    (gptr*) &delimiter_str, 0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
   {"execute", 'e', "Execute command and quit. (Disables --force and history file)", 0,
@@ -696,8 +703,6 @@
 #include "sslopt-longopts.h"
   {"table", 't', "Output in table format.", (gptr*) &output_tables,
    (gptr*) &output_tables, 0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0},
-  {"debug-info", 'T', "Print some debug info at exit.", (gptr*) &info_flag,
-   (gptr*) &info_flag, 0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0},
   {"tee", OPT_TEE,
    "Append everything into outfile. See interactive help (\\h) also. Does not work in batch mode. Disable with --disable-tee. This option is disabled by default.",
    0, 0, 0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
@@ -2070,7 +2075,7 @@
       time_buff[0]=0;
     if (result)
     {
-      if (!mysql_num_rows(result) && ! quick && !info_flag)
+      if (!mysql_num_rows(result) && ! quick && !column_types_flag)
       {
 	strmov(buff, "Empty set");
       }
@@ -2307,7 +2312,7 @@
   bool		*num_flag;
 
   num_flag=(bool*) my_alloca(sizeof(bool)*mysql_num_fields(result));
-  if (info_flag)
+  if (column_types_flag)
   {
     print_field_types(result);
     if (!mysql_num_rows(result))

--- 1.115/client/mysqladmin.cc	2006-11-21 22:33:07 +02:00
+++ 1.116/client/mysqladmin.cc	2006-11-21 22:33:07 +02:00
@@ -28,7 +28,7 @@
 #include "../ndb/src/mgmclient/ndb_mgmclient.h"
 #endif
 
-#define ADMIN_VERSION "8.41"
+#define ADMIN_VERSION "8.42"
 #define MAX_MYSQL_VAR 256
 #define SHUTDOWN_DEF_TIMEOUT 3600		/* Wait for shutdown */
 #define MAX_TRUNC_LENGTH 3
@@ -41,7 +41,7 @@
 static int interval=0;
 static my_bool option_force=0,interrupted=0,new_line=0,
                opt_compress=0, opt_relative=0, opt_verbose=0, opt_vertical=0,
-               tty_password=0;
+               tty_password= 0, info_flag= 0;
 static uint tcp_port = 0, option_wait = 0, option_silent=0, nr_iterations,
             opt_count_iterations= 0;
 static ulong opt_connect_timeout, opt_shutdown_timeout;
@@ -136,6 +136,8 @@
    REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
   {"debug", '#', "Output debug log. Often this is 'd:t:o,filename'.",
    0, 0, 0, GET_STR, OPT_ARG, 0, 0, 0, 0, 0, 0},
+  {"debug-info", OPT_DEBUG_INFO, "Print some debug info at exit.", (gptr*) &info_flag,
+   (gptr*) &info_flag, 0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0},
   {"force", 'f',
    "Don't ask for confirmation on drop database; with multiple commands, continue even if an error occurs.",
    (gptr*) &option_force, (gptr*) &option_force, 0, GET_BOOL, NO_ARG, 0, 0,
@@ -412,7 +414,7 @@
   my_free(shared_memory_base_name,MYF(MY_ALLOW_ZERO_PTR));
 #endif
   free_defaults(save_argv);
-  my_end(0);
+  my_end(info_flag ? MY_CHECK_ERROR : 0);
   exit(error ? 1 : 0);
   return 0;
 }

--- 1.76/client/mysqlimport.c	2006-11-21 22:33:07 +02:00
+++ 1.77/client/mysqlimport.c	2006-11-21 22:33:07 +02:00
@@ -25,7 +25,7 @@
 **			   *			   *
 **			   *************************
 */
-#define IMPORT_VERSION "3.5"
+#define IMPORT_VERSION "3.6"
 
 #include "client_priv.h"
 #include "mysql_version.h"
@@ -50,7 +50,7 @@
 static my_bool	verbose=0,lock_tables=0,ignore_errors=0,opt_delete=0,
 		replace=0,silent=0,ignore=0,opt_compress=0,
                 opt_low_priority= 0, tty_password= 0;
-static my_bool opt_use_threads= 0;
+static my_bool opt_use_threads= 0, info_flag= 0;
 static uint     opt_local_file=0;
 static char	*opt_password=0, *current_user=0,
 		*current_host=0, *current_db=0, *fields_terminated=0,
@@ -88,6 +88,8 @@
    0, 0, 0},
   {"debug",'#', "Output debug log. Often this is 'd:t:o,filename'.", 0, 0, 0,
    GET_STR, OPT_ARG, 0, 0, 0, 0, 0, 0},
+  {"debug-info", OPT_DEBUG_INFO, "Print some debug info at exit.", (gptr*) &info_flag,
+   (gptr*) &info_flag, 0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0},
   {"delete", 'd', "First delete all rows from table.", (gptr*) &opt_delete,
    (gptr*) &opt_delete, 0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0},
   {"fields-terminated-by", OPT_FTB,
@@ -663,6 +665,6 @@
   my_free(shared_memory_base_name,MYF(MY_ALLOW_ZERO_PTR));
 #endif
   free_defaults(argv_to_free);
-  my_end(0);
+  my_end(info_flag ? MY_CHECK_ERROR : 0);
   return(exitcode);
 }

--- 1.49/client/mysqlshow.c	2006-11-21 22:33:07 +02:00
+++ 1.50/client/mysqlshow.c	2006-11-21 22:33:07 +02:00
@@ -16,7 +16,7 @@
 
 /* Show databases, tables or columns */
 
-#define SHOW_VERSION "9.5"
+#define SHOW_VERSION "9.6"
 
 #include "client_priv.h"
 #include <my_sys.h>
@@ -28,8 +28,8 @@
 #include <sslopt-vars.h>
 
 static my_string host=0,opt_password=0,user=0;
-static my_bool opt_show_keys= 0, opt_compress= 0, opt_count=0, opt_status= 0, 
-  tty_password= 0, opt_table_type= 0;
+static my_bool opt_show_keys= 0, opt_compress= 0, opt_count=0, opt_status= 0;
+static my_bool tty_password= 0, opt_table_type= 0, info_flag= 0;
 static uint opt_verbose=0;
 static char *default_charset= (char*) MYSQL_DEFAULT_CHARSET_NAME;
 
@@ -129,8 +129,7 @@
   }
   mysql.reconnect= 1;
 
-  switch (argc)
-  {
+  switch (argc) {
   case 0:  error=list_dbs(&mysql,wild); break;
   case 1:
     if (opt_status)
@@ -151,7 +150,7 @@
 #ifdef HAVE_SMEM
   my_free(shared_memory_base_name,MYF(MY_ALLOW_ZERO_PTR));
 #endif
-  my_end(0);
+  my_end(info_flag ? MY_CHECK_ERROR : 0);
   exit(error ? 1 : 0);
   return 0;				/* No compiler warnings */
 }
@@ -177,6 +176,8 @@
    0, 0, 0},
   {"debug", '#', "Output debug log. Often this is 'd:t:o,filename'.",
    0, 0, 0, GET_STR, OPT_ARG, 0, 0, 0, 0, 0, 0},
+  {"debug-info", OPT_DEBUG_INFO, "Print some debug info at exit.", (gptr*) &info_flag,
+   (gptr*) &info_flag, 0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0},
   {"help", '?', "Display this help and exit.", 0, 0, 0, GET_NO_ARG, NO_ARG,
    0, 0, 0, 0, 0, 0},
   {"host", 'h', "Connect to host.", (gptr*) &host, (gptr*) &host, 0, GET_STR,

--- 1.258/libmysql/libmysql.c	2006-11-21 22:33:07 +02:00
+++ 1.259/libmysql/libmysql.c	2006-11-21 22:33:08 +02:00
@@ -176,16 +176,15 @@
   end_embedded_server();
 #endif
   /* If library called my_init(), free memory allocated by it */
+  finish_client_errs();
   if (!org_my_init_done)
   {
     my_end(MY_DONT_FREE_DBUG);
-  /* Remove TRACING, if enabled by mysql_debug() */
+    /* Remove TRACING, if enabled by mysql_debug() */
     DBUG_POP();
   }
   else
     mysql_thread_end();
-  finish_client_errs();
-  free_charsets();
   vio_end();
   mysql_client_init= org_my_init_done= 0;
 #ifdef EMBEDDED_SERVER

--- 1.331/mysql-test/mysql-test-run-shell.sh	2006-11-21 22:33:08 +02:00
+++ 1.332/mysql-test/mysql-test-run-shell.sh	2006-11-21 22:33:08 +02:00
@@ -882,15 +882,15 @@
 # Save path and name of mysqldump
 MYSQL_DUMP_DIR="$MYSQL_DUMP"
 export MYSQL_DUMP_DIR
-MYSQL_CHECK="$MYSQL_CHECK --no-defaults -uroot --socket=$MASTER_MYSOCK --password=$DBPASSWD $EXTRA_MYSQLCHECK_OPT"
-MYSQL_DUMP="$MYSQL_DUMP --no-defaults -uroot --socket=$MASTER_MYSOCK --password=$DBPASSWD $EXTRA_MYSQLDUMP_OPT"
+MYSQL_CHECK="$MYSQL_CHECK --no-defaults --debug-info -uroot --socket=$MASTER_MYSOCK --password=$DBPASSWD $EXTRA_MYSQLCHECK_OPT"
+MYSQL_DUMP="$MYSQL_DUMP --no-defaults --debug-info -uroot --socket=$MASTER_MYSOCK --password=$DBPASSWD $EXTRA_MYSQLDUMP_OPT"
 MYSQL_SLAP="$MYSQL_SLAP -uroot --socket=$MASTER_MYSOCK --password=$DBPASSWD $EXTRA_MYSQLSLAP_OPT"
 MYSQL_DUMP_SLAVE="$MYSQL_DUMP_DIR --no-defaults -uroot --socket=$SLAVE_MYSOCK --password=$DBPASSWD $EXTRA_MYSQLDUMP_OPT"
-MYSQL_SHOW="$MYSQL_SHOW -uroot --socket=$MASTER_MYSOCK --password=$DBPASSWD $EXTRA_MYSQLSHOW_OPT"
-MYSQL_BINLOG="$MYSQL_BINLOG --no-defaults --local-load=$MYSQL_TMP_DIR  --character-sets-dir=$CHARSETSDIR $EXTRA_MYSQLBINLOG_OPT"
-MYSQL_IMPORT="$MYSQL_IMPORT -uroot --socket=$MASTER_MYSOCK --password=$DBPASSWD $EXTRA_MYSQLDUMP_OPT"
+MYSQL_SHOW="$MYSQL_SHOW --no-defaults --debug-info -uroot --socket=$MASTER_MYSOCK --password=$DBPASSWD $EXTRA_MYSQLSHOW_OPT"
+MYSQL_BINLOG="$MYSQL_BINLOG --debug-info --no-defaults --local-load=$MYSQL_TMP_DIR  --character-sets-dir=$CHARSETSDIR $EXTRA_MYSQLBINLOG_OPT"
+MYSQL_IMPORT="$MYSQL_IMPORT --debug-info -uroot --socket=$MASTER_MYSOCK --password=$DBPASSWD $EXTRA_MYSQLDUMP_OPT"
 MYSQL_FIX_SYSTEM_TABLES="$MYSQL_FIX_SYSTEM_TABLES --no-defaults --host=localhost --port=$MASTER_MYPORT --socket=$MASTER_MYSOCK --user=root --password=$DBPASSWD --basedir=$BASEDIR --bindir=$CLIENT_BINDIR --verbose"
-MYSQL="$MYSQL --no-defaults --host=localhost --port=$MASTER_MYPORT --socket=$MASTER_MYSOCK --user=root --password=$DBPASSWD"
+MYSQL="$MYSQL --no-defaults --debug-info --host=localhost --port=$MASTER_MYPORT --socket=$MASTER_MYSOCK --user=root --password=$DBPASSWD"
 export MYSQL MYSQL_CHECK MYSQL_DUMP MYSQL_DUMP_SLAVE MYSQL_SHOW MYSQL_BINLOG MYSQL_FIX_SYSTEM_TABLES MYSQL_IMPORT
 export CLIENT_BINDIR MYSQL_CLIENT_TEST CHARSETSDIR MYSQL_MY_PRINT_DEFAULTS
 export MYSQL_SLAP
@@ -1263,8 +1263,8 @@
 
 rm_ndbcluster_tables()
 {
-  $RM -f $1/cluster/apply_status*
-  $RM -f $1/cluster/schema*
+  $RM -f $1/mysql/apply_status*
+  $RM -f $1/mysql/schema*
 }
 
 stop_ndbcluster()

--- 1.22/mysys/my_error.c	2006-11-21 22:33:08 +02:00
+++ 1.23/mysys/my_error.c	2006-11-21 22:33:08 +02:00
@@ -252,3 +252,15 @@
   
   return errmsgs;
 }
+
+
+void my_error_unregister_all(void)
+{
+  struct my_err_head    *list, *next;
+  for (list= my_errmsgs_globerrs.meh_next; list; list= next)
+  {
+    next= list->meh_next;
+    my_free((gptr) list, MYF(0));
+  }
+  my_errmsgs_list= &my_errmsgs_globerrs;
+}

--- 1.52/mysys/my_init.c	2006-11-21 22:33:08 +02:00
+++ 1.53/mysys/my_init.c	2006-11-21 22:33:08 +02:00
@@ -154,6 +154,7 @@
     }
   }
   free_charsets();
+  my_error_unregister_all();
   my_once_free();
 
   if ((infoflag & MY_GIVE_INFO) || print_info)
@@ -208,7 +209,8 @@
     Check on destroying of mutexes. A few may be left that will get cleaned
     up by C++ destructors
   */
-  safe_mutex_end(infoflag & MY_GIVE_INFO ? stderr : (FILE *) 0);
+  safe_mutex_end((infoflag & (MY_GIVE_INFO | MY_CHECK_ERROR)) ? stderr :
+                 (FILE *) 0);
 #endif /* defined(SAFE_MUTEX) */
 #endif /* THREAD */
 

--- 1.12/mysys/mysys_priv.h	2006-11-21 22:33:08 +02:00
+++ 1.13/mysys/mysys_priv.h	2006-11-21 22:33:08 +02:00
@@ -41,3 +41,5 @@
 #ifndef EDQUOT
 #define EDQUOT (-1)
 #endif
+
+void my_error_unregister_all(void);

--- 1.346/sql/field.cc	2006-11-21 22:33:08 +02:00
+++ 1.347/sql/field.cc	2006-11-21 22:33:08 +02:00
@@ -1237,12 +1237,6 @@
 }
 
 
-uint Field::offset()
-{
-  return (uint) (ptr - (char*) table->record[0]);
-}
-
-
 void Field::hash(ulong *nr, ulong *nr2)
 {
   if (is_null())

--- 1.190/sql/field.h	2006-11-21 22:33:08 +02:00
+++ 1.191/sql/field.h	2006-11-21 22:33:08 +02:00
@@ -342,7 +342,10 @@
   virtual int pack_cmp(const char *b, uint key_length_arg,
                        my_bool insert_or_update)
   { return cmp(ptr,b); }
-  uint offset();			// Should be inline ...
+  uint offset(byte *record)
+  {
+    return (uint) (ptr - (char*) record);
+  }
   void copy_from_tmp(int offset);
   uint fill_cache_field(struct st_cache_field *copy);
   virtual bool get_date(TIME *ltime,uint fuzzydate);

--- 1.61/sql/field_conv.cc	2006-11-21 22:33:08 +02:00
+++ 1.62/sql/field_conv.cc	2006-11-21 22:33:08 +02:00
@@ -119,12 +119,12 @@
     return 0;
   }
   field->reset();
-  if (current_thd->count_cuted_fields == CHECK_FIELD_WARN)
+  if (field->table->in_use->count_cuted_fields == CHECK_FIELD_WARN)
   {
     field->set_warning(MYSQL_ERROR::WARN_LEVEL_WARN, WARN_DATA_TRUNCATED, 1);
     return 0;
   }
-  if (!current_thd->no_errors)
+  if (!field->table->in_use->no_errors)
     my_error(ER_BAD_NULL_ERROR, MYF(0), field->field_name);
   return -1;
 }
@@ -176,12 +176,12 @@
     field->table->auto_increment_field_not_null= FALSE;
     return 0;					// field is set in handler.cc
   }
-  if (current_thd->count_cuted_fields == CHECK_FIELD_WARN)
+  if (field->table->in_use->count_cuted_fields == CHECK_FIELD_WARN)
   {
     field->set_warning(MYSQL_ERROR::WARN_LEVEL_WARN, ER_BAD_NULL_ERROR, 1);
     return 0;
   }
-  if (!current_thd->no_errors)
+  if (!field->table->in_use->no_errors)
     my_error(ER_BAD_NULL_ERROR, MYF(0), field->field_name);
   return -1;
 }
@@ -403,7 +403,7 @@
   if (length > copy->to_length- 1)
   {
     length=copy->to_length - 1;
-    if (current_thd->count_cuted_fields)
+    if (copy->from_field->table->in_use->count_cuted_fields)
       copy->to_field->set_warning(MYSQL_ERROR::WARN_LEVEL_WARN,
                                   WARN_DATA_TRUNCATED, 1);
   }
@@ -418,7 +418,7 @@
   if (length > copy->to_length- HA_KEY_BLOB_LENGTH)
   {
     length=copy->to_length-HA_KEY_BLOB_LENGTH;
-    if (current_thd->count_cuted_fields)
+    if (copy->from_field->table->in_use->count_cuted_fields)
       copy->to_field->set_warning(MYSQL_ERROR::WARN_LEVEL_WARN,
                                   WARN_DATA_TRUNCATED, 1);
   }

--- 1.199/storage/myisam/ha_myisam.cc	2006-11-21 22:33:08 +02:00
+++ 1.200/storage/myisam/ha_myisam.cc	2006-11-21 22:33:08 +02:00
@@ -609,7 +609,7 @@
     {
       param.testflag&= ~T_RETRY_WITHOUT_QUICK;
       sql_print_information("Retrying repair of: '%s' without quick",
-                            table->s->path);
+                            table->s->path.str);
       continue;
     }
     param.testflag&= ~T_QUICK;
@@ -617,7 +617,7 @@
     {
       param.testflag= (param.testflag & ~T_REP_BY_SORT) | T_REP;
       sql_print_information("Retrying repair of: '%s' with keycache",
-                            table->s->path);
+                            table->s->path.str);
       continue;
     }
     break;
@@ -629,7 +629,7 @@
     sql_print_information("Found %s of %s rows when repairing '%s'",
                           llstr(file->state->records, llbuff),
                           llstr(start_records, llbuff2),
-                          table->s->path);
+                          table->s->path.str);
   }
   return error;
 }
@@ -1157,7 +1157,7 @@
   // Don't use quick if deleted rows
   if (!file->state->del && (myisam_recover_options & HA_RECOVER_QUICK))
     check_opt.flags|=T_QUICK;
-  sql_print_warning("Checking table:   '%s'",table->s->path);
+  sql_print_warning("Checking table:   '%s'",table->s->path.str);
 
   old_query= thd->query;
   old_query_length= thd->query_length;
@@ -1168,7 +1168,7 @@
 
   if ((marked_crashed= mi_is_crashed(file)) || check(thd, &check_opt))
   {
-    sql_print_warning("Recovering table: '%s'",table->s->path);
+    sql_print_warning("Recovering table: '%s'",table->s->path.str);
     check_opt.flags=
       ((myisam_recover_options & HA_RECOVER_BACKUP ? T_BACKUP_DATA : 0) |
        (marked_crashed                             ? 0 : T_QUICK) |
@@ -1460,6 +1460,7 @@
   bool found_real_auto_increment=0;
   enum ha_base_keytype type;
   char buff[FN_REFLEN];
+  byte *record;
   KEY *pos;
   MI_KEYDEF *keydef;
   MI_COLUMNDEF *recinfo,*recinfo_pos;
@@ -1564,6 +1565,7 @@
     found_real_auto_increment= share->next_number_key_offset == 0;
   }
 
+  record= table_arg->record[0];
   recpos=0; recinfo_pos=recinfo;
   while (recpos < (uint) share->reclength)
   {
@@ -1573,7 +1575,7 @@
 
     for (field=table_arg->field ; *field ; field++)
     {
-      if ((fieldpos=(*field)->offset()) >= recpos &&
+      if ((fieldpos=(*field)->offset(record)) >= recpos &&
 	  fieldpos <= minpos)
       {
 	/* skip null fields */

--- 1.78/storage/myisam/ha_myisam.h	2006-11-21 22:33:08 +02:00
+++ 1.79/storage/myisam/ha_myisam.h	2006-11-21 22:33:08 +02:00
@@ -37,7 +37,7 @@
 class ha_myisam: public handler
 {
   MI_INFO *file;
-  ulong   int_table_flags;
+  ulonglong int_table_flags;
   char    *data_file_name, *index_file_name;
   bool can_enable_indexes;
   int repair(THD *thd, MI_CHECK &param, bool optimize);

--- 1.193/sql/item_sum.cc	2006-11-21 22:33:08 +02:00
+++ 1.194/sql/item_sum.cc	2006-11-21 22:33:08 +02:00
@@ -2928,13 +2928,14 @@
     */
     Field *field= (*field_item)->get_tmp_table_field();
     /* 
-      If field_item is a const item then either get_tp_table_field returns 0
+      If field_item is a const item then either get_tmp_table_field returns 0
       or it is an item over a const table. 
     */
     if (field && !(*field_item)->const_item())
     {
       int res;
-      uint offset= field->offset() - table->s->null_bytes;
+      uint offset= (field->offset(field->table->record[0]) - 
+                    table->s->null_bytes);
       if ((res= field->cmp((char *) key1 + offset, (char *) key2 + offset)))
 	return res;
     }
@@ -2972,7 +2973,8 @@
     if (field && !item->const_item())
     {
       int res;
-      uint offset= field->offset() - table->s->null_bytes;
+      uint offset= (field->offset(field->table->record[0]) -
+                    table->s->null_bytes);
       if ((res= field->cmp((char *) key1 + offset, (char *) key2 + offset)))
         return (*order_item)->asc ? res : -res;
     }
@@ -3039,7 +3041,8 @@
         because it contains both order and arg list fields.
       */
       Field *field= (*arg)->get_tmp_table_field();
-      uint offset= field->offset() - table->s->null_bytes;
+      uint offset= (field->offset(field->table->record[0]) -
+                    table->s->null_bytes);
       DBUG_ASSERT(offset < table->s->reclength);
       res= field->val_str(&tmp, (char *) key + offset);
     }

--- 1.45/sql/key.cc	2006-11-21 22:33:08 +02:00
+++ 1.46/sql/key.cc	2006-11-21 22:33:08 +02:00
@@ -19,37 +19,54 @@
 
 #include "mysql_priv.h"
 
-	/*
-	** Search after with key field is. If no key starts with field test
-	** if field is part of some key.
-	**
-	** returns number of key. keylength is set to length of key before
-	** (not including) field
-	** Used when calculating key for NEXT_NUMBER
-	*/
+/*
+  Search after a key that starts with 'field'
 
-int find_ref_key(KEY *key, uint key_count, Field *field, uint *key_length)
+  SYNOPSIS
+    find_ref_key()
+    key			First key to check
+    key_count		How many keys to check
+    record		Start of record
+    field		Field to search after
+    key_length		On partial match, contains length of fields before
+			field
+
+  NOTES
+   Used when calculating key for NEXT_NUMBER
+
+  IMPLEMENTATION
+    If no key starts with field test if field is part of some key. If we find
+    one, then return first key and set key_length to the number of bytes
+    preceding 'field'.
+
+  RETURN
+   -1  field is not part of the key
+   #   Key part for key matching key.
+       key_length is set to length of key before (not including) field
+*/
+
+int find_ref_key(KEY *key, uint key_count, byte *record, Field *field,
+                 uint *key_length)
 {
   reg2 int i;
   reg3 KEY *key_info;
   uint fieldpos;
 
-  fieldpos=    field->offset();
-
-	/* Test if some key starts as fieldpos */
+  fieldpos= field->offset(record);
 
+  /* Test if some key starts as fieldpos */
   for (i= 0, key_info= key ;
        i < (int) key_count ;
        i++, key_info++)
   {
     if (key_info->key_part[0].offset == fieldpos)
-    {						/* Found key. Calc keylength */
+    {                                  		/* Found key. Calc keylength */
       *key_length=0;
-      return(i);			/* Use this key */
+      return(i);                                /* Use this key */
     }
   }
-	/* Test if some key contains fieldpos */
 
+  /* Test if some key contains fieldpos */
   for (i= 0, key_info= key;
        i < (int) key_count ;
        i++, key_info++)
@@ -62,7 +79,7 @@
 	 j++, key_part++)
     {
       if (key_part->offset == fieldpos)
-	return(i);			/* Use this key */
+	return(i);                              /* Use this key */
       *key_length+=key_part->store_length;
     }
   }

--- 1.454/sql/mysql_priv.h	2006-11-21 22:33:08 +02:00
+++ 1.455/sql/mysql_priv.h	2006-11-21 22:33:08 +02:00
@@ -1427,7 +1427,8 @@
 #endif
 void mysql_print_status();
 /* key.cc */
-int find_ref_key(KEY *key, uint key_count, Field *field, uint *key_length);
+int find_ref_key(KEY *key, uint key_count, byte *record, Field *field,
+                 uint *key_length);
 void key_copy(byte *to_key, byte *from_record, KEY *key_info, uint key_length);
 void key_restore(byte *to_record, byte *from_key, KEY *key_info,
                  uint key_length);

--- 1.134/client/mysqlbinlog.cc	2006-11-21 22:33:08 +02:00
+++ 1.135/client/mysqlbinlog.cc	2006-11-21 22:33:08 +02:00
@@ -66,7 +66,7 @@
 static bool opt_hexdump= 0;
 static bool opt_base64_output= 0;
 static const char* database= 0;
-static my_bool force_opt= 0, short_form= 0, remote_opt= 0;
+static my_bool force_opt= 0, short_form= 0, remote_opt= 0, info_flag;
 static ulonglong offset = 0;
 static const char* host = 0;
 static int port= 0;
@@ -716,6 +716,8 @@
   {"debug", '#', "Output debug log.", (gptr*) &default_dbug_option,
    (gptr*) &default_dbug_option, 0, GET_STR, OPT_ARG, 0, 0, 0, 0, 0, 0},
 #endif
+  {"debug-info", OPT_DEBUG_INFO, "Print some debug info at exit.", (gptr*) &info_flag,
+   (gptr*) &info_flag, 0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0},
   {"disable-log-bin", 'D', "Disable binary log. This is useful, if you "
     "enabled --to-last-log and are sending the output to the same MySQL server. "
     "This way you could avoid an endless loop. You would also like to use it "
@@ -844,7 +846,7 @@
   va_end(args);
   cleanup();
   /* We cannot free DBUG, it is used in global destructors after exit(). */
-  my_end(MY_DONT_FREE_DBUG);
+  my_end((info_flag ? MY_CHECK_ERROR : 0) | MY_DONT_FREE_DBUG);
   exit(1);
 }
 
@@ -852,7 +854,7 @@
 
 static void print_version()
 {
-  printf("%s Ver 3.1 for %s at %s\n", my_progname, SYSTEM_TYPE, MACHINE_TYPE);
+  printf("%s Ver 3.2 for %s at %s\n", my_progname, SYSTEM_TYPE, MACHINE_TYPE);
   NETWARE_SET_SCREEN_MODE(1);
 }
 
@@ -1530,7 +1532,7 @@
   free_defaults(defaults_argv);
   my_free_open_file_info();
   /* We cannot free DBUG, it is used in global destructors after exit(). */
-  my_end(MY_DONT_FREE_DBUG);
+  my_end((info_flag ? MY_CHECK_ERROR : 0) | MY_DONT_FREE_DBUG);
   exit(exit_value);
   DBUG_RETURN(exit_value);			// Keep compilers happy
 }

--- 1.585/sql/mysqld.cc	2006-11-21 22:33:08 +02:00
+++ 1.586/sql/mysqld.cc	2006-11-21 22:33:08 +02:00
@@ -3187,7 +3187,7 @@
     using_update_log=1;
   }
 
-  if (plugin_init(0))
+  if (plugin_init(opt_bootstrap))
   {
     sql_print_error("Failed to init plugins.");
     return 1;

--- 1.294/sql/sql_class.cc	2006-11-21 22:33:08 +02:00
+++ 1.295/sql/sql_class.cc	2006-11-21 22:33:08 +02:00
@@ -2520,7 +2520,9 @@
   for (uint *ptr= beg ; ptr != end ; ++ptr)
   {
     Field_blob* const blob= (Field_blob*) table->field[*ptr];
-    length+= blob->get_length((const char *) (data + blob->offset())) + 2;
+    length+= blob->get_length((const char*) (data +
+                                             blob->offset(table->record[0]))) +
+      HA_KEY_BLOB_LENGTH;
   }
 
   return length;

--- 1.460/sql/sql_select.cc	2006-11-21 22:33:08 +02:00
+++ 1.461/sql/sql_select.cc	2006-11-21 22:33:08 +02:00
@@ -9488,7 +9488,7 @@
       bool maybe_null=(*cur_group->item)->maybe_null;
       key_part_info->null_bit=0;
       key_part_info->field=  field;
-      key_part_info->offset= field->offset();
+      key_part_info->offset= field->offset(table->record[0]);
       key_part_info->length= (uint16) field->key_length();
       key_part_info->type=   (uint8) field->key_type();
       key_part_info->key_type =
@@ -9585,7 +9585,7 @@
     {
       key_part_info->null_bit=0;
       key_part_info->field=    *reg_field;
-      key_part_info->offset=   (*reg_field)->offset();
+      key_part_info->offset=   (*reg_field)->offset(table->record[0]);
       key_part_info->length=   (uint16) (*reg_field)->pack_length();
       key_part_info->type=     (uint8) (*reg_field)->key_type();
       key_part_info->key_type =
@@ -12557,8 +12557,9 @@
     DBUG_RETURN(0);
   }
   Field **first_field=entry->field+entry->s->fields - field_count;
-  offset= field_count ? 
-          entry->field[entry->s->fields - field_count]->offset() : 0;
+  offset= (field_count ? 
+           entry->field[entry->s->fields - field_count]->
+           offset(entry->record[0]) : 0);
   reclength=entry->s->reclength-offset;
 
   free_io_cache(entry);				// Safety

--- 1.248/sql/table.cc	2006-11-21 22:33:08 +02:00
+++ 1.249/sql/table.cc	2006-11-21 22:33:08 +02:00
@@ -30,7 +30,7 @@
                            uchar *head, File file);
 static void fix_type_pointers(const char ***array, TYPELIB *point_to_type,
 			      uint types, char **names);
-static uint find_field(Field **fields, uint start, uint length);
+static uint find_field(Field **fields, byte *record, uint start, uint length);
 
 
 /* Get column name from column hash */
@@ -1070,6 +1070,7 @@
         Field *field;
 	if (new_field_pack_flag <= 1)
 	  key_part->fieldnr= (uint16) find_field(share->field,
+                                                 share->default_values,
                                                  (uint) key_part->offset,
                                                  (uint) key_part->length);
 	if (!key_part->fieldnr)
@@ -1233,24 +1234,19 @@
 
   if (share->found_next_number_field)
   {
-    /*
-      We must have a table object for find_ref_key to calculate field offset
-    */
-    TABLE tmp_table;
-    tmp_table.record[0]= share->default_values;
-
     reg_field= *share->found_next_number_field;
-    reg_field->table= &tmp_table;
     if ((int) (share->next_number_index= (uint)
-	       find_ref_key(share->key_info, share->keys, reg_field,
+	       find_ref_key(share->key_info, share->keys,
+                            share->default_values, reg_field,
 			    &share->next_number_key_offset)) < 0)
     {
+      /* Wrong field definition */
+      DBUG_ASSERT(0);
       reg_field->unireg_check= Field::NONE;	/* purecov: inspected */
       share->found_next_number_field= 0;
     }
     else
       reg_field->flags |= AUTO_INCREMENT_FLAG;
-    reg_field->table= 0;
   }
 
   if (share->blob_fields)
@@ -1970,7 +1966,7 @@
    #  field number +1
 */
 
-static uint find_field(Field **fields, uint start, uint length)
+static uint find_field(Field **fields, byte *record, uint start, uint length)
 {
   Field **field;
   uint i, pos;
@@ -1978,7 +1974,7 @@
   pos= 0;
   for (field= fields, i=1 ; *field ; i++,field++)
   {
-    if ((*field)->offset() == start)
+    if ((*field)->offset(record) == start)
     {
       if ((*field)->key_length() == length)
 	return (i);

--- 1.4/mysql-test/r/upgrade.result	2006-11-21 22:33:08 +02:00
+++ 1.5/mysql-test/r/upgrade.result	2006-11-21 22:33:08 +02:00
@@ -57,3 +57,5 @@
 1
 drop table `txu@0023p@0023p1`;
 drop table `txu#p#p1`;
+truncate t1;
+drop table t1;

--- 1.4/mysql-test/t/upgrade.test	2006-11-21 22:33:08 +02:00
+++ 1.5/mysql-test/t/upgrade.test	2006-11-21 22:33:08 +02:00
@@ -47,3 +47,12 @@
 select * from `txu#p#p1`;
 drop table `txu@0023p@0023p1`;
 drop table `txu#p#p1`;
+
+#
+# Check if old tables work
+#
+
+system cp $MYSQL_TEST_DIR/std_data/old_table-323.frm $MYSQLTEST_VARDIR/master-data/test/t1.frm;
+truncate t1;
+drop table t1;
+

--- 1.5/mysql-test/r/schema.result	2006-11-21 22:33:08 +02:00
+++ 1.6/mysql-test/r/schema.result	2006-11-21 22:33:08 +02:00
@@ -6,7 +6,6 @@
 show schemas;
 Database
 information_schema
-cluster
 foo
 mysql
 test

--- 1.109/storage/archive/ha_archive.cc	2006-11-21 22:33:08 +02:00
+++ 1.110/storage/archive/ha_archive.cc	2006-11-21 22:33:08 +02:00
@@ -817,10 +817,11 @@
   int rc;
   byte *read_buf= NULL;
   ulonglong temp_auto;
+  byte *record=  table->record[0];
   DBUG_ENTER("ha_archive::write_row");
 
   if (share->crashed)
-      DBUG_RETURN(HA_ERR_CRASHED_ON_USAGE);
+    DBUG_RETURN(HA_ERR_CRASHED_ON_USAGE);
 
   ha_statistic_increment(&SSV::ha_write_count);
   if (table->timestamp_field_type & TIMESTAMP_AUTO_SET_ON_INSERT)
@@ -883,7 +884,8 @@
 
       while (!(get_row(&archive, read_buf)))
       {
-        if (!memcmp(read_buf + mfield->offset(), table->next_number_field->ptr,
+        if (!memcmp(read_buf + mfield->offset(record),
+                    table->next_number_field->ptr,
                     mfield->max_length()))
         {
           rc= HA_ERR_FOUND_DUPP_KEY;
@@ -914,15 +916,16 @@
   for (Field **field=table->field ; *field ; field++)
   {
     DBUG_PRINT("archive",("Pack is %d\n", (*field)->pack_length()));
-    DBUG_PRINT("archive",("MyPack is %d\n", (*field)->data_length((char*) buf + (*field)->offset())));
+    DBUG_PRINT("archive",("MyPack is %d\n", (*field)->data_length((char*) buf + (*field)->offset(record))));
     if ((*field)->real_type() == MYSQL_TYPE_VARCHAR) 
     {
-      uint actual_length= (*field)->data_length((char*) buf + (*field)->offset());
-      uint offset= (*field)->offset() + actual_length + 
+      uint actual_length= (*field)->data_length((char*) buf +
+                                                (*field)->offset(record));
+      uint offset= (*field)->offset(record) + actual_length + 
         (actual_length > 255 ? 2 : 1);
       DBUG_PRINT("archive",("Offset is %d -> %d\n", actual_length, offset));
       /*
-      if ((*field)->pack_length() + (*field)->offset() != offset)
+      if ((*field)->pack_length() + (*field)->offset(record) != offset)
         bzero(buf + offset, (size_t)((*field)->pack_length() + (actual_length > 255 ? 2 : 1) - (*field)->data_length));
     */
     }
@@ -1306,7 +1309,8 @@
         {
           Field *field= table->found_next_number_field;
           ulonglong auto_value=
-            (ulonglong) field->val_int((char*)(buf + field->offset()));
+            (ulonglong) field->val_int((char*)(buf +
+                                               field->offset(table->record[0])));
           if (share->auto_increment_value < auto_value)
             stats.auto_increment_value= share->auto_increment_value=
               auto_value;

--- 1.135/mysql-test/r/information_schema.result	2006-11-21 22:33:08 +02:00
+++ 1.136/mysql-test/r/information_schema.result	2006-11-21 22:33:08 +02:00
@@ -14,7 +14,6 @@
 select schema_name from information_schema.schemata;
 schema_name
 information_schema
-cluster
 mysql
 test
 show databases like 't%';
@@ -23,7 +22,6 @@
 show databases;
 Database
 information_schema
-cluster
 mysql
 test
 show databases where `database` = 't%';
@@ -35,7 +33,7 @@
 create table mysqltest.t4(a int);
 create table t5 (id int auto_increment primary key);
 insert into t5 values (10);
-create view v1 (c) as select table_name from information_schema.TABLES where table_schema!='cluster';
+create view v1 (c) as select table_name from information_schema.TABLES where table_name<>'binlog_index' AND table_name<>'apply_status';
 select * from v1;
 c
 CHARACTER_SETS
@@ -352,7 +350,6 @@
 select * from v0;
 c
 information_schema
-cluster
 mysql
 test
 explain select * from v0;
@@ -851,7 +848,7 @@
 delete from mysql.user where user='mysqltest_4';
 delete from mysql.db where user='mysqltest_4';
 flush privileges;
-SELECT table_schema, count(*) FROM information_schema.TABLES where TABLE_SCHEMA!='cluster' GROUP BY TABLE_SCHEMA;
+SELECT table_schema, count(*) FROM information_schema.TABLES where table_name<>'binlog_index' AND table_name<>'apply_status' GROUP BY TABLE_SCHEMA;
 table_schema	count(*)
 information_schema	27
 mysql	21

--- 1.86/mysql-test/t/information_schema.test	2006-11-21 22:33:08 +02:00
+++ 1.87/mysql-test/t/information_schema.test	2006-11-21 22:33:08 +02:00
@@ -37,7 +37,7 @@
 create table mysqltest.t4(a int);
 create table t5 (id int auto_increment primary key);
 insert into t5 values (10);
-create view v1 (c) as select table_name from information_schema.TABLES where table_schema!='cluster';
+create view v1 (c) as select table_name from information_schema.TABLES where table_name<>'binlog_index' AND table_name<>'apply_status';
 select * from v1;
 
 select c,table_name from v1 
@@ -528,7 +528,7 @@
 # Bug #9404  information_schema: Weird error messages
 # with SELECT SUM() ... GROUP BY queries
 #
-SELECT table_schema, count(*) FROM information_schema.TABLES where TABLE_SCHEMA!='cluster' GROUP BY TABLE_SCHEMA;
+SELECT table_schema, count(*) FROM information_schema.TABLES where table_name<>'binlog_index' AND table_name<>'apply_status' GROUP BY TABLE_SCHEMA;
 
 
 #

--- 1.10/mysql-test/r/mysqlcheck.result	2006-11-21 22:33:08 +02:00
+++ 1.11/mysql-test/r/mysqlcheck.result	2006-11-21 22:33:08 +02:00
@@ -2,7 +2,7 @@
 DROP SCHEMA test;
 CREATE SCHEMA test;
 use test;
-cluster.binlog_index                               OK
+mysql.binlog_index                                 OK
 mysql.columns_priv                                 OK
 mysql.db                                           OK
 mysql.event                                        OK
@@ -26,6 +26,7 @@
 mysql.time_zone_transition                         OK
 mysql.time_zone_transition_type                    OK
 mysql.user                                         OK
+mysql.binlog_index                                 OK
 mysql.columns_priv                                 OK
 mysql.db                                           OK
 mysql.event                                        OK

--- 1.62/mysql-test/r/ps_1general.result	2006-11-21 22:33:08 +02:00
+++ 1.63/mysql-test/r/ps_1general.result	2006-11-21 22:33:08 +02:00
@@ -259,7 +259,6 @@
 execute stmt4;
 Database
 information_schema
-cluster
 mysql
 test
 prepare stmt4 from ' show tables from test like ''t2%'' ';

--- 1.22/mysql-test/r/rpl_loaddata_m.result	2006-11-21 22:33:08 +02:00
+++ 1.23/mysql-test/r/rpl_loaddata_m.result	2006-11-21 22:33:08 +02:00
@@ -21,7 +21,6 @@
 SHOW DATABASES;
 Database
 information_schema
-cluster
 mysql
 mysqltest
 test

--- 1.8/client/mysql_upgrade.c	2006-11-21 22:33:08 +02:00
+++ 1.9/client/mysql_upgrade.c	2006-11-21 22:33:08 +02:00
@@ -418,6 +418,6 @@
 err_exit:
   if (upgrade_defaults_created)
     my_delete(upgrade_defaults_path, MYF(0));
-  my_end(info_flag ? MY_CHECK_ERROR | MY_GIVE_INFO : 0);
+  my_end(info_flag ? MY_CHECK_ERROR : 0);
   return error;
 }                                               /* main */

--- 1.59/client/mysqlcheck.c	2006-11-21 22:33:08 +02:00
+++ 1.60/client/mysqlcheck.c	2006-11-21 22:33:08 +02:00
@@ -16,7 +16,7 @@
 
 /* By Jani Tolonen, 2001-04-20, MySQL Development Team */
 
-#define CHECK_VERSION "2.4.4"
+#define CHECK_VERSION "2.4.5"
 
 #include "client_priv.h"
 #include <m_ctype.h>
@@ -34,7 +34,7 @@
                opt_compress = 0, opt_databases = 0, opt_fast = 0,
                opt_medium_check = 0, opt_quick = 0, opt_all_in_1 = 0,
                opt_silent = 0, opt_auto_repair = 0, ignore_errors = 0,
-               tty_password = 0, opt_frm = 0,
+               tty_password= 0, opt_frm= 0, info_flag= 0, 
                opt_fix_table_names= 0, opt_fix_db_names= 0, opt_upgrade= 0;
 static uint verbose = 0, opt_mysql_port=0;
 static my_string opt_mysql_unix_port = 0;
@@ -96,6 +96,8 @@
   {"debug", '#', "Output debug log. Often this is 'd:t:o,filename'.",
    0, 0, 0, GET_STR, OPT_ARG, 0, 0, 0, 0, 0, 0},
 #endif
+  {"debug-info", OPT_DEBUG_INFO, "Print some debug info at exit.", (gptr*) &info_flag,
+   (gptr*) &info_flag, 0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0},
   {"default-character-set", OPT_DEFAULT_CHARSET,
    "Set the default character set.", (gptr*) &default_charset,
    (gptr*) &default_charset, 0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
@@ -761,7 +763,7 @@
   */
   if (get_options(&argc, &argv))
   {
-    my_end(0);
+    my_end(info_flag ? MY_CHECK_ERROR : 0);
     exit(EX_USAGE);
   }
   if (dbConnect(current_host, current_user, opt_password))
@@ -803,6 +805,6 @@
 #ifdef HAVE_SMEM
   my_free(shared_memory_base_name,MYF(MY_ALLOW_ZERO_PTR));
 #endif
-  my_end(0);
+  my_end(info_flag ? MY_CHECK_ERROR : 0);
   return(first_error!=0);
 } /* main */

--- 1.7/mysql-test/r/rpl_ndb_dd_advance.result	2006-11-21 22:33:08 +02:00
+++ 1.8/mysql-test/r/rpl_ndb_dd_advance.result	2006-11-21 22:33:08 +02:00
@@ -355,13 +355,13 @@
 SELECT COUNT(*) FROM history;
 COUNT(*)
 2000
-CREATE TEMPORARY TABLE IF NOT EXISTS cluster.backup_info (id INT, backup_id INT) ENGINE = HEAP;
-DELETE FROM cluster.backup_info;
-LOAD DATA INFILE '../tmp.dat' INTO TABLE cluster.backup_info FIELDS TERMINATED BY ',';
-SELECT @the_backup_id:=backup_id FROM cluster.backup_info;
+CREATE TEMPORARY TABLE IF NOT EXISTS mysql.backup_info (id INT, backup_id INT) ENGINE = HEAP;
+DELETE FROM mysql.backup_info;
+LOAD DATA INFILE '../tmp.dat' INTO TABLE mysql.backup_info FIELDS TERMINATED BY ',';
+SELECT @the_backup_id:=backup_id FROM mysql.backup_info;
 @the_backup_id:=backup_id
 <the_backup_id>
-DROP TABLE IF EXISTS cluster.backup_info;
+DROP TABLE IF EXISTS mysql.backup_info;
 ************ Restore the slave ************************
 CREATE DATABASE tpcb;
 ***** Check a few slave restore values ***************

--- 1.14/mysql-test/r/rpl_ndb_log.result	2006-11-21 22:33:08 +02:00
+++ 1.15/mysql-test/r/rpl_ndb_log.result	2006-11-21 22:33:08 +02:00
@@ -22,7 +22,7 @@
 master-bin.000001	#	Query	1	#	use `test`; create table t1(n int not null auto_increment primary key)ENGINE=NDB
 master-bin.000001	#	Query	1	#	BEGIN
 master-bin.000001	#	Table_map	1	#	table_id: # (test.t1)
-master-bin.000001	#	Table_map	1	#	table_id: # (cluster.apply_status)
+master-bin.000001	#	Table_map	1	#	table_id: # (mysql.apply_status)
 master-bin.000001	#	Write_rows	1	#	table_id: #
 master-bin.000001	#	Write_rows	1	#	table_id: # flags: STMT_END_F
 master-bin.000001	#	Query	1	#	COMMIT
@@ -30,7 +30,7 @@
 master-bin.000001	#	Query	1	#	use `test`; create table t1 (word char(20) not null)ENGINE=NDB
 master-bin.000001	#	Query	1	#	BEGIN
 master-bin.000001	#	Table_map	1	#	table_id: # (test.t1)
-master-bin.000001	#	Table_map	1	#	table_id: # (cluster.apply_status)
+master-bin.000001	#	Table_map	1	#	table_id: # (mysql.apply_status)
 master-bin.000001	#	Write_rows	1	#	table_id: #
 master-bin.000001	#	Write_rows	1	#	table_id: # flags: STMT_END_F
 master-bin.000001	#	Query	1	#	COMMIT
@@ -61,7 +61,7 @@
 master-bin.000001	#	Query	1	#	use `test`; create table t1(n int not null auto_increment primary key)ENGINE=NDB
 master-bin.000001	#	Query	1	#	BEGIN
 master-bin.000001	#	Table_map	1	#	table_id: # (test.t1)
-master-bin.000001	#	Table_map	1	#	table_id: # (cluster.apply_status)
+master-bin.000001	#	Table_map	1	#	table_id: # (mysql.apply_status)
 master-bin.000001	#	Write_rows	1	#	table_id: #
 master-bin.000001	#	Write_rows	1	#	table_id: # flags: STMT_END_F
 master-bin.000001	#	Query	1	#	COMMIT
@@ -69,7 +69,7 @@
 master-bin.000001	#	Query	1	#	use `test`; create table t1 (word char(20) not null)ENGINE=NDB
 master-bin.000001	#	Query	1	#	BEGIN
 master-bin.000001	#	Table_map	1	#	table_id: # (test.t1)
-master-bin.000001	#	Table_map	1	#	table_id: # (cluster.apply_status)
+master-bin.000001	#	Table_map	1	#	table_id: # (mysql.apply_status)
 master-bin.000001	#	Write_rows	1	#	table_id: #
 master-bin.000001	#	Write_rows	1	#	table_id: # flags: STMT_END_F
 master-bin.000001	#	Query	1	#	COMMIT
@@ -81,18 +81,18 @@
 master-bin.000002	#	Query	1	#	use `test`; create table t2 (n int)ENGINE=NDB
 master-bin.000002	#	Query	1	#	BEGIN
 master-bin.000002	#	Table_map	1	#	table_id: # (test.t2)
-master-bin.000002	#	Table_map	1	#	table_id: # (cluster.apply_status)
+master-bin.000002	#	Table_map	1	#	table_id: # (mysql.apply_status)
 master-bin.000002	#	Write_rows	1	#	table_id: #
 master-bin.000002	#	Write_rows	1	#	table_id: # flags: STMT_END_F
 master-bin.000002	#	Query	1	#	COMMIT
 show binary logs;
 Log_name	File_size
-master-bin.000001	1698
-master-bin.000002	591
+master-bin.000001	1694
+master-bin.000002	589
 start slave;
 show binary logs;
 Log_name	File_size
-slave-bin.000001	1793
+slave-bin.000001	1789
 slave-bin.000002	198
 show binlog events in 'slave-bin.000001' from 4;
 Log_name	Pos	Event_type	Server_id	End_log_pos	Info
@@ -100,7 +100,7 @@
 slave-bin.000001	#	Query	1	#	use `test`; create table t1(n int not null auto_increment primary key)ENGINE=NDB
 slave-bin.000001	#	Query	2	#	BEGIN
 slave-bin.000001	#	Table_map	2	#	table_id: # (test.t1)
-slave-bin.000001	#	Table_map	2	#	table_id: # (cluster.apply_status)
+slave-bin.000001	#	Table_map	2	#	table_id: # (mysql.apply_status)
 slave-bin.000001	#	Write_rows	2	#	table_id: #
 slave-bin.000001	#	Write_rows	2	#	table_id: # flags: STMT_END_F
 slave-bin.000001	#	Query	2	#	COMMIT
@@ -108,7 +108,7 @@
 slave-bin.000001	#	Query	1	#	use `test`; create table t1 (word char(20) not null)ENGINE=NDB
 slave-bin.000001	#	Query	2	#	BEGIN
 slave-bin.000001	#	Table_map	2	#	table_id: # (test.t1)
-slave-bin.000001	#	Table_map	2	#	table_id: # (cluster.apply_status)
+slave-bin.000001	#	Table_map	2	#	table_id: # (mysql.apply_status)
 slave-bin.000001	#	Write_rows	2	#	table_id: #
 slave-bin.000001	#	Write_rows	2	#	table_id: # flags: STMT_END_F
 slave-bin.000001	#	Query	2	#	COMMIT
@@ -120,13 +120,13 @@
 slave-bin.000002	#	Query	1	#	use `test`; create table t2 (n int)ENGINE=NDB
 slave-bin.000002	#	Query	2	#	BEGIN
 slave-bin.000002	#	Table_map	2	#	table_id: # (test.t2)
-slave-bin.000002	#	Table_map	2	#	table_id: # (cluster.apply_status)
+slave-bin.000002	#	Table_map	2	#	table_id: # (mysql.apply_status)
 slave-bin.000002	#	Write_rows	2	#	table_id: #
 slave-bin.000002	#	Write_rows	2	#	table_id: # flags: STMT_END_F
 slave-bin.000002	#	Query	2	#	COMMIT
 show slave status;
 Slave_IO_State	Master_Host	Master_User	Master_Port	Connect_Retry	Master_Log_File	Read_Master_Log_Pos	Relay_Log_File	Relay_Log_Pos	Relay_Master_Log_File	Slave_IO_Running	Slave_SQL_Running	Replicate_Do_DB	Replicate_Ignore_DB	Replicate_Do_Table	Replicate_Ignore_Table	Replicate_Wild_Do_Table	Replicate_Wild_Ignore_Table	Last_Errno	Last_Error	Skip_Counter	Exec_Master_Log_Pos	Relay_Log_Space	Until_Condition	Until_Log_File	Until_Log_Pos	Master_SSL_Allowed	Master_SSL_CA_File	Master_SSL_CA_Path	Master_SSL_Cert	Master_SSL_Cipher	Master_SSL_Key	Seconds_Behind_Master
-#	127.0.0.1	root	MASTER_PORT	1	master-bin.000002	591	#	#	master-bin.000002	Yes	Yes				#			0		0	591	#	None		0	No						#
+#	127.0.0.1	root	MASTER_PORT	1	master-bin.000002	589	#	#	master-bin.000002	Yes	Yes				#			0		0	589	#	None		0	No						#
 show binlog events in 'slave-bin.000005' from 4;
 ERROR HY000: Error when executing command SHOW BINLOG EVENTS: Could not find target log
 DROP TABLE t1;

--- 1.7/mysql-test/t/rpl_ndb_dd_advance.test	2006-11-21 22:33:08 +02:00
+++ 1.8/mysql-test/t/rpl_ndb_dd_advance.test	2006-11-21 22:33:08 +02:00
@@ -436,19 +436,19 @@
 
 --exec $NDB_TOOLS_DIR/ndb_select_all --ndb-connectstring="localhost:$NDBCLUSTER_PORT" -d sys --delimiter=',' SYSTAB_0 | grep 520093696 > $MYSQLTEST_VARDIR/tmp.dat
 
-CREATE TEMPORARY TABLE IF NOT EXISTS cluster.backup_info (id INT, backup_id INT) ENGINE = HEAP;
+CREATE TEMPORARY TABLE IF NOT EXISTS mysql.backup_info (id INT, backup_id INT) ENGINE = HEAP;
 
-DELETE FROM cluster.backup_info;
+DELETE FROM mysql.backup_info;
 
-LOAD DATA INFILE '../tmp.dat' INTO TABLE cluster.backup_info FIELDS TERMINATED BY ',';
+LOAD DATA INFILE '../tmp.dat' INTO TABLE mysql.backup_info FIELDS TERMINATED BY ',';
 --exec rm $MYSQLTEST_VARDIR/tmp.dat || true
 --replace_column 1 <the_backup_id>
 
-SELECT @the_backup_id:=backup_id FROM cluster.backup_info;
+SELECT @the_backup_id:=backup_id FROM mysql.backup_info;
 
 let the_backup_id=`select @the_backup_id`;
 
-DROP TABLE IF EXISTS cluster.backup_info;
+DROP TABLE IF EXISTS mysql.backup_info;
 #RESET MASTER;
 
 --echo ************ Restore the slave ************************

--- 1.27/mysql-test/lib/init_db.sql	2006-11-21 22:33:08 +02:00
+++ 1.28/mysql-test/lib/init_db.sql	2006-11-21 22:33:08 +02:00
@@ -634,5 +634,4 @@
   PRIMARY KEY  (db, name)
 ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT 'Events';
 
-CREATE DATABASE IF NOT EXISTS cluster;
-CREATE TABLE IF NOT EXISTS cluster.binlog_index (Position BIGINT UNSIGNED NOT NULL, File VARCHAR(255) NOT NULL, epoch BIGINT UNSIGNED NOT NULL, inserts BIGINT UNSIGNED NOT NULL, updates BIGINT UNSIGNED NOT NULL, deletes BIGINT UNSIGNED NOT NULL, schemaops BIGINT UNSIGNED NOT NULL, PRIMARY KEY(epoch)) ENGINE=MYISAM;
+CREATE TABLE IF NOT EXISTS mysql.binlog_index (Position BIGINT UNSIGNED NOT NULL, File VARCHAR(255) NOT NULL, epoch BIGINT UNSIGNED NOT NULL, inserts BIGINT UNSIGNED NOT NULL, updates BIGINT UNSIGNED NOT NULL, deletes BIGINT UNSIGNED NOT NULL, schemaops BIGINT UNSIGNED NOT NULL, PRIMARY KEY(epoch)) ENGINE=MYISAM;

--- 1.33/mysql-test/lib/mtr_report.pl	2006-11-21 22:33:08 +02:00
+++ 1.34/mysql-test/lib/mtr_report.pl	2006-11-21 22:33:08 +02:00
@@ -38,7 +38,7 @@
 
   my $reject_file=  "r/$tname.reject";
   my $result_file=  "r/$tname.result";
-  my $log_file=  "r/$tname.log";
+  my $log_file=     "$::opt_vardir/log/$tname.log";
   my $eval_file=    "r/$tname.eval";
 
   if ( $::opt_suite ne "main" )
@@ -251,6 +251,7 @@
       foreach my $pattern ( "^Warning:", "^Error:", "^==.* at 0x",
 			    "InnoDB: Warning", "missing DBUG_RETURN",
 			    "mysqld: Warning",
+			    "allocated at line",
 			    "Attempting backtrace", "Assertion .* failed" )
       {
         foreach my $errlog ( sort glob("$::opt_vardir/log/*.err") )

--- 1.192/mysql-test/mysql-test-run.pl	2006-11-21 22:33:08 +02:00
+++ 1.193/mysql-test/mysql-test-run.pl	2006-11-21 22:33:08 +02:00
@@ -1330,7 +1330,7 @@
 sub generate_cmdline_mysqldump ($) {
   my($mysqld) = @_;
   return
-    "$exe_mysqldump --no-defaults -uroot " .
+    "$exe_mysqldump --no-defaults --debug-info -uroot " .
       "--port=$mysqld->{'port'} " .
       "--socket=$mysqld->{'path_sock'} --password=";
 }
@@ -1468,7 +1468,7 @@
   # Setup env so childs can execute mysqlcheck
   # ----------------------------------------------------
   my $cmdline_mysqlcheck=
-    "$exe_mysqlcheck --no-defaults -uroot " .
+    "$exe_mysqlcheck --no-defaults --debug-info -uroot " .
     "--port=$master->[0]->{'port'} " .
     "--socket=$master->[0]->{'path_sock'} --password=";
 
@@ -1519,7 +1519,7 @@
   # Setup env so childs can execute mysqlimport
   # ----------------------------------------------------
   my $cmdline_mysqlimport=
-    "$exe_mysqlimport -uroot " .
+    "$exe_mysqlimport --debug-info -uroot " .
     "--port=$master->[0]->{'port'} " .
     "--socket=$master->[0]->{'path_sock'} --password=";
 
@@ -1535,7 +1535,7 @@
   # Setup env so childs can execute mysqlshow
   # ----------------------------------------------------
   my $cmdline_mysqlshow=
-    "$exe_mysqlshow -uroot " .
+    "$exe_mysqlshow --debug-info -uroot " .
     "--port=$master->[0]->{'port'} " .
     "--socket=$master->[0]->{'path_sock'} --password=";
 
@@ -1551,7 +1551,7 @@
   # ----------------------------------------------------
   my $cmdline_mysqlbinlog=
     "$exe_mysqlbinlog" .
-      " --no-defaults --local-load=$opt_tmpdir" .
+      " --no-defaults --debug-info --local-load=$opt_tmpdir" .
       " --character-sets-dir=$path_charsetsdir";
 
   if ( $opt_debug )
@@ -1565,7 +1565,7 @@
   # Setup env so childs can execute mysql
   # ----------------------------------------------------
   my $cmdline_mysql=
-    "$exe_mysql --no-defaults --host=localhost  --user=root --password= " .
+    "$exe_mysql --no-defaults --debug-info --host=localhost  --user=root --password= " .
     "--port=$master->[0]->{'port'} " .
     "--socket=$master->[0]->{'path_sock'} ".
     "--character-sets-dir=$path_charsetsdir";
@@ -2116,8 +2116,8 @@
 
 sub rm_ndbcluster_tables ($) {
   my $dir=       shift;
-  foreach my $bin ( glob("$dir/cluster/apply_status*"),
-                    glob("$dir/cluster/schema*") )
+  foreach my $bin ( glob("$dir/mysql/apply_status*"),
+                    glob("$dir/mysql/schema*") )
   {
     unlink($bin);
   }
@@ -2616,11 +2616,11 @@
   my $tname= $tinfo->{'name'};
 
   #MASV cleanup
-    # Save info from this testcase run to mysqltest.log
-    my $testcase_log= mtr_fromfile($path_timefile) if -f $path_timefile;
-    mtr_tofile($path_mysqltest_log,"CURRENT TEST $tname\n");
-    mtr_tofile($path_mysqltest_log, $testcase_log);
-  }
+  # Save info from this testcase run to mysqltest.log
+  my $testcase_log= mtr_fromfile($path_timefile) if -f $path_timefile;
+  mtr_tofile($path_mysqltest_log,"CURRENT TEST $tname\n");
+  mtr_tofile($path_mysqltest_log, $testcase_log);
+}
 
 
 ##############################################################################
@@ -2670,6 +2670,8 @@
 
     my $res= run_mysqltest($tinfo);
     mtr_report_test_name($tinfo);
+    do_after_run_mysqltest($tinfo);
+
     if ( $res == 0 )
     {
       mtr_report_test_passed($tinfo);
@@ -2702,8 +2704,6 @@
 
       report_failure_and_restart($tinfo);
     }
-
-    do_after_run_mysqltest($tinfo);
   }
 
   # ----------------------------------------------------------------------
@@ -3643,11 +3643,11 @@
       # First wait for first mysql server to have created ndb system tables ok
       # FIXME This is a workaround so that only one mysqld creates the tables
       if ( ! sleep_until_file_created(
-	     "$master->[0]->{'path_myddir'}/cluster/apply_status.ndb",
+	     "$master->[0]->{'path_myddir'}/mysql/apply_status.ndb",
 				      $master->[0]->{'start_timeout'},
 				      $master->[0]->{'pid'}))
       {
-	mtr_report("Failed to create 'cluster/apply_status' table");
+	mtr_report("Failed to create 'mysql/apply_status' table");
 	report_failure_and_restart($tinfo);
 	return;
       }
@@ -3808,6 +3808,7 @@
   mtr_add_arg($args, "-v");
   mtr_add_arg($args, "--skip-safemalloc");
   mtr_add_arg($args, "--tmpdir=%s", $opt_tmpdir);
+  mtr_add_arg($args, "--logdir=%s/log", $opt_vardir);
 
   if ($tinfo->{'component_id'} eq 'im')
   {

--- 1.40/storage/ndb/tools/restore/Restore.cpp	2006-11-21 22:33:08 +02:00
+++ 1.41/storage/ndb/tools/restore/Restore.cpp	2006-11-21 22:33:08 +02:00
@@ -317,7 +317,7 @@
       Uint32 j;
       for (j = 0; j < getNoOfTables(); j++) {
         TableS* table = allTables[j];
-        if (table->getTableId() == id1) {
+        if (table->getTableId() == (Uint32) id1) {
           if (table->isSysTable)
             blobTable->isSysTable = true;
           break;

--- 1.10/mysql-test/r/rpl_create_database.result	2006-11-21 22:33:08 +02:00
+++ 1.11/mysql-test/r/rpl_create_database.result	2006-11-21 22:33:08 +02:00
@@ -23,7 +23,6 @@
 SHOW DATABASES;
 Database
 information_schema
-cluster
 mysql
 mysqltest_bob
 mysqltest_prometheus
@@ -32,7 +31,6 @@
 SHOW DATABASES;
 Database
 information_schema
-cluster
 mysql
 mysqltest_prometheus
 mysqltest_sisyfos
@@ -47,7 +45,6 @@
 SHOW DATABASES;
 Database
 information_schema
-cluster
 mysql
 mysqltest_bob
 mysqltest_prometheus
@@ -56,7 +53,6 @@
 SHOW DATABASES;
 Database
 information_schema
-cluster
 mysql
 mysqltest_prometheus
 mysqltest_sisyfos

--- 1.11/mysql-test/r/rpl_row_basic_11bugs.result	2006-11-21 22:33:08 +02:00
+++ 1.12/mysql-test/r/rpl_row_basic_11bugs.result	2006-11-21 22:33:08 +02:00
@@ -9,7 +9,6 @@
 SHOW DATABASES;
 Database
 information_schema
-cluster
 mysql
 test
 test_ignore
@@ -34,7 +33,6 @@
 SHOW DATABASES;
 Database
 information_schema
-cluster
 mysql
 test
 USE test;

--- 1.3/mysql-test/r/rpl_truncate_7ndb.result	2006-11-21 22:33:08 +02:00
+++ 1.4/mysql-test/r/rpl_truncate_7ndb.result	2006-11-21 22:33:08 +02:00
@@ -33,12 +33,12 @@
 master-bin.000001	102	Query	1	219	use `test`; CREATE TABLE t1 (a INT PRIMARY KEY, b LONG) ENGINE=NDB
 master-bin.000001	219	Query	1	283	BEGIN
 master-bin.000001	283	Table_map	1	40	table_id: # (test.t1)
-master-bin.000001	323	Table_map	1	93	table_id: # (cluster.apply_status)
-master-bin.000001	376	Write_rows	1	135	table_id: #
-master-bin.000001	418	Write_rows	1	182	table_id: # flags: STMT_END_F
-master-bin.000001	465	Query	1	530	COMMIT
-master-bin.000001	530	Query	1	610	use `test`; TRUNCATE TABLE t1
-master-bin.000001	610	Query	1	686	use `test`; DROP TABLE t1
+master-bin.000001	323	Table_map	1	91	table_id: # (mysql.apply_status)
+master-bin.000001	374	Write_rows	1	133	table_id: #
+master-bin.000001	416	Write_rows	1	180	table_id: # flags: STMT_END_F
+master-bin.000001	463	Query	1	528	COMMIT
+master-bin.000001	528	Query	1	608	use `test`; TRUNCATE TABLE t1
+master-bin.000001	608	Query	1	684	use `test`; DROP TABLE t1
 **** On Master ****
 CREATE TABLE t1 (a INT PRIMARY KEY, b LONG) ENGINE=NDB;
 INSERT INTO t1 VALUES (1,1), (2,2);
@@ -69,23 +69,23 @@
 master-bin.000001	102	Query	1	219	use `test`; CREATE TABLE t1 (a INT PRIMARY KEY, b LONG) ENGINE=NDB
 master-bin.000001	219	Query	1	283	BEGIN
 master-bin.000001	283	Table_map	1	40	table_id: # (test.t1)
-master-bin.000001	323	Table_map	1	93	table_id: # (cluster.apply_status)
-master-bin.000001	376	Write_rows	1	135	table_id: #
-master-bin.000001	418	Write_rows	1	182	table_id: # flags: STMT_END_F
-master-bin.000001	465	Query	1	530	COMMIT
-master-bin.000001	530	Query	1	610	use `test`; TRUNCATE TABLE t1
-master-bin.000001	610	Query	1	686	use `test`; DROP TABLE t1
-master-bin.000001	686	Query	1	803	use `test`; CREATE TABLE t1 (a INT PRIMARY KEY, b LONG) ENGINE=NDB
-master-bin.000001	803	Query	1	867	BEGIN
-master-bin.000001	867	Table_map	1	40	table_id: # (test.t1)
-master-bin.000001	907	Table_map	1	93	table_id: # (cluster.apply_status)
-master-bin.000001	960	Write_rows	1	135	table_id: #
-master-bin.000001	1002	Write_rows	1	182	table_id: # flags: STMT_END_F
-master-bin.000001	1049	Query	1	1114	COMMIT
-master-bin.000001	1114	Query	1	1178	BEGIN
-master-bin.000001	1178	Table_map	1	40	table_id: # (test.t1)
-master-bin.000001	1218	Table_map	1	93	table_id: # (cluster.apply_status)
-master-bin.000001	1271	Write_rows	1	135	table_id: #
-master-bin.000001	1313	Delete_rows	1	174	table_id: # flags: STMT_END_F
-master-bin.000001	1352	Query	1	1417	COMMIT
-master-bin.000001	1417	Query	1	1493	use `test`; DROP TABLE t1
+master-bin.000001	323	Table_map	1	91	table_id: # (mysql.apply_status)
+master-bin.000001	374	Write_rows	1	133	table_id: #
+master-bin.000001	416	Write_rows	1	180	table_id: # flags: STMT_END_F
+master-bin.000001	463	Query	1	528	COMMIT
+master-bin.000001	528	Query	1	608	use `test`; TRUNCATE TABLE t1
+master-bin.000001	608	Query	1	684	use `test`; DROP TABLE t1
+master-bin.000001	684	Query	1	801	use `test`; CREATE TABLE t1 (a INT PRIMARY KEY, b LONG) ENGINE=NDB
+master-bin.000001	801	Query	1	865	BEGIN
+master-bin.000001	865	Table_map	1	40	table_id: # (test.t1)
+master-bin.000001	905	Table_map	1	91	table_id: # (mysql.apply_status)
+master-bin.000001	956	Write_rows	1	133	table_id: #
+master-bin.000001	998	Write_rows	1	180	table_id: # flags: STMT_END_F
+master-bin.000001	1045	Query	1	1110	COMMIT
+master-bin.000001	1110	Query	1	1174	BEGIN
+master-bin.000001	1174	Table_map	1	40	table_id: # (test.t1)
+master-bin.000001	1214	Table_map	1	91	table_id: # (mysql.apply_status)
+master-bin.000001	1265	Write_rows	1	133	table_id: #
+master-bin.000001	1307	Delete_rows	1	172	table_id: # flags: STMT_END_F
+master-bin.000001	1346	Query	1	1411	COMMIT
+master-bin.000001	1411	Query	1	1487	use `test`; DROP TABLE t1

--- 1.103/mysql-test/r/show_check.result	2006-11-21 22:33:08 +02:00
+++ 1.104/mysql-test/r/show_check.result	2006-11-21 22:33:08 +02:00
@@ -53,7 +53,6 @@
 show databases;
 Database
 information_schema
-cluster
 mysql
 test
 show databases like "test%";

--- 1.307/storage/innobase/handler/ha_innodb.cc	2006-11-21 22:33:08 +02:00
+++ 1.308/storage/innobase/handler/ha_innodb.cc	2006-11-21 22:33:08 +02:00
@@ -6630,7 +6630,7 @@
 					mutex->count_spin_rounds,
 					mutex->count_os_wait,
 					mutex->count_os_yield,
-					mutex->lspent_time/1000);
+                                        (ulong) (mutex->lspent_time/1000));
 
 				if (stat_print(thd, innobase_hton_name,
 						hton_name_len, buf1, buf1len,
@@ -6660,7 +6660,7 @@
 		rw_lock_count, rw_lock_count_spin_loop,
 		rw_lock_count_spin_rounds,
 		rw_lock_count_os_wait, rw_lock_count_os_yield,
-		rw_lock_wait_time/1000);
+                (ulong) (rw_lock_wait_time/1000));
 
 	if (stat_print(thd, innobase_hton_name, hton_name_len,
 			STRING_WITH_LEN("rw_lock_mutexes"), buf2, buf2len)) {

--- 1.58/client/client_priv.h	2006-11-21 22:33:08 +02:00
+++ 1.59/client/client_priv.h	2006-11-21 22:33:08 +02:00
@@ -58,5 +58,6 @@
   OPT_IGNORE_TABLE,OPT_INSERT_IGNORE,OPT_SHOW_WARNINGS,OPT_DROP_DATABASE,
   OPT_TZ_UTC, OPT_AUTO_CLOSE, OPT_CREATE_SLAP_SCHEMA,
   OPT_MYSQL_REPLACE_INTO, OPT_BASE64_OUTPUT, OPT_SERVER_ID,
-  OPT_FIX_TABLE_NAMES, OPT_FIX_DB_NAMES, OPT_SSL_VERIFY_SERVER_CERT
+  OPT_FIX_TABLE_NAMES, OPT_FIX_DB_NAMES, OPT_SSL_VERIFY_SERVER_CERT,
+  OPT_DEBUG_INFO, OPT_COLUMN_TYPES
 };

--- 1.15/mysql-test/r/cache_innodb.result	2006-11-21 22:33:08 +02:00
+++ 1.16/mysql-test/r/cache_innodb.result	2006-11-21 22:33:08 +02:00
@@ -128,3 +128,94 @@
 id	a
 1	me
 drop table t3,t2,t1;
+SET SESSION STORAGE_ENGINE = InnoDB;
+SET @@autocommit=1;
+connection default
+SHOW VARIABLES LIKE 'have_query_cache';
+Variable_name	Value
+have_query_cache	YES
+SET GLOBAL query_cache_size = 200000;
+flush status;
+SET @@autocommit=1;
+SET SESSION STORAGE_ENGINE = InnoDB;
+CREATE TABLE t2 (s1 int, s2 varchar(1000), key(s1));
+INSERT INTO t2 VALUES (1,repeat('a',10)),(2,repeat('a',10)),(3,repeat('a',10)),(4,repeat('a',10));
+COMMIT;
+START TRANSACTION;
+SELECT sql_cache count(*) FROM t2 WHERE s2 = 'w';
+count(*)
+0
+UPDATE t2 SET s2 = 'w' WHERE s1 = 3;
+SELECT sql_cache count(*) FROM t2 WHERE s2 = 'w';
+count(*)
+1
+show status like "Qcache_queries_in_cache";
+Variable_name	Value
+Qcache_queries_in_cache	0
+connection connection1
+START TRANSACTION;
+SELECT sql_cache count(*) FROM t2 WHERE s2 = 'w';
+count(*)
+0
+INSERT INTO t2 VALUES (5,'w');
+SELECT sql_cache count(*) FROM t2 WHERE s2 = 'w';
+count(*)
+1
+COMMIT;
+SELECT sql_cache count(*) FROM t2 WHERE s2 = 'w';
+count(*)
+1
+show status like "Qcache_queries_in_cache";
+Variable_name	Value
+Qcache_queries_in_cache	0
+connection default
+SELECT sql_cache count(*) FROM t2 WHERE s2 = 'w';
+count(*)
+1
+COMMIT;
+show status like "Qcache_queries_in_cache";
+Variable_name	Value
+Qcache_queries_in_cache	0
+SELECT sql_cache count(*) FROM t2 WHERE s2 = 'w';
+count(*)
+2
+show status like "Qcache_queries_in_cache";
+Variable_name	Value
+Qcache_queries_in_cache	1
+connection connection1
+SELECT sql_cache count(*) FROM t2 WHERE s2 = 'w';
+count(*)
+2
+START TRANSACTION;
+SELECT sql_cache count(*) FROM t2 WHERE s2 = 'w';
+count(*)
+2
+INSERT INTO t2 VALUES (6,'w');
+SELECT sql_cache count(*) FROM t2 WHERE s2 = 'w';
+count(*)
+3
+connection default
+SELECT sql_cache count(*) FROM t2 WHERE s2 = 'w';
+count(*)
+2
+START TRANSACTION;
+SELECT sql_cache count(*) FROM t2 WHERE s2 = 'w';
+count(*)
+2
+DELETE from t2 WHERE s1=3;
+SELECT sql_cache count(*) FROM t2 WHERE s2 = 'w';
+count(*)
+1
+COMMIT;
+connection connection1
+COMMIT;
+SELECT sql_cache count(*) FROM t2 WHERE s2 = 'w';
+count(*)
+2
+show status like "Qcache_queries_in_cache";
+Variable_name	Value
+Qcache_queries_in_cache	1
+show status like "Qcache_hits";
+Variable_name	Value
+Qcache_hits	2
+drop table t2;

--- 1.14/mysql-test/include/query_cache.inc	2006-11-21 22:33:08 +02:00
+++ 1.15/mysql-test/include/query_cache.inc	2006-11-21 22:33:08 +02:00
@@ -100,4 +100,82 @@
 --enable_query_log
 }
 
-# End of 4.1 tests
+#
+# Test query cache with two interleaving transactions
+#
+
+# Establish connection1
+connect (connection1,localhost,root,,);
+eval SET SESSION STORAGE_ENGINE = $engine_type;
+SET @@autocommit=1;
+
+connection default;
+--echo connection default
+-- This should be 'YES'.
+SHOW VARIABLES LIKE 'have_query_cache';
+
+SET GLOBAL query_cache_size = 200000;
+flush status;
+SET @@autocommit=1;
+eval SET SESSION STORAGE_ENGINE = $engine_type;
+CREATE TABLE t2 (s1 int, s2 varchar(1000), key(s1));
+INSERT INTO t2 VALUES (1,repeat('a',10)),(2,repeat('a',10)),(3,repeat('a',10)),(4,repeat('a',10));
+COMMIT;
+START TRANSACTION;
+SELECT sql_cache count(*) FROM t2 WHERE s2 = 'w';
+UPDATE t2 SET s2 = 'w' WHERE s1 = 3;
+SELECT sql_cache count(*) FROM t2 WHERE s2 = 'w';
+show status like "Qcache_queries_in_cache";
+
+connection connection1;
+--echo connection connection1
+START TRANSACTION;
+SELECT sql_cache count(*) FROM t2 WHERE s2 = 'w';
+INSERT INTO t2 VALUES (5,'w');
+SELECT sql_cache count(*) FROM t2 WHERE s2 = 'w';
+COMMIT;
+SELECT sql_cache count(*) FROM t2 WHERE s2 = 'w';
+
+show status like "Qcache_queries_in_cache";
+
+connection default;
+--echo connection default
+SELECT sql_cache count(*) FROM t2 WHERE s2 = 'w';
+COMMIT;
+
+show status like "Qcache_queries_in_cache";
+
+SELECT sql_cache count(*) FROM t2 WHERE s2 = 'w';
+show status like "Qcache_queries_in_cache";
+
+connection connection1;
+--echo connection connection1
+SELECT sql_cache count(*) FROM t2 WHERE s2 = 'w';
+
+START TRANSACTION;
+SELECT sql_cache count(*) FROM t2 WHERE s2 = 'w';
+INSERT INTO t2 VALUES (6,'w');
+SELECT sql_cache count(*) FROM t2 WHERE s2 = 'w';
+
+connection default;
+--echo connection default
+SELECT sql_cache count(*) FROM t2 WHERE s2 = 'w';
+START TRANSACTION;
+SELECT sql_cache count(*) FROM t2 WHERE s2 = 'w';
+DELETE from t2 WHERE s1=3;
+SELECT sql_cache count(*) FROM t2 WHERE s2 = 'w';
+COMMIT;
+
+connection connection1;
+--echo connection connection1
+
+COMMIT;
+SELECT sql_cache count(*) FROM t2 WHERE s2 = 'w';
+
+show status like "Qcache_queries_in_cache";
+show status like "Qcache_hits";
+
+# Final cleanup
+connection default;
+drop table t2;
+disconnect connection1;
--- New file ---
+++ mysql-test/r/1st.result	06/11/21 22:32:54
show databases;
Database
information_schema
mysql
test
show tables in mysql;
Tables_in_mysql
binlog_index
columns_priv
db
event
func
general_log
help_category
help_keyword
help_relation
help_topic
host
plugin
proc
procs_priv
slow_log
tables_priv
time_zone
time_zone_leap_second
time_zone_name
time_zone_transition
time_zone_transition_type
user

--- New file ---
+++ mysql-test/std_data/old_table-323.frm	06/11/21 22:32:54
þ	

 
 
 
 

 
 
 
 
--- New file ---
+++ mysql-test/t/1st.test	06/11/21 22:32:54
#
# Check that we haven't any strange new tables or databases
#
show databases;
show tables in mysql;


--- 1.1/mysql-test/r/rpl_truncate_7ndb_2.result	2006-11-21 22:33:08 +02:00
+++ 1.2/mysql-test/r/rpl_truncate_7ndb_2.result	2006-11-21 22:33:08 +02:00
@@ -33,7 +33,7 @@
 master-bin.000001	102	Query	1	219	use `test`; CREATE TABLE t1 (a INT PRIMARY KEY, b LONG) ENGINE=NDB
 master-bin.000001	219	Query	1	283	BEGIN
 master-bin.000001	283	Table_map	1	40	table_id: # (test.t1)
-master-bin.000001	323	Table_map	1	93	table_id: # (cluster.apply_status)
+master-bin.000001	323	Table_map	1	93	table_id: # (mysql.apply_status)
 master-bin.000001	376	Write_rows	1	135	table_id: #
 master-bin.000001	418	Write_rows	1	182	table_id: # flags: STMT_END_F
 master-bin.000001	465	Query	1	530	COMMIT
@@ -69,7 +69,7 @@
 master-bin.000001	102	Query	1	219	use `test`; CREATE TABLE t1 (a INT PRIMARY KEY, b LONG) ENGINE=NDB
 master-bin.000001	219	Query	1	283	BEGIN
 master-bin.000001	283	Table_map	1	40	table_id: # (test.t1)
-master-bin.000001	323	Table_map	1	93	table_id: # (cluster.apply_status)
+master-bin.000001	323	Table_map	1	93	table_id: # (mysql.apply_status)
 master-bin.000001	376	Write_rows	1	135	table_id: #
 master-bin.000001	418	Write_rows	1	182	table_id: # flags: STMT_END_F
 master-bin.000001	465	Query	1	530	COMMIT
@@ -78,13 +78,13 @@
 master-bin.000001	686	Query	1	803	use `test`; CREATE TABLE t1 (a INT PRIMARY KEY, b LONG) ENGINE=NDB
 master-bin.000001	803	Query	1	867	BEGIN
 master-bin.000001	867	Table_map	1	40	table_id: # (test.t1)
-master-bin.000001	907	Table_map	1	93	table_id: # (cluster.apply_status)
+master-bin.000001	907	Table_map	1	93	table_id: # (mysql.apply_status)
 master-bin.000001	960	Write_rows	1	135	table_id: #
 master-bin.000001	1002	Write_rows	1	182	table_id: # flags: STMT_END_F
 master-bin.000001	1049	Query	1	1114	COMMIT
 master-bin.000001	1114	Query	1	1178	BEGIN
 master-bin.000001	1178	Table_map	1	40	table_id: # (test.t1)
-master-bin.000001	1218	Table_map	1	93	table_id: # (cluster.apply_status)
+master-bin.000001	1218	Table_map	1	93	table_id: # (mysql.apply_status)
 master-bin.000001	1271	Write_rows	1	135	table_id: #
 master-bin.000001	1313	Delete_rows	1	174	table_id: # flags: STMT_END_F
 master-bin.000001	1352	Query	1	1417	COMMIT

--- 1.45/scripts/mysql_fix_privilege_tables.sql	2006-11-21 22:33:08 +02:00
+++ 1.46/scripts/mysql_fix_privilege_tables.sql	2006-11-21 22:33:08 +02:00
@@ -1,13 +1,13 @@
--- This script converts any old privilege tables to privilege tables suitable
--- for this version of MySQL
+# This script converts any old privilege tables to privilege tables suitable
+# for this version of MySQL
 
--- You can safely ignore all 'Duplicate column' and 'Unknown column' errors"
--- because these just mean that your tables are already up to date.
--- This script is safe to run even if your tables are already up to date!
-
--- On unix, you should use the mysql_fix_privilege_tables script to execute
--- this sql script.
--- On windows you should do 'mysql --force mysql < mysql_fix_privilege_tables.sql'
+# You can safely ignore all 'Duplicate column' and 'Unknown column' errors"
+# because these just mean that your tables are already up to date.
+# This script is safe to run even if your tables are already up to date!
+
+# On unix, you should use the mysql_fix_privilege_tables script to execute
+# this sql script.
+# On windows you should do 'mysql --force mysql < mysql_fix_privilege_tables.sql'
 
 set storage_engine=MyISAM;
 
@@ -27,7 +27,7 @@
 
 ALTER TABLE user add File_priv enum('N','Y') COLLATE utf8_general_ci NOT NULL;
 
--- Detect whether or not we had the Grant_priv column
+# Detect whether or not we had the Grant_priv column
 SET @hadGrantPriv:=0;
 SELECT @hadGrantPriv:=1 FROM user WHERE Grant_priv LIKE '%';
 
@@ -35,14 +35,14 @@
 ALTER TABLE host add Grant_priv enum('N','Y') NOT NULL,add References_priv enum('N','Y') COLLATE utf8_general_ci NOT NULL,add Index_priv enum('N','Y') COLLATE utf8_general_ci NOT NULL,add Alter_priv enum('N','Y') COLLATE utf8_general_ci NOT NULL;
 ALTER TABLE db add Grant_priv enum('N','Y') COLLATE utf8_general_ci NOT NULL,add References_priv enum('N','Y') COLLATE utf8_general_ci NOT NULL,add Index_priv enum('N','Y') COLLATE utf8_general_ci NOT NULL,add Alter_priv enum('N','Y') COLLATE utf8_general_ci NOT NULL;
 
--- Fix privileges for old tables
+# Fix privileges for old tables
 UPDATE user SET Grant_priv=File_priv,References_priv=Create_priv,Index_priv=Create_priv,Alter_priv=Create_priv WHERE @hadGrantPriv = 0;
 UPDATE db SET References_priv=Create_priv,Index_priv=Create_priv,Alter_priv=Create_priv WHERE @hadGrantPriv = 0;
 UPDATE host SET References_priv=Create_priv,Index_priv=Create_priv,Alter_priv=Create_priv WHERE @hadGrantPriv = 0;
 
---
--- The second alter changes ssl_type to new 4.0.2 format
--- Adding columns needed by GRANT .. REQUIRE (openssl)"
+#
+# The second alter changes ssl_type to new 4.0.2 format
+# Adding columns needed by GRANT .. REQUIRE (openssl)"
 
 ALTER TABLE user
 ADD ssl_type enum('','ANY','X509', 'SPECIFIED') COLLATE utf8_general_ci NOT NULL,
@@ -51,9 +51,9 @@
 ADD x509_subject BLOB NOT NULL;
 ALTER TABLE user MODIFY ssl_type enum('','ANY','X509', 'SPECIFIED') NOT NULL;
 
---
---  Create tables_priv and columns_priv if they don't exists
---
+#
+#  Create tables_priv and columns_priv if they don't exists
+#
 
 CREATE TABLE IF NOT EXISTS tables_priv (
   Host char(60) binary DEFAULT '' NOT NULL,
@@ -66,7 +66,7 @@
   Column_priv set('Select','Insert','Update','References') COLLATE utf8_general_ci DEFAULT '' NOT NULL,
   PRIMARY KEY (Host,Db,User,Table_name)
 ) CHARACTER SET utf8 COLLATE utf8_bin;
--- Fix collation of set fields
+# Fix collation of set fields
 ALTER TABLE tables_priv
   modify Table_priv set('Select','Insert','Update','Delete','Create','Drop','Grant','References','Index','Alter') COLLATE utf8_general_ci DEFAULT '' NOT NULL,
   modify Column_priv set('Select','Insert','Update','References') COLLATE utf8_general_ci DEFAULT '' NOT NULL;
@@ -88,26 +88,26 @@
   Column_priv set('Select','Insert','Update','References') COLLATE utf8_general_ci DEFAULT '' NOT NULL,
   PRIMARY KEY (Host,Db,User,Table_name,Column_name)
 ) CHARACTER SET utf8 COLLATE utf8_bin;
--- Fix collation of set fields
+# Fix collation of set fields
 ALTER TABLE columns_priv
   MODIFY Column_priv set('Select','Insert','Update','References') COLLATE utf8_general_ci DEFAULT '' NOT NULL;
 
 
---
--- Name change of Type -> Column_priv from MySQL 3.22.12
---
+#
+# Name change of Type -> Column_priv from MySQL 3.22.12
+#
 
 ALTER TABLE columns_priv change Type Column_priv set('Select','Insert','Update','References') COLLATE utf8_general_ci DEFAULT '' NOT NULL;
 
---
---  Add the new 'type' column to the func table.
---
+#
+#  Add the new 'type' column to the func table.
+#
 
 ALTER TABLE func add type enum ('function','aggregate') COLLATE utf8_general_ci NOT NULL;
 
---
---  Change the user,db and host tables to MySQL 4.0 format
---
+#
+#  Change the user,db and host tables to MySQL 4.0 format
+#
 
 # Detect whether we had Show_db_priv
 SET @hadShowDbPriv:=0;
@@ -122,22 +122,22 @@
 ADD Repl_slave_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL AFTER Execute_priv,
 ADD Repl_client_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL AFTER Repl_slave_priv;
 
--- Convert privileges so that users have similar privileges as before
+# Convert privileges so that users have similar privileges as before
 
 UPDATE user SET Show_db_priv= Select_priv, Super_priv=Process_priv, Execute_priv=Process_priv, Create_tmp_table_priv='Y', Lock_tables_priv='Y', Repl_slave_priv=file_priv, Repl_client_priv=File_priv where user<>"" AND @hadShowDbPriv = 0;
 
 
---  Add fields that can be used to limit number of questions and connections
---  for some users.
+#  Add fields that can be used to limit number of questions and connections
+#  for some users.
 ALTER TABLE user
 ADD max_questions int(11) NOT NULL DEFAULT 0 AFTER x509_subject,
 ADD max_updates   int(11) unsigned NOT NULL DEFAULT 0 AFTER max_questions,
 ADD max_connections int(11) unsigned NOT NULL DEFAULT 0 AFTER max_updates;
 
 
---
---  Add Create_tmp_table_priv and Lock_tables_priv to db and host
---
+#
+#  Add Create_tmp_table_priv and Lock_tables_priv to db and host
+#
 
 ALTER TABLE db
 ADD Create_tmp_table_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
@@ -156,8 +156,8 @@
 alter table tables_priv comment='Table privileges';
 alter table columns_priv comment='Column privileges';
 
--- Convert all tables to UTF-8 with binary collation
--- and reset all char columns to correct width
+# Convert all tables to UTF-8 with binary collation
+# and reset all char columns to correct width
 ALTER TABLE user
   MODIFY Host char(60) NOT NULL default '',
   MODIFY User char(16) NOT NULL default '',
@@ -385,7 +385,7 @@
 Use_leap_seconds  enum('Y','N') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
 PRIMARY KEY TzId (Time_zone_id) 
 ) CHARACTER SET utf8 comment='Time zones';
--- Make enum field case-insensitive
+# Make enum field case-insensitive
 ALTER TABLE time_zone
   MODIFY Use_leap_seconds enum('Y','N') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL;
 
@@ -527,9 +527,9 @@
                   MODIFY comment
                          char(64) collate utf8_bin DEFAULT '' NOT NULL;
 
---
--- Create missing log tables (5.1)
---
+#
+# Create missing log tables (5.1)
+#
 
 delimiter //
 CREATE PROCEDURE create_log_tables()
@@ -673,9 +673,9 @@
 UPDATE user SET Event_priv=Super_priv WHERE @hadEventPriv = 0;
 ALTER TABLE event MODIFY name char(64) CHARACTER SET utf8 NOT NULL default '';
 
---
--- TRIGGER privilege
---
+#
+# TRIGGER privilege
+#
 
 SET @hadTriggerPriv := 0;
 SELECT @hadTriggerPriv :=1 FROM user WHERE Trigger_priv LIKE '%';
@@ -686,6 +686,8 @@
 ALTER TABLE tables_priv MODIFY Table_priv set('Select','Insert','Update','Delete','Create','Drop','Grant','References','Index','Alter','Create View','Show view','Trigger') COLLATE utf8_general_ci DEFAULT '' NOT NULL;
 
 UPDATE user SET Trigger_priv=Super_priv WHERE @hadTriggerPriv = 0;
+
+CREATE TABLE IF NOT EXISTS binlog_index (Position BIGINT UNSIGNED NOT NULL, File VARCHAR(255) NOT NULL, epoch BIGINT UNSIGNED NOT NULL, inserts BIGINT UNSIGNED NOT NULL, updates BIGINT UNSIGNED NOT NULL, deletes BIGINT UNSIGNED NOT NULL, schemaops BIGINT UNSIGNED NOT NULL, PRIMARY KEY(epoch)) ENGINE=MYISAM;
 
 # Activate the new, possible modified privilege tables
 # This should not be needed, but gives us some extra testing that the above

--- 1.229/client/mysqltest.c	2006-11-21 22:33:08 +02:00
+++ 1.230/client/mysqltest.c	2006-11-21 22:33:08 +02:00
@@ -97,7 +97,7 @@
       OPT_SSL_CA, OPT_SSL_CAPATH, OPT_SSL_CIPHER, OPT_PS_PROTOCOL,
       OPT_SP_PROTOCOL, OPT_CURSOR_PROTOCOL, OPT_VIEW_PROTOCOL,
       OPT_SSL_VERIFY_SERVER_CERT, OPT_MAX_CONNECT_RETRIES,
-      OPT_MARK_PROGRESS};
+      OPT_MARK_PROGRESS, OPT_LOG_DIR, OPT_DEBUG_INFO};
 
 /* ************************************************************************ */
 /*
@@ -145,6 +145,7 @@
 static int record= 0, opt_sleep= -1;
 static char *db = 0, *pass=0;
 const char *user = 0, *host = 0, *unix_sock = 0, *opt_basedir="./";
+const char *opt_logdir= "";
 const char *opt_include= 0;
 static int port = 0;
 static int opt_max_connect_retries;
@@ -155,7 +156,7 @@
 static my_bool sp_protocol= 0, sp_protocol_enabled= 0;
 static my_bool view_protocol= 0, view_protocol_enabled= 0;
 static my_bool cursor_protocol= 0, cursor_protocol_enabled= 0;
-static my_bool opt_valgrind_test= 0;
+static my_bool opt_valgrind_test= 0, info_flag;
 static int parsing_disabled= 0;
 
 static char **default_argv;
@@ -658,7 +659,7 @@
 
   /* Clean up and exit */
   free_used_memory();
-  my_end(MY_CHECK_ERROR);
+  my_end(info_flag ? MY_CHECK_ERROR | MY_GIVE_INFO : MY_CHECK_ERROR);
 
   if (!silent)
     printf("not ok\n");
@@ -698,7 +699,7 @@
 
   /* Clean up and exit */
   free_used_memory();
-  my_end(MY_CHECK_ERROR);
+  my_end(info_flag ? MY_CHECK_ERROR | MY_GIVE_INFO : MY_CHECK_ERROR);
 
   if (!silent)
     printf("skipped\n");
@@ -3295,12 +3296,16 @@
   {"debug", '#', "Output debug log. Often this is 'd:t:o,filename'.",
    0, 0, 0, GET_STR, OPT_ARG, 0, 0, 0, 0, 0, 0},
 #endif
+  {"debug-info", OPT_DEBUG_INFO, "Print some debug info at exit.", (gptr*) &info_flag,
+   (gptr*) &info_flag, 0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0},
   {"host", 'h', "Connect to host.", (gptr*) &host, (gptr*) &host, 0,
    GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
   {"include", 'i', "Include SQL before each test case.", (gptr*) &opt_include,
    (gptr*) &opt_include, 0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
+  {"logdir", OPT_LOG_DIR, "Directory for log files", (gptr*) &opt_logdir,
+   (gptr*) &opt_logdir, 0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
   {"mark-progress", OPT_MARK_PROGRESS,
-   "Write linenumber and elapsed time to <testname>.progress ",
+   "Write linenumber and elapsed time to <testname>.progress",
    (gptr*) &opt_mark_progress, (gptr*) &opt_mark_progress, 0,
    GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0},
   {"max-connect-retries", OPT_MAX_CONNECT_RETRIES,
@@ -3538,7 +3543,8 @@
 void dump_result_to_log_file(const char *record_file, char *buf, int size)
 {
   char log_file[FN_REFLEN];
-  str_to_file(fn_format(log_file, record_file, "", ".log",
+  str_to_file(fn_format(log_file, record_file, opt_logdir, ".log",
+                        *opt_logdir ? MY_REPLACE_DIR | MY_REPLACE_EXT:
                         MY_REPLACE_EXT),
               buf, size);
 }
@@ -3546,7 +3552,8 @@
 void dump_progress(const char *record_file)
 {
   char log_file[FN_REFLEN];
-  str_to_file(fn_format(log_file, record_file, "", ".progress",
+  str_to_file(fn_format(log_file, record_file, opt_logdir, ".progress",
+                        *opt_logdir ? MY_REPLACE_DIR | MY_REPLACE_EXT:
                         MY_REPLACE_EXT),
               ds_progress.str, ds_progress.length);
 }
@@ -5600,7 +5607,7 @@
   if (!got_end_timer)
     timer_output();				/* No end_timer cmd, end it */
   free_used_memory();
-  my_end(MY_CHECK_ERROR);
+  my_end(info_flag ? MY_CHECK_ERROR | MY_GIVE_INFO : MY_CHECK_ERROR);
 
   /* Yes, if we got this far the test has suceeded! Sakila smiles */
   if (!silent)

--- 1.84/storage/federated/ha_federated.cc	2006-11-21 22:33:08 +02:00
+++ 1.85/storage/federated/ha_federated.cc	2006-11-21 22:33:08 +02:00
@@ -1856,6 +1856,7 @@
   String where_string(where_buffer,
                       sizeof(where_buffer),
                       &my_charset_bin);
+  byte *record= table->record[0];
   DBUG_ENTER("ha_federated::update_row");
   /*
     set string lengths to 0 to avoid misc chars in string
@@ -1914,7 +1915,7 @@
         bool needs_quote= (*field)->str_needs_quotes();
         where_string.append(STRING_WITH_LEN(" = "));
         (*field)->val_str(&field_value,
-                          (char*) (old_data + (*field)->offset()));
+                          (char*) (old_data + (*field)->offset(record)));
         if (needs_quote)
           where_string.append('\'');
         field_value.print(&where_string);

--- 1.23/mysql-test/r/connect.result	2006-11-21 22:33:08 +02:00
+++ 1.24/mysql-test/r/connect.result	2006-11-21 22:33:08 +02:00
@@ -1,6 +1,7 @@
 drop table if exists t1,t2;
 show tables;
 Tables_in_mysql
+binlog_index
 columns_priv
 db
 event
@@ -32,6 +33,7 @@
 grant ALL on *.* to test@stripped identified by "gambling";
 show tables;
 Tables_in_mysql
+binlog_index
 columns_priv
 db
 event
@@ -71,6 +73,7 @@
 set password=old_password('gambling3');
 show tables;
 Tables_in_mysql
+binlog_index
 columns_priv
 db
 event

--- 1.122/mysql-test/t/mysqldump.test	2006-11-21 22:33:08 +02:00
+++ 1.123/mysql-test/t/mysqldump.test	2006-11-21 22:33:08 +02:00
@@ -1394,6 +1394,9 @@
 drop user myDB_User;
 drop database mysqldump_myDB;
 use test;
+connection default;
+disconnect root;
+disconnect user1;
 
 --echo #
 --echo # BUG#13926: --order-by-primary fails if PKEY contains quote character

--- 1.28/mysql-test/r/rpl_load_from_master.result	2006-11-21 22:33:08 +02:00
+++ 1.29/mysql-test/r/rpl_load_from_master.result	2006-11-21 22:33:08 +02:00
@@ -33,7 +33,6 @@
 show databases;
 Database
 information_schema
-cluster
 mysql
 mysqltest
 mysqltest2
@@ -51,7 +50,6 @@
 show databases;
 Database
 information_schema
-cluster
 mysql
 test
 create database mysqltest2;
@@ -71,7 +69,6 @@
 show databases;
 Database
 information_schema
-cluster
 mysql
 mysqltest
 mysqltest2

--- 1.31/mysql-test/r/drop.result	2006-11-21 22:33:08 +02:00
+++ 1.32/mysql-test/r/drop.result	2006-11-21 22:33:08 +02:00
@@ -47,7 +47,6 @@
 show databases;
 Database
 information_schema
-cluster
 mysql
 mysqltest
 test
@@ -59,7 +58,6 @@
 show databases;
 Database
 information_schema
-cluster
 mysql
 test
 drop database mysqltest;

--- 1.1/mysql-test/include/ndb_setup_slave.inc	2006-11-21 22:33:08 +02:00
+++ 1.2/mysql-test/include/ndb_setup_slave.inc	2006-11-21 22:33:08 +02:00
@@ -7,7 +7,7 @@
 # 1.
 --connection slave
 --replace_column 1 <the_epoch>
-SELECT @the_epoch:=MAX(epoch) FROM cluster.apply_status;
+SELECT @the_epoch:=MAX(epoch) FROM mysql.apply_status;
 --let $the_epoch= `select @the_epoch`
 
 # 2.
@@ -15,7 +15,7 @@
 --replace_result $the_epoch <the_epoch>
 --replace_column 1 <the_pos>
 eval SELECT @the_pos:=Position,@the_file:=SUBSTRING_INDEX(FILE, '/', -1)
-   FROM cluster.binlog_index WHERE epoch > $the_epoch ORDER BY epoch ASC LIMIT 1;
+   FROM mysql.binlog_index WHERE epoch > $the_epoch ORDER BY epoch ASC LIMIT 1;
 --let $the_pos= `SELECT @the_pos`
 --let $the_file= `SELECT @the_file`
 

--- 1.3/mysql-test/r/ndb_binlog_basic.result	2006-11-21 22:33:08 +02:00
+++ 1.4/mysql-test/r/ndb_binlog_basic.result	2006-11-21 22:33:08 +02:00
@@ -6,7 +6,7 @@
 use test;
 create table t1 (a int primary key) engine=ndb;
 insert into t1 values (0),(1),(2),(3),(4),(5),(6),(7),(8),(9);
-select @max_epoch:=max(epoch)-1 from cluster.binlog_index;
+select @max_epoch:=max(epoch)-1 from mysql.binlog_index;
 @max_epoch:=max(epoch)-1
 #
 delete from t1;
@@ -19,19 +19,19 @@
 delete from t2 where a=4;
 commit;
 drop table t2;
-select inserts from cluster.binlog_index where epoch > @max_epoch and inserts > 5;
+select inserts from mysql.binlog_index where epoch > @max_epoch and inserts > 5;
 inserts
 10
-select deletes from cluster.binlog_index where epoch > @max_epoch and deletes > 5;
+select deletes from mysql.binlog_index where epoch > @max_epoch and deletes > 5;
 deletes
 10
 select inserts,updates,deletes from 
-cluster.binlog_index where epoch > @max_epoch and updates > 0;
+mysql.binlog_index where epoch > @max_epoch and updates > 0;
 inserts	updates	deletes
 2	1	1
 flush logs;
 purge master logs before now();
-select count(*) from cluster.binlog_index;
+select count(*) from mysql.binlog_index;
 count(*)
 0
 create table t1 (a int primary key, b int) engine=ndb;
@@ -40,12 +40,12 @@
 create table t1 (c int, d int primary key) engine=ndb;
 use test;
 insert into mysqltest.t1 values (2,1),(2,2);
-select @max_epoch:=max(epoch)-1 from cluster.binlog_index;
+select @max_epoch:=max(epoch)-1 from mysql.binlog_index;
 @max_epoch:=max(epoch)-1
 #
 drop table t1;
 drop database mysqltest;
 select inserts,updates,deletes from 
-cluster.binlog_index where epoch > @max_epoch and inserts > 0;
+mysql.binlog_index where epoch > @max_epoch and inserts > 0;
 inserts	updates	deletes
 2	0	0

--- 1.13/mysql-test/r/ndb_binlog_ddl_multi.result	2006-11-21 22:33:08 +02:00
+++ 1.14/mysql-test/r/ndb_binlog_ddl_multi.result	2006-11-21 22:33:08 +02:00
@@ -44,7 +44,7 @@
 Log_name	Pos	Event_type	Server_id	End_log_pos	Info
 master-bin1.000001	#	Query	#	#	BEGIN
 master-bin1.000001	#	Table_map	#	#	table_id: # (test.t2)
-master-bin1.000001	#	Table_map	#	#	table_id: # (cluster.apply_status)
+master-bin1.000001	#	Table_map	#	#	table_id: # (mysql.apply_status)
 master-bin1.000001	#	Write_rows	#	#	table_id: #
 master-bin1.000001	#	Write_rows	#	#	table_id: # flags: STMT_END_F
 master-bin1.000001	#	Query	#	#	COMMIT
@@ -180,14 +180,14 @@
 master-bin1.000001	#	Query	#	#	use `test`; create table t1 (a int key) engine=ndb
 master-bin1.000001	#	Query	#	#	BEGIN
 master-bin1.000001	#	Table_map	#	#	table_id: # (test.t1)
-master-bin1.000001	#	Table_map	#	#	table_id: # (cluster.apply_status)
+master-bin1.000001	#	Table_map	#	#	table_id: # (mysql.apply_status)
 master-bin1.000001	#	Write_rows	#	#	table_id: #
 master-bin1.000001	#	Write_rows	#	#	table_id: # flags: STMT_END_F
 master-bin1.000001	#	Query	#	#	COMMIT
 master-bin1.000001	#	Query	#	#	use `test`; rename table `test.t1` to `test.t2`
 master-bin1.000001	#	Query	#	#	BEGIN
 master-bin1.000001	#	Table_map	#	#	table_id: # (test.t2)
-master-bin1.000001	#	Table_map	#	#	table_id: # (cluster.apply_status)
+master-bin1.000001	#	Table_map	#	#	table_id: # (mysql.apply_status)
 master-bin1.000001	#	Write_rows	#	#	table_id: #
 master-bin1.000001	#	Write_rows	#	#	table_id: # flags: STMT_END_F
 master-bin1.000001	#	Query	#	#	COMMIT

--- 1.2/mysql-test/r/ndb_binlog_discover.result	2006-11-21 22:33:08 +02:00
+++ 1.3/mysql-test/r/ndb_binlog_discover.result	2006-11-21 22:33:08 +02:00
@@ -5,7 +5,7 @@
 Log_name	Pos	Event_type	Server_id	End_log_pos	Info
 master-bin.000001	#	Query	#	#	BEGIN
 master-bin.000001	#	Table_map	#	#	table_id: # (test.t1)
-master-bin.000001	#	Table_map	#	#	table_id: # (cluster.apply_status)
+master-bin.000001	#	Table_map	#	#	table_id: # (mysql.apply_status)
 master-bin.000001	#	Write_rows	#	#	table_id: #
 master-bin.000001	#	Write_rows	#	#	table_id: # flags: STMT_END_F
 master-bin.000001	#	Query	#	#	COMMIT

--- 1.5/mysql-test/r/ndb_binlog_multi.result	2006-11-21 22:33:08 +02:00
+++ 1.6/mysql-test/r/ndb_binlog_multi.result	2006-11-21 22:33:08 +02:00
@@ -11,7 +11,7 @@
 master-bin1.000001	#	Query	#	#	use `test`; CREATE TABLE t2 (a INT PRIMARY KEY, b int) ENGINE = NDB
 master-bin1.000001	#	Query	#	#	BEGIN
 master-bin1.000001	#	Table_map	#	#	table_id: # (test.t2)
-master-bin1.000001	#	Table_map	#	#	table_id: # (cluster.apply_status)
+master-bin1.000001	#	Table_map	#	#	table_id: # (mysql.apply_status)
 master-bin1.000001	#	Write_rows	#	#	table_id: #
 master-bin1.000001	#	Write_rows	#	#	table_id: # flags: STMT_END_F
 master-bin1.000001	#	Query	#	#	COMMIT
@@ -20,7 +20,7 @@
 1	1
 2	2
 SELECT @the_epoch:=epoch,inserts,updates,deletes,schemaops FROM 
-cluster.binlog_index ORDER BY epoch DESC LIMIT 1;
+mysql.binlog_index ORDER BY epoch DESC LIMIT 1;
 @the_epoch:=epoch	inserts	updates	deletes	schemaops
 <the_epoch>	2	0	0	0
 SELECT * FROM t2 ORDER BY a;
@@ -33,13 +33,13 @@
 master-bin.000001	#	Query	#	#	use `test`; CREATE TABLE t2 (a INT PRIMARY KEY, b int) ENGINE = NDB
 master-bin.000001	#	Query	#	#	BEGIN
 master-bin.000001	#	Table_map	#	#	table_id: # (test.t2)
-master-bin.000001	#	Table_map	#	#	table_id: # (cluster.apply_status)
+master-bin.000001	#	Table_map	#	#	table_id: # (mysql.apply_status)
 master-bin.000001	#	Write_rows	#	#	table_id: #
 master-bin.000001	#	Write_rows	#	#	table_id: # flags: STMT_END_F
 master-bin.000001	#	Query	#	#	COMMIT
 master-bin.000001	#	Query	#	#	use `test`; DROP TABLE t2
 SELECT inserts,updates,deletes,schemaops FROM 
-cluster.binlog_index WHERE epoch=<the_epoch>;
+mysql.binlog_index WHERE epoch=<the_epoch>;
 inserts	updates	deletes	schemaops
 2	0	0	0
 reset master;
@@ -51,16 +51,16 @@
 master-bin1.000001	#	Query	#	#	use `test`; CREATE TABLE t1 (a INT PRIMARY KEY) ENGINE = NDB
 master-bin1.000001	#	Query	#	#	BEGIN
 master-bin1.000001	#	Table_map	#	#	table_id: # (test.t1)
-master-bin1.000001	#	Table_map	#	#	table_id: # (cluster.apply_status)
+master-bin1.000001	#	Table_map	#	#	table_id: # (mysql.apply_status)
 master-bin1.000001	#	Write_rows	#	#	table_id: #
 master-bin1.000001	#	Write_rows	#	#	table_id: # flags: STMT_END_F
 master-bin1.000001	#	Query	#	#	COMMIT
 SELECT @the_epoch2:=epoch,inserts,updates,deletes,schemaops FROM 
-cluster.binlog_index ORDER BY epoch DESC LIMIT 1;
+mysql.binlog_index ORDER BY epoch DESC LIMIT 1;
 @the_epoch2:=epoch	inserts	updates	deletes	schemaops
 <the_epoch2>	2	0	0	0
 SELECT inserts,updates,deletes,schemaops FROM
-cluster.binlog_index WHERE epoch > <the_epoch> AND epoch <= <the_epoch2>;
+mysql.binlog_index WHERE epoch > <the_epoch> AND epoch <= <the_epoch2>;
 inserts	updates	deletes	schemaops
 2	0	0	0
 drop table t1;
@@ -69,12 +69,12 @@
 master-bin1.000001	#	Query	#	#	use `test`; CREATE TABLE t1 (a INT PRIMARY KEY) ENGINE = NDB
 master-bin1.000001	#	Query	#	#	BEGIN
 master-bin1.000001	#	Table_map	#	#	table_id: # (test.t1)
-master-bin1.000001	#	Table_map	#	#	table_id: # (cluster.apply_status)
+master-bin1.000001	#	Table_map	#	#	table_id: # (mysql.apply_status)
 master-bin1.000001	#	Write_rows	#	#	table_id: #
 master-bin1.000001	#	Write_rows	#	#	table_id: # flags: STMT_END_F
 master-bin1.000001	#	Query	#	#	COMMIT
 master-bin1.000001	#	Query	#	#	use `test`; drop table t1
 SELECT inserts,updates,deletes,schemaops FROM
-cluster.binlog_index WHERE epoch > <the_epoch> AND epoch <= <the_epoch2>;
+mysql.binlog_index WHERE epoch > <the_epoch> AND epoch <= <the_epoch2>;
 inserts	updates	deletes	schemaops
 2	0	0	0

--- 1.1/mysql-test/r/ndb_restore_compat.result	2006-11-21 22:33:08 +02:00
+++ 1.2/mysql-test/r/ndb_restore_compat.result	2006-11-21 22:33:08 +02:00
@@ -44,7 +44,7 @@
 SYSTEM_VALUES_ID	VALUE
 0	2039
 1	3
-SELECT * FROM cluster.apply_status WHERE server_id=0;
+SELECT * FROM mysql.apply_status WHERE server_id=0;
 server_id	epoch
 0	151
 TRUNCATE GL;
@@ -98,7 +98,7 @@
 SYSTEM_VALUES_ID	VALUE
 0	2297
 1	5
-SELECT * FROM cluster.apply_status WHERE server_id=0;
+SELECT * FROM mysql.apply_status WHERE server_id=0;
 server_id	epoch
 0	331
 DROP DATABASE BANK;

--- 1.3/mysql-test/r/rpl_ndb_bank.result	2006-11-21 22:33:08 +02:00
+++ 1.4/mysql-test/r/rpl_ndb_bank.result	2006-11-21 22:33:08 +02:00
@@ -47,17 +47,17 @@
 DROP DATABASE BANK;
 CREATE DATABASE BANK;
 RESET MASTER;
-CREATE TABLE IF NOT EXISTS cluster.backup_info (id INT, backup_id INT) ENGINE = HEAP;
-DELETE FROM cluster.backup_info;
-LOAD DATA INFILE '../tmp.dat' INTO TABLE cluster.backup_info FIELDS TERMINATED BY ',';
-SELECT @the_backup_id:=backup_id FROM cluster.backup_info;
+CREATE TABLE IF NOT EXISTS mysql.backup_info (id INT, backup_id INT) ENGINE = HEAP;
+DELETE FROM mysql.backup_info;
+LOAD DATA INFILE '../tmp.dat' INTO TABLE mysql.backup_info FIELDS TERMINATED BY ',';
+SELECT @the_backup_id:=backup_id FROM mysql.backup_info;
 @the_backup_id:=backup_id
 <the_backup_id>
-SELECT @the_epoch:=MAX(epoch) FROM cluster.apply_status;
+SELECT @the_epoch:=MAX(epoch) FROM mysql.apply_status;
 @the_epoch:=MAX(epoch)
 <the_epoch>
 SELECT @the_pos:=Position,@the_file:=SUBSTRING_INDEX(FILE, '/', -1)
-FROM cluster.binlog_index WHERE epoch > <the_epoch> ORDER BY epoch ASC LIMIT 1;
+FROM mysql.binlog_index WHERE epoch > <the_epoch> ORDER BY epoch ASC LIMIT 1;
 @the_pos:=Position	@the_file:=SUBSTRING_INDEX(FILE, '/', -1)
 <the_pos>	master-bin.000001
 CHANGE MASTER TO

--- 1.7/mysql-test/r/rpl_ndb_dd_basic.result	2006-11-21 22:33:08 +02:00
+++ 1.8/mysql-test/r/rpl_ndb_dd_basic.result	2006-11-21 22:33:08 +02:00
@@ -57,7 +57,7 @@
 engine ndb
 master-bin.000001	#	Query	#	#	BEGIN
 master-bin.000001	#	Table_map	#	#	table_id: # (test.t1)
-master-bin.000001	#	Table_map	#	#	table_id: # (cluster.apply_status)
+master-bin.000001	#	Table_map	#	#	table_id: # (mysql.apply_status)
 master-bin.000001	#	Write_rows	#	#	table_id: #
 master-bin.000001	#	Write_rows	#	#	table_id: # flags: STMT_END_F
 master-bin.000001	#	Query	#	#	COMMIT

--- 1.3/mysql-test/r/rpl_ndb_idempotent.result	2006-11-21 22:33:08 +02:00
+++ 1.4/mysql-test/r/rpl_ndb_idempotent.result	2006-11-21 22:33:08 +02:00
@@ -9,14 +9,14 @@
 SELECT * FROM t1 ORDER BY c3;
 c1	c2	c3
 row1	will go away	1
-SELECT @the_epoch:=MAX(epoch) FROM cluster.apply_status;
+SELECT @the_epoch:=MAX(epoch) FROM mysql.apply_status;
 @the_epoch:=MAX(epoch)
 <the_epoch>
 SELECT * FROM t1 ORDER BY c3;
 c1	c2	c3
 row1	will go away	1
 SELECT @the_pos:=Position,@the_file:=SUBSTRING_INDEX(FILE, '/', -1)
-FROM cluster.binlog_index WHERE epoch = <the_epoch> ;
+FROM mysql.binlog_index WHERE epoch = <the_epoch> ;
 @the_pos:=Position	@the_file:=SUBSTRING_INDEX(FILE, '/', -1)
 <the_pos>	master-bin.000001
 INSERT INTO t1 VALUES ("row2","will go away",2),("row3","will change",3),("row4","D",4);

--- 1.2/mysql-test/r/rpl_ndb_multi.result	2006-11-21 22:33:08 +02:00
+++ 1.3/mysql-test/r/rpl_ndb_multi.result	2006-11-21 22:33:08 +02:00
@@ -16,7 +16,7 @@
 SELECT * FROM t1 ORDER BY c3;
 c1	c2	c3
 row1	will go away	1
-SELECT @the_epoch:=MAX(epoch) FROM cluster.apply_status;
+SELECT @the_epoch:=MAX(epoch) FROM mysql.apply_status;
 @the_epoch:=MAX(epoch)
 <the_epoch>
 SELECT * FROM t1 ORDER BY c3;
@@ -24,7 +24,7 @@
 row1	will go away	1
 stop slave;
 SELECT @the_pos:=Position,@the_file:=SUBSTRING_INDEX(FILE, '/', -1)
-FROM cluster.binlog_index WHERE epoch = <the_epoch> ;
+FROM mysql.binlog_index WHERE epoch = <the_epoch> ;
 @the_pos:=Position	@the_file:=SUBSTRING_INDEX(FILE, '/', -1)
 102	master-bin1.000001
 CHANGE MASTER TO

--- 1.7/mysql-test/r/rpl_ndb_sync.result	2006-11-21 22:33:08 +02:00
+++ 1.8/mysql-test/r/rpl_ndb_sync.result	2006-11-21 22:33:08 +02:00
@@ -60,11 +60,11 @@
 0	1	BCDEF
 1	0	CD
 0	0	DEFGHIJKL
-SELECT @the_epoch:=MAX(epoch) FROM cluster.apply_status;
+SELECT @the_epoch:=MAX(epoch) FROM mysql.apply_status;
 @the_epoch:=MAX(epoch)
 <the_epoch>
 SELECT @the_pos:=Position,@the_file:=SUBSTRING_INDEX(FILE, '/', -1)
-FROM cluster.binlog_index WHERE epoch > <the_epoch> ORDER BY epoch ASC LIMIT 1;
+FROM mysql.binlog_index WHERE epoch > <the_epoch> ORDER BY epoch ASC LIMIT 1;
 @the_pos:=Position	@the_file:=SUBSTRING_INDEX(FILE, '/', -1)
 <the_pos>	master-bin.000001
 CHANGE MASTER TO
@@ -89,8 +89,8 @@
 DROP DATABASE ndbsynctest;
 STOP SLAVE;
 reset master;
-select * from cluster.binlog_index;
+select * from mysql.binlog_index;
 Position	File	epoch	inserts	updates	deletes	schemaops
 reset slave;
-select * from cluster.apply_status;
+select * from mysql.apply_status;
 server_id	epoch

--- 1.3/mysql-test/t/ndb_binlog_basic.test	2006-11-21 22:33:08 +02:00
+++ 1.4/mysql-test/t/ndb_binlog_basic.test	2006-11-21 22:33:08 +02:00
@@ -19,7 +19,7 @@
 insert into t1 values (0),(1),(2),(3),(4),(5),(6),(7),(8),(9);
 save_master_pos;
 --replace_column 1 #
-select @max_epoch:=max(epoch)-1 from cluster.binlog_index;
+select @max_epoch:=max(epoch)-1 from mysql.binlog_index;
 
 delete from t1;
 alter table t1 add (b int);
@@ -38,10 +38,10 @@
 # (save_master_pos waits for last gcp to complete, ensuring that we have
 #  the expected data in the binlog)
 save_master_pos;
-select inserts from cluster.binlog_index where epoch > @max_epoch and inserts > 5;
-select deletes from cluster.binlog_index where epoch > @max_epoch and deletes > 5;
+select inserts from mysql.binlog_index where epoch > @max_epoch and inserts > 5;
+select deletes from mysql.binlog_index where epoch > @max_epoch and deletes > 5;
 select inserts,updates,deletes from 
-  cluster.binlog_index where epoch > @max_epoch and updates > 0;
+  mysql.binlog_index where epoch > @max_epoch and updates > 0;
 
 #
 # check that purge clears the binlog_index
@@ -49,7 +49,7 @@
 flush logs;
 --sleep 1
 purge master logs before now();
-select count(*) from cluster.binlog_index;
+select count(*) from mysql.binlog_index;
 
 #
 # several tables in different databases
@@ -64,9 +64,9 @@
 insert into mysqltest.t1 values (2,1),(2,2);
 save_master_pos;
 --replace_column 1 #
-select @max_epoch:=max(epoch)-1 from cluster.binlog_index;
+select @max_epoch:=max(epoch)-1 from mysql.binlog_index;
 
 drop table t1;
 drop database mysqltest;
 select inserts,updates,deletes from 
-  cluster.binlog_index where epoch > @max_epoch and inserts > 0;
+  mysql.binlog_index where epoch > @max_epoch and inserts > 0;

--- 1.5/mysql-test/t/ndb_binlog_multi.test	2006-11-21 22:33:08 +02:00
+++ 1.6/mysql-test/t/ndb_binlog_multi.test	2006-11-21 22:33:08 +02:00
@@ -38,7 +38,7 @@
 select * from t2 order by a;
 --replace_column 1 <the_epoch>
 SELECT @the_epoch:=epoch,inserts,updates,deletes,schemaops FROM 
-  cluster.binlog_index ORDER BY epoch DESC LIMIT 1;
+  mysql.binlog_index ORDER BY epoch DESC LIMIT 1;
 let $the_epoch= `SELECT @the_epoch`;
 
 # see if we got something on server1
@@ -50,7 +50,7 @@
 --source include/show_binlog_events.inc
 --replace_result $the_epoch <the_epoch>
 eval SELECT inserts,updates,deletes,schemaops FROM 
-  cluster.binlog_index WHERE epoch=$the_epoch;
+  mysql.binlog_index WHERE epoch=$the_epoch;
 
 # reset for next test
 connection server1;
@@ -65,12 +65,12 @@
 --source include/show_binlog_events.inc
 --replace_column 1 <the_epoch2>
 SELECT @the_epoch2:=epoch,inserts,updates,deletes,schemaops FROM 
-  cluster.binlog_index ORDER BY epoch DESC LIMIT 1;
+  mysql.binlog_index ORDER BY epoch DESC LIMIT 1;
 let $the_epoch2= `SELECT @the_epoch2`;
 
 --replace_result $the_epoch <the_epoch> $the_epoch2 <the_epoch2>
 eval SELECT inserts,updates,deletes,schemaops FROM
-   cluster.binlog_index WHERE epoch > $the_epoch AND epoch <= $the_epoch2;
+   mysql.binlog_index WHERE epoch > $the_epoch AND epoch <= $the_epoch2;
 
 # now see that we have the events on the other server
 connection server2;
@@ -80,4 +80,4 @@
 --source include/show_binlog_events.inc
 --replace_result $the_epoch <the_epoch> $the_epoch2 <the_epoch2>
 eval SELECT inserts,updates,deletes,schemaops FROM
-   cluster.binlog_index WHERE epoch > $the_epoch AND epoch <= $the_epoch2;
+   mysql.binlog_index WHERE epoch > $the_epoch AND epoch <= $the_epoch2;

--- 1.1/mysql-test/t/ndb_restore_compat.test	2006-11-21 22:33:08 +02:00
+++ 1.2/mysql-test/t/ndb_restore_compat.test	2006-11-21 22:33:08 +02:00
@@ -21,7 +21,7 @@
 SELECT * FROM ACCOUNT       ORDER BY ACCOUNT_ID;
 SELECT COUNT(*) FROM TRANSACTION;
 SELECT * FROM SYSTEM_VALUES ORDER BY SYSTEM_VALUES_ID;
-SELECT * FROM cluster.apply_status WHERE server_id=0;
+SELECT * FROM mysql.apply_status WHERE server_id=0;
 
 #
 # verify restore of 5.0 backup
@@ -39,5 +39,5 @@
 SELECT * FROM ACCOUNT       ORDER BY ACCOUNT_ID;
 SELECT COUNT(*) FROM TRANSACTION;
 SELECT * FROM SYSTEM_VALUES ORDER BY SYSTEM_VALUES_ID;
-SELECT * FROM cluster.apply_status WHERE server_id=0;
+SELECT * FROM mysql.apply_status WHERE server_id=0;
 DROP DATABASE BANK;

--- 1.7/mysql-test/t/rpl_ndb_bank.test	2006-11-21 22:33:08 +02:00
+++ 1.8/mysql-test/t/rpl_ndb_bank.test	2006-11-21 22:33:08 +02:00
@@ -118,12 +118,12 @@
 
 # there is no neat way to find the backupid, this is a hack to find it...
 --exec $NDB_TOOLS_DIR/ndb_select_all --ndb-connectstring="localhost:$NDBCLUSTER_PORT" -d sys --delimiter=',' SYSTAB_0 | grep 520093696 > $MYSQLTEST_VARDIR/tmp.dat
-CREATE TABLE IF NOT EXISTS cluster.backup_info (id INT, backup_id INT) ENGINE = HEAP;
-DELETE FROM cluster.backup_info;
-LOAD DATA INFILE '../tmp.dat' INTO TABLE cluster.backup_info FIELDS TERMINATED BY ',';
+CREATE TABLE IF NOT EXISTS mysql.backup_info (id INT, backup_id INT) ENGINE = HEAP;
+DELETE FROM mysql.backup_info;
+LOAD DATA INFILE '../tmp.dat' INTO TABLE mysql.backup_info FIELDS TERMINATED BY ',';
 --exec rm $MYSQLTEST_VARDIR/tmp.dat || true
 --replace_column 1 <the_backup_id>
-SELECT @the_backup_id:=backup_id FROM cluster.backup_info;
+SELECT @the_backup_id:=backup_id FROM mysql.backup_info;
 let the_backup_id=`select @the_backup_id`;
 
 # restore on slave, first check that nothing is there

--- 1.4/mysql-test/t/rpl_ndb_idempotent.test	2006-11-21 22:33:08 +02:00
+++ 1.5/mysql-test/t/rpl_ndb_idempotent.test	2006-11-21 22:33:08 +02:00
@@ -4,7 +4,7 @@
 
 #
 # Currently test only works with ndb since it retrieves "old"
-# binlog positions with cluster.binlog_index and apply_status;
+# binlog positions with mysql.binlog_index and apply_status;
 #
 
 # create a table with one row
@@ -15,7 +15,7 @@
 # sync slave and retrieve epoch
 sync_slave_with_master;
 --replace_column 1 <the_epoch>
-SELECT @the_epoch:=MAX(epoch) FROM cluster.apply_status;
+SELECT @the_epoch:=MAX(epoch) FROM mysql.apply_status;
 let $the_epoch= `select @the_epoch` ;
 SELECT * FROM t1 ORDER BY c3;
 
@@ -24,7 +24,7 @@
 --replace_result $the_epoch <the_epoch>
 --replace_column 1 <the_pos>
 eval SELECT @the_pos:=Position,@the_file:=SUBSTRING_INDEX(FILE, '/', -1)
-   FROM cluster.binlog_index WHERE epoch = $the_epoch ;
+   FROM mysql.binlog_index WHERE epoch = $the_epoch ;
 let $the_pos= `SELECT @the_pos` ;
 let $the_file= `SELECT @the_file` ;
 

--- 1.2/mysql-test/t/rpl_ndb_multi.test	2006-11-21 22:33:08 +02:00
+++ 1.3/mysql-test/t/rpl_ndb_multi.test	2006-11-21 22:33:08 +02:00
@@ -7,7 +7,7 @@
 
 #
 # Currently test only works with ndb since it retrieves "old"
-# binlog positions with cluster.binlog_index and apply_status;
+# binlog positions with mysql.binlog_index and apply_status;
 #
 
 # create a table with one row, and make sure the other "master" gets it
@@ -25,7 +25,7 @@
 connection master;
 sync_slave_with_master;
 --replace_column 1 <the_epoch>
-SELECT @the_epoch:=MAX(epoch) FROM cluster.apply_status;
+SELECT @the_epoch:=MAX(epoch) FROM mysql.apply_status;
 let $the_epoch= `select @the_epoch` ;
 SELECT * FROM t1 ORDER BY c3;
 stop slave;
@@ -34,7 +34,7 @@
 connection server2;
 --replace_result $the_epoch <the_epoch>
 eval SELECT @the_pos:=Position,@the_file:=SUBSTRING_INDEX(FILE, '/', -1)
-   FROM cluster.binlog_index WHERE epoch = $the_epoch ;
+   FROM mysql.binlog_index WHERE epoch = $the_epoch ;
 let $the_pos= `SELECT @the_pos` ;
 let $the_file= `SELECT @the_file` ;
 

--- 1.9/mysql-test/t/rpl_ndb_sync.test	2006-11-21 22:33:08 +02:00
+++ 1.10/mysql-test/t/rpl_ndb_sync.test	2006-11-21 22:33:08 +02:00
@@ -6,7 +6,7 @@
 
 #
 # Currently test only works with ndb since it retrieves "old"
-# binlog positions with cluster.binlog_index and apply_status;
+# binlog positions with mysql.binlog_index and apply_status;
 #
 
 # stop the save
@@ -94,11 +94,11 @@
 --connection master
 reset master;
 # should now contain nothing
-select * from cluster.binlog_index;
+select * from mysql.binlog_index;
 
 --connection slave
 reset slave;
 # should now contain nothing
-select * from cluster.apply_status;
+select * from mysql.apply_status;
 
 # End 5.1 Test

--- 1.2/sql/ha_ndbcluster_tables.h	2006-11-21 22:33:08 +02:00
+++ 1.3/sql/ha_ndbcluster_tables.h	2006-11-21 22:33:08 +02:00
@@ -15,7 +15,7 @@
   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 */
 
-#define NDB_REP_DB      "cluster"
+#define NDB_REP_DB      "mysql"
 #define NDB_REP_TABLE   "binlog_index"
 #define NDB_APPLY_TABLE "apply_status"
 #define NDB_SCHEMA_TABLE "schema"

--- 1.42/mysql-test/r/system_mysql_db.result	2006-11-21 22:33:08 +02:00
+++ 1.43/mysql-test/r/system_mysql_db.result	2006-11-21 22:33:08 +02:00
@@ -1,6 +1,7 @@
 drop table if exists t1,t1aa,t2aa;
 show tables;
 Tables_in_db
+binlog_index
 columns_priv
 db
 event

--- 1.25/mysql-test/t/system_mysql_db_fix.test	2006-11-21 22:33:09 +02:00
+++ 1.26/mysql-test/t/system_mysql_db_fix.test	2006-11-21 22:33:09 +02:00
@@ -96,7 +96,7 @@
 DROP TABLE db, host, user, func, plugin, tables_priv, columns_priv,
 procs_priv, help_category, help_keyword, help_relation, help_topic, proc,
 time_zone, time_zone_leap_second, time_zone_name, time_zone_transition,
-time_zone_transition_type, general_log, slow_log, event;
+time_zone_transition_type, general_log, slow_log, event, binlog_index;
 
 -- enable_query_log
 

--- 1.40/scripts/mysql_create_system_tables.sh	2006-11-21 22:33:09 +02:00
+++ 1.41/scripts/mysql_create_system_tables.sh	2006-11-21 22:33:09 +02:00
@@ -874,8 +874,7 @@
 $c_gl
 $c_sl
 $c_ev
-CREATE DATABASE IF NOT EXISTS cluster;
-CREATE TABLE IF NOT EXISTS cluster.binlog_index (Position BIGINT UNSIGNED NOT NULL, File VARCHAR(255) NOT NULL, epoch BIGINT UNSIGNED NOT NULL, inserts BIGINT UNSIGNED NOT NULL, updates BIGINT UNSIGNED NOT NULL, deletes BIGINT UNSIGNED NOT NULL, schemaops BIGINT UNSIGNED NOT NULL, PRIMARY KEY(epoch)) ENGINE=MYISAM;
+CREATE TABLE IF NOT EXISTS mysql.binlog_index (Position BIGINT UNSIGNED NOT NULL, File VARCHAR(255) NOT NULL, epoch BIGINT UNSIGNED NOT NULL, inserts BIGINT UNSIGNED NOT NULL, updates BIGINT UNSIGNED NOT NULL, deletes BIGINT UNSIGNED NOT NULL, schemaops BIGINT UNSIGNED NOT NULL, PRIMARY KEY(epoch)) ENGINE=MYISAM;
 
 END_OF_DATA
 
Thread
bk commit into 5.1 tree (monty:1.2337)monty21 Nov