Commit 387e56aa authored by unknown's avatar unknown
Browse files

Merge mysqldev@production.mysql.com:my/mysql-5.1-release

into  mysql.com:/home/cps/mysql/trees/5.1/5.1-virgin-no-debug


mysql-test/mysql-test-run.pl:
  Auto merged
sql/log.cc:
  Auto merged
sql/log.h:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
parents 733b1c40 9aac55c4
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -1836,7 +1836,7 @@ EOF
;

    print OUT "nonguarded\n" if $instance->{'nonguarded'};
    print OUT "old-log-format\n" if $instance->{'old_log_format'};
    print OUT "log-output=FILE\n" if $instance->{'old_log_format'};
    print OUT "\n";
  }

+2 −2
Original line number Diff line number Diff line
@@ -21,7 +21,7 @@ skip-stack-trace VALUE
skip-innodb	VALUE
skip-bdb	VALUE
skip-ndbcluster	VALUE
old-log-format	VALUE
log-output	VALUE
SHOW INSTANCE OPTIONS mysqld2;
option_name	value
instance_name	VALUE
@@ -42,7 +42,7 @@ skip-stack-trace VALUE
skip-innodb	VALUE
skip-bdb	VALUE
skip-ndbcluster	VALUE
old-log-format	VALUE
log-output	VALUE
START INSTANCE mysqld2;
STOP INSTANCE mysqld2;
SHOW mysqld1 LOG FILES;
+38 −29
Original line number Diff line number Diff line
@@ -608,7 +608,7 @@ void LOGGER::init_base()
    file_log_handler= new Log_to_file_event_handler;

  /* by default we use traditional error log */
  init_error_log(LEGACY);
  init_error_log(LOG_FILE);

  file_log_handler->init_pthread_objects();
  (void) pthread_mutex_init(&LOCK_logger, MY_MUTEX_INIT_SLOW);
@@ -816,41 +816,47 @@ bool LOGGER::general_log_print(THD *thd, enum enum_server_command command,
  return error;
}

void LOGGER::init_error_log(enum enum_printer error_log_printer)
void LOGGER::init_error_log(uint error_log_printer)
{
  if (error_log_printer & LOG_NONE)
  {
  switch (error_log_printer) {
  case NONE:
    error_log_handler_list[0]= 0;
    break;
  case LEGACY:
    return;
  }

  switch (error_log_printer) {
  case LOG_FILE:
    error_log_handler_list[0]= file_log_handler;
    error_log_handler_list[1]= 0;
    break;
    /* these two are disabled for now */
  case CSV:
  case LOG_TABLE:
    DBUG_ASSERT(0);
    break;
  case LEGACY_AND_CSV:
  case LOG_TABLE|LOG_FILE:
    DBUG_ASSERT(0);
    break;
  }
}

void LOGGER::init_slow_log(enum enum_printer slow_log_printer)
void LOGGER::init_slow_log(uint slow_log_printer)
{
  if (slow_log_printer & LOG_NONE)
  {
  switch (slow_log_printer) {
  case NONE:
    slow_log_handler_list[0]= 0;
    break;
  case LEGACY:
    return;
  }

  switch (slow_log_printer) {
  case LOG_FILE:
    slow_log_handler_list[0]= file_log_handler;
    slow_log_handler_list[1]= 0;
    break;
  case CSV:
  case LOG_TABLE:
    slow_log_handler_list[0]= table_log_handler;
    slow_log_handler_list[1]= 0;
    break;
  case LEGACY_AND_CSV:
  case LOG_TABLE|LOG_FILE:
    slow_log_handler_list[0]= file_log_handler;
    slow_log_handler_list[1]= table_log_handler;
    slow_log_handler_list[2]= 0;
@@ -858,21 +864,24 @@ void LOGGER::init_slow_log(enum enum_printer slow_log_printer)
  }
}

void LOGGER::init_general_log(enum enum_printer general_log_printer)
void LOGGER::init_general_log(uint general_log_printer)
{
  if (general_log_printer & LOG_NONE)
  {
  switch (general_log_printer) {
  case NONE:
    general_log_handler_list[0]= 0;
    break;
  case LEGACY:
    return;
  }

  switch (general_log_printer) {
  case LOG_FILE:
    general_log_handler_list[0]= file_log_handler;
    general_log_handler_list[1]= 0;
    break;
  case CSV:
  case LOG_TABLE:
    general_log_handler_list[0]= table_log_handler;
    general_log_handler_list[1]= 0;
    break;
  case LEGACY_AND_CSV:
  case LOG_TABLE|LOG_FILE:
    general_log_handler_list[0]= file_log_handler;
    general_log_handler_list[1]= table_log_handler;
    general_log_handler_list[2]= 0;
@@ -903,20 +912,20 @@ bool Log_to_csv_event_handler::init()
  return (open_log_table(QUERY_LOG_GENERAL) || open_log_table(QUERY_LOG_SLOW));
}

int LOGGER::set_handlers(enum enum_printer error_log_printer,
                         enum enum_printer slow_log_printer,
                         enum enum_printer general_log_printer)
int LOGGER::set_handlers(uint error_log_printer,
                         uint slow_log_printer,
                         uint general_log_printer)
{
  /* error log table is not supported yet */
  DBUG_ASSERT(error_log_printer < CSV);
  DBUG_ASSERT(error_log_printer < LOG_TABLE);

  lock();

  if ((slow_log_printer >= CSV || general_log_printer >= CSV) &&
  if ((slow_log_printer & LOG_TABLE || general_log_printer & LOG_TABLE) &&
      !is_log_tables_initialized)
  {
    slow_log_printer= LEGACY;
    general_log_printer= LEGACY;
    slow_log_printer= (slow_log_printer & ~LOG_TABLE) | LOG_FILE;
    general_log_printer= (general_log_printer & ~LOG_TABLE) | LOG_FILE;

    sql_print_error("Failed to initialize log tables. "
                    "Falling back to the old-fashioned logs");
+10 −14
Original line number Diff line number Diff line
@@ -138,14 +138,10 @@ typedef struct st_log_info
*/
#define MAX_LOG_HANDLERS_NUM 3

enum enum_printer
{
  NONE,
  LEGACY,
  CSV,
  LEGACY_AND_CSV
};

/* log event handler flags */
#define LOG_NONE       1
#define LOG_FILE       2
#define LOG_TABLE      4

class Log_event;
class Rows_log_event;
@@ -500,12 +496,12 @@ class LOGGER
  bool reopen_log_table(uint log_type);

  /* we use this function to setup all enabled log event handlers */
  int set_handlers(enum enum_printer error_log_printer,
                   enum enum_printer slow_log_printer,
                   enum enum_printer general_log_printer);
  void init_error_log(enum enum_printer error_log_printer);
  void init_slow_log(enum enum_printer slow_log_printer);
  void init_general_log(enum enum_printer general_log_printer);
  int set_handlers(uint error_log_printer,
                   uint slow_log_printer,
                   uint general_log_printer);
  void init_error_log(uint error_log_printer);
  void init_slow_log(uint slow_log_printer);
  void init_general_log(uint general_log_printer);
 };

#endif /* LOG_H */
+0 −1
Original line number Diff line number Diff line
@@ -1305,7 +1305,6 @@ extern my_bool locked_in_memory;
extern bool opt_using_transactions, mysqld_embedded;
extern bool using_update_log, opt_large_files, server_id_supplied;
extern bool opt_log, opt_update_log, opt_bin_log, opt_slow_log, opt_error_log;
extern bool opt_old_log_format;
extern bool opt_disable_networking, opt_skip_show_db;
extern my_bool opt_character_set_client_handshake;
extern bool volatile abort_loop, shutdown_in_progress, grant_option;
Loading