summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Docs/manual.texi3
-rw-r--r--client/mysql.cc11
-rw-r--r--configure.in8
-rw-r--r--sql/log_event.h5
-rw-r--r--sql/sql_load.cc5
5 files changed, 13 insertions, 19 deletions
diff --git a/Docs/manual.texi b/Docs/manual.texi
index 4955de63ea8..f3066621838 100644
--- a/Docs/manual.texi
+++ b/Docs/manual.texi
@@ -46897,6 +46897,9 @@ not yet 100% confident in this code.
@appendixsubsec Changes in release 3.23.50
@itemize @bullet
@item
+Fixed core-dump bug when using @code{--log-bin} with @code{LOAD DATA
+INFILE} without an active database.
+@item
Fixed problem with @code{SHOW CREATE TABLE} and @code{PRIMARY KEY} when using
32 indexes.
@item
diff --git a/client/mysql.cc b/client/mysql.cc
index 772444764c9..60e97bff621 100644
--- a/client/mysql.cc
+++ b/client/mysql.cc
@@ -764,17 +764,6 @@ static int get_options(int argc, char **argv)
return(0);
}
-#if defined(OS2)
-static char* readline( char* prompt)
-{
-#if defined(OS2)
- static char linebuffer[254];
-#endif
- puts( prompt);
- return gets( linebuffer);
-}
-#endif
-
static int read_lines(bool execute_commands)
{
#if defined( __WIN__) || defined(OS2)
diff --git a/configure.in b/configure.in
index 417870c3dcd..c6cda3c157f 100644
--- a/configure.in
+++ b/configure.in
@@ -647,9 +647,11 @@ AC_CHECK_HEADERS(fcntl.h float.h floatingpoint.h ieeefp.h limits.h \
#--------------------------------------------------------------------
AC_CHECK_LIB(m, floor, [], AC_CHECK_LIB(m, __infinity))
-AC_CHECK_FUNC(gethostbyname_r, [], [
- AC_CHECK_LIB(nsl_r, gethostbyname_r, [],
- AC_CHECK_LIB(nsl, gethostbyname_r))])
+
+AC_CHECK_LIB(nsl_r, gethostbyname_r, [],
+ AC_CHECK_LIB(nsl, gethostbyname_r))
+AC_CHECK_FUNC(gethostbyname_r)
+
AC_CHECK_FUNC(setsockopt, , AC_CHECK_LIB(socket, setsockopt))
AC_CHECK_FUNC(yp_get_default_domain, ,
AC_CHECK_LIB(nsl, yp_get_default_domain))
diff --git a/sql/log_event.h b/sql/log_event.h
index 94f7cce0e35..a31c698fae9 100644
--- a/sql/log_event.h
+++ b/sql/log_event.h
@@ -229,12 +229,13 @@ public:
THD* thd;
String field_lens_buf;
String fields_buf;
- Load_log_event(THD* thd, sql_exchange* ex, const char* table_name_arg,
+ Load_log_event(THD* thd, sql_exchange* ex,
+ const char *db_arg, const char* table_name_arg,
List<Item>& fields_arg, enum enum_duplicates handle_dup ):
Log_event(thd->start_time),data_buf(0),thread_id(thd->thread_id),
num_fields(0),fields(0),field_lens(0),field_block_len(0),
table_name(table_name_arg),
- db(thd->db),
+ db(db_arg),
fname(ex->file_name),
thd(thd)
{
diff --git a/sql/sql_load.cc b/sql/sql_load.cc
index dd8487ceecc..1dcc8c2130e 100644
--- a/sql/sql_load.cc
+++ b/sql/sql_load.cc
@@ -72,7 +72,6 @@ int mysql_load(THD *thd,sql_exchange *ex,TABLE_LIST *table_list,
*enclosed=ex->enclosed;
bool is_fifo=0;
bool using_transactions;
-
DBUG_ENTER("mysql_load");
if (escaped->length() > 1 || enclosed->length() > 1)
@@ -260,8 +259,8 @@ int mysql_load(THD *thd,sql_exchange *ex,TABLE_LIST *table_list,
if (!read_file_from_client && mysql_bin_log.is_open())
{
ex->skip_lines = save_skip_lines;
- Load_log_event qinfo(thd, ex, table->table_name, fields,
- handle_duplicates);
+ Load_log_event qinfo(thd, ex, table->table_cache_key, table->table_name,
+ fields, handle_duplicates);
mysql_bin_log.write(&qinfo);
}
if (using_transactions)