• unknown's avatar
    WL#912 (more user control on relay logs): · 27601fc5
    unknown authored
    FLUSH LOGS now rotates relay logs,
    and a new variable max_relay_log_size.
    Plus a very small bit of code cleaning.
    
    
    libmysqld/lib_sql.cc:
      open_log has no default arguments anymore.
    mysql-test/r/rpl_flush_log_loop.result:
      result update now that FLUSH LOGS rotates relay logs.
    mysql-test/r/rpl_log.result:
      result update now that FLUSH LOGS rotates relay logs.
    mysql-test/r/rpl_rotate_logs.result:
      result update now that max_binlog_size is 4096.
    mysql-test/t/rpl_rotate_logs-master.opt:
      now max_binlog_size must be a multiple of 4096 (see change in mysqld.cc)
    sql/log.cc:
      Got rid of default arguments of various MYSQL_LOG methods (the default arguments
      made code reading uneasy).
      Set max_size in ::init().
      New function set_max_size() to set max_size of a MYSQL_LOG on-the-fly.
      More DBUG info.
    sql/mysql_priv.h:
      no defaults in open_log().
      New variables max_relay_log_size.
    sql/mysqld.cc:
      New variable and option max_relay_log_size.
      max_binlog_size and max_relay_log_size are multiples of IO_SIZE.
      No more default arguments for log functions.
    sql/set_var.cc:
      New variable max_relay_log_size.
      If it is 0, then max_binlog_size will apply to relay logs.
      When one of these variables is changed, fix_max_%log_size is called
      to update max_size of the binary and/or relay logs.
    sql/slave.cc:
      New function rotate_relay_log().
    sql/slave.h:
      New function rotate_relay_log().
    sql/sql_class.h:
      New member max_size of MYSQL_LOG (for automatic rotation).
      New method set_max_size() for setting on-the-fly.
    sql/sql_parse.cc:
      Flush the relay log in FLUSH LOGS.
    27601fc5
log.cc 44.9 KB