mirror of
https://github.com/MariaDB/server.git
synced 2026-04-21 15:55:53 +02:00
Merge bk-internal.mysql.com:/data0/bk/mysql-5.0
into bk-internal.mysql.com:/data0/bk/mysql-5.0-marvel client/mysql.cc: Auto merged heap/hp_write.c: Auto merged sql/ha_ndbcluster.cc: Auto merged sql/handler.cc: Auto merged sql/item.cc: Auto merged sql/mysqld.cc: Auto merged sql/opt_range.cc: Auto merged sql/sql_base.cc: Auto merged sql/sql_class.cc: Auto merged sql/sql_class.h: Auto merged sql/sql_delete.cc: Auto merged sql/sql_insert.cc: Auto merged sql/sql_load.cc: Auto merged sql/sql_select.cc: Auto merged sql/sql_table.cc: Auto merged
This commit is contained in:
commit
bceecfa820
49 changed files with 1537 additions and 394 deletions
|
|
@ -51,5 +51,5 @@ enum options_client
|
|||
OPT_TRIGGERS,
|
||||
OPT_IGNORE_TABLE,OPT_INSERT_IGNORE,OPT_SHOW_WARNINGS,OPT_DROP_DATABASE,
|
||||
OPT_TZ_UTC, OPT_AUTO_CLOSE, OPT_SSL_VERIFY_SERVER_CERT,
|
||||
OPT_DEBUG_INFO
|
||||
OPT_DEBUG_INFO, OPT_ERROR_LOG_FILE
|
||||
};
|
||||
|
|
|
|||
|
|
@ -1042,7 +1042,7 @@ static int dump_remote_log_entries(PRINT_EVENT_INFO *print_event_info,
|
|||
uint logname_len;
|
||||
NET* net;
|
||||
int error= 0;
|
||||
my_off_t old_off= start_position_mot;
|
||||
my_off_t old_off= min(start_position_mot, BIN_LOG_HEADER_SIZE);
|
||||
char fname[FN_REFLEN+1];
|
||||
DBUG_ENTER("dump_remote_log_entries");
|
||||
|
||||
|
|
@ -1105,7 +1105,7 @@ could be out of memory");
|
|||
}
|
||||
if (len < 8 && net->read_pos[0] == 254)
|
||||
break; // end of data
|
||||
DBUG_PRINT("info",( "len: %lu, net->read_pos[5]: %d\n",
|
||||
DBUG_PRINT("info",( "len: %lu net->read_pos[5]: %d\n",
|
||||
len, net->read_pos[5]));
|
||||
if (!(ev= Log_event::read_log_event((const char*) net->read_pos + 1 ,
|
||||
len - 1, &error_msg,
|
||||
|
|
@ -1194,10 +1194,17 @@ could be out of memory");
|
|||
}
|
||||
}
|
||||
/*
|
||||
Let's adjust offset for remote log as for local log to produce
|
||||
similar text.
|
||||
Let's adjust offset for remote log as for local log to produce
|
||||
similar text and to have --stop-position to work identically.
|
||||
|
||||
Exception - the server sends Format_description_log_event
|
||||
in the beginning of the dump, and only after it the event from
|
||||
start_position. Let the old_off reflect it.
|
||||
*/
|
||||
old_off+= len-1;
|
||||
if (old_off < start_position_mot)
|
||||
old_off= start_position_mot;
|
||||
else
|
||||
old_off+= len-1;
|
||||
}
|
||||
|
||||
err:
|
||||
|
|
|
|||
|
|
@ -105,7 +105,8 @@ static char *opt_password=0,*current_user=0,
|
|||
*lines_terminated=0, *enclosed=0, *opt_enclosed=0, *escaped=0,
|
||||
*where=0, *order_by=0,
|
||||
*opt_compatible_mode_str= 0,
|
||||
*err_ptr= 0;
|
||||
*err_ptr= 0,
|
||||
*log_error_file= NULL;
|
||||
static char **defaults_argv= 0;
|
||||
static char compatible_mode_normal_str[255];
|
||||
static ulong opt_compatible_mode= 0;
|
||||
|
|
@ -116,7 +117,9 @@ static my_string opt_mysql_unix_port=0;
|
|||
static int first_error=0;
|
||||
static DYNAMIC_STRING extended_row;
|
||||
#include <sslopt-vars.h>
|
||||
FILE *md_result_file= 0;
|
||||
FILE *md_result_file= 0;
|
||||
FILE *stderror_file=0;
|
||||
|
||||
#ifdef HAVE_SMEM
|
||||
static char *shared_memory_base_name=0;
|
||||
#endif
|
||||
|
|
@ -293,6 +296,9 @@ static struct my_option my_long_options[] =
|
|||
0, 0, 0, 0, 0, 0},
|
||||
{"lock-tables", 'l', "Lock all tables for read.", (gptr*) &lock_tables,
|
||||
(gptr*) &lock_tables, 0, GET_BOOL, NO_ARG, 1, 0, 0, 0, 0, 0},
|
||||
{"log-error", OPT_ERROR_LOG_FILE, "Append warnings and errors to given file.",
|
||||
(gptr*) &log_error_file, (gptr*) &log_error_file, 0, GET_STR,
|
||||
REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
|
||||
{"master-data", OPT_MASTER_DATA,
|
||||
"This causes the binary log position and filename to be appended to the "
|
||||
"output. If equal to 1, will print it as a CHANGE MASTER command; if equal"
|
||||
|
|
@ -3694,6 +3700,16 @@ int main(int argc, char **argv)
|
|||
free_resources(0);
|
||||
exit(exit_code);
|
||||
}
|
||||
|
||||
if (log_error_file)
|
||||
{
|
||||
if(!(stderror_file= freopen(log_error_file, "a+", stderr)))
|
||||
{
|
||||
free_resources(0);
|
||||
exit(EX_MYSQLERR);
|
||||
}
|
||||
}
|
||||
|
||||
if (connect_to_db(current_host, current_user, opt_password))
|
||||
{
|
||||
free_resources(0);
|
||||
|
|
@ -3746,5 +3762,9 @@ err:
|
|||
if (!path)
|
||||
write_footer(md_result_file);
|
||||
free_resources();
|
||||
|
||||
if (stderror_file)
|
||||
fclose(stderror_file);
|
||||
|
||||
return(first_error);
|
||||
} /* main */
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue