1 /* Copyright (c) 2000-2008 MySQL AB
3 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License as published by
5 the Free Software Foundation; version 2 of the License.
7 This program is distributed in the hope that it will be useful,
8 but WITHOUT ANY WARRANTY; without even the implied warranty of
9 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10 GNU General Public License for more details.
12 You should have received a copy of the GNU General Public License
13 along with this program; if not, write to the Free Software
14 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
16 #include "rpl_filter.h"
18 #ifdef HAVE_REPLICATION
21 typedef struct st_slave_info
24 uint32 rpl_recovery_rank
, master_id
;
25 char host
[HOSTNAME_LENGTH
+1];
26 char user
[USERNAME_LENGTH
+1];
27 char password
[MAX_PASSWORD_LENGTH
+1];
32 extern my_bool opt_show_slave_auth_info
;
33 extern char *master_host
, *master_info_file
;
34 extern bool server_id_supplied
;
36 extern int max_binlog_dump_events
;
37 extern my_bool opt_sporadic_binlog_dump_fail
;
39 int start_slave(THD
* thd
, Master_info
* mi
, bool net_report
);
40 int stop_slave(THD
* thd
, Master_info
* mi
, bool net_report
);
41 bool change_master(THD
* thd
, Master_info
* mi
);
42 bool mysql_show_binlog_events(THD
* thd
);
43 int cmp_master_pos(const char* log_file_name1
, ulonglong log_pos1
,
44 const char* log_file_name2
, ulonglong log_pos2
);
45 int reset_slave(THD
*thd
, Master_info
* mi
);
46 int reset_master(THD
* thd
);
47 bool purge_master_logs(THD
* thd
, const char* to_log
);
48 bool purge_master_logs_before_date(THD
* thd
, time_t purge_time
);
49 bool log_in_use(const char* log_name
);
50 void adjust_linfo_offsets(my_off_t purge_offset
);
51 bool show_binlogs(THD
* thd
);
52 extern int init_master_info(Master_info
* mi
);
53 void kill_zombie_dump_threads(uint32 slave_server_id
);
54 int check_binlog_magic(IO_CACHE
* log
, const char** errmsg
);
56 typedef struct st_load_file_info
59 my_off_t last_pos_in_file
;
60 bool wrote_create_file
, log_delayed
;
63 int log_loaded_block(IO_CACHE
* file
);
64 int init_replication_sys_vars();
66 #endif /* HAVE_REPLICATION */