MySQL 5.6.14 Source Code Document
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
rpl_reconnect.inc
1 # ==== Purpose ====
2 #
3 # After a server has restarted, this waits for all clients configured
4 # by rpl_init.inc and/or master-slave.inc to reconnect again.
5 #
6 # For each connection, it issues this:
7 # --enable_reconnect
8 # --source include/wait_until_connected_again.inc
9 # --disable_reconnect
10 #
11 #
12 # ==== Usage ====
13 #
14 # --let $rpl_server_number= N
15 # [--let $rpl_extra_connections_per_server= 1]
16 # [--let $rpl_debug= 1]
17 # --source include/rpl_reconnect.inc
18 #
19 # Parameters:
20 # $rpl_server_number
21 # Number to identify the server that needs to reconnect. 1 is the
22 # master server, 2 the slave server, 3 the 3rd server, and so on.
23 # Cf. include/rpl_init.inc
24 #
25 # $rpl_extra_connections_per_server, $rpl_debug
26 # See include/rpl_init.inc
27 
28 --let $include_filename= rpl_reconnect.inc
29 --source include/begin_include_file.inc
30 
31 if (!$rpl_server_number)
32 {
33  --die ERROR IN TEST: you must set $rpl_server_number before you source rpl_connect.inc
34 }
35 
36 if ($_rpl_extra_connections_per_server == '')
37 {
38  --let $_rpl_extra_connections_per_server= 1
39 }
40 
41 
42 if ($rpl_debug)
43 {
44  --echo ---- Enable reconnect ----
45 }
46 
47 --let $_rpl_server_number= $rpl_server_number
48 
49 --dec $_rpl_server_number
50 if (!$_rpl_server_number)
51 {
52  --let $rpl_connection_name= default
53  --source include/rpl_connection.inc
54  --enable_reconnect
55 
56  --let $rpl_connection_name= master
57  --source include/rpl_connection.inc
58  --enable_reconnect
59 
60  --let $rpl_connection_name= master1
61  --source include/rpl_connection.inc
62  --enable_reconnect
63 }
64 
65 --dec $_rpl_server_number
66 if (!$_rpl_server_number)
67 {
68  --let $rpl_connection_name= slave
69  --source include/rpl_connection.inc
70  --enable_reconnect
71 
72  --let $rpl_connection_name= slave1
73  --source include/rpl_connection.inc
74  --enable_reconnect
75 }
76 
77 --let $rpl_connection_name= server_$rpl_server_number
78 --source include/rpl_connection.inc
79 --enable_reconnect
80 
81 --let $_rpl_connection_number= 1
82 while ($_rpl_connection_number <= $_rpl_extra_connections_per_server)
83 {
84  --let $rpl_connection_name= server_$rpl_server_number$underscore$_rpl_connection_number
85  --source include/rpl_connection.inc
86  --enable_reconnect
87  --inc $_rpl_connection_number
88 }
89 
90 if ($rpl_debug)
91 {
92  --echo ---- Wait for reconnect and disable reconnect on all connections ----
93 }
94 
95 --let $_rpl_server_number= $rpl_server_number
96 
97 --dec $_rpl_server_number
98 if (!$_rpl_server_number)
99 {
100  --let $rpl_connection_name= default
101  --source include/rpl_connection.inc
102  --source include/wait_until_connected_again.inc
103  --disable_reconnect
104 
105  --let $rpl_connection_name= master
106  --source include/rpl_connection.inc
107  --source include/wait_until_connected_again.inc
108  --disable_reconnect
109 
110  --let $rpl_connection_name= master1
111  --source include/rpl_connection.inc
112  --source include/wait_until_connected_again.inc
113  --disable_reconnect
114 }
115 
116 --dec $_rpl_server_number
117 if (!$_rpl_server_number)
118 {
119  --let $rpl_connection_name= slave
120  --source include/rpl_connection.inc
121  --source include/wait_until_connected_again.inc
122  --disable_reconnect
123 
124  --let $rpl_connection_name= slave1
125  --source include/rpl_connection.inc
126  --source include/wait_until_connected_again.inc
127  --disable_reconnect
128 }
129 
130 --let $rpl_connection_name= server_$rpl_server_number
131 --source include/rpl_connection.inc
132 --source include/wait_until_connected_again.inc
133 --disable_reconnect
134 
135 --let $_rpl_connection_number= 1
136 while ($_rpl_connection_number <= $_rpl_extra_connections_per_server)
137 {
138  --let $rpl_connection_name= server_$rpl_server_number$underscore$_rpl_connection_number
139  --source include/rpl_connection.inc
140  --source include/wait_until_connected_again.inc
141  --disable_reconnect
142  --inc $_rpl_connection_number
143 }
144 
145 
146 --let $include_filename= rpl_reconnect.inc
147 --source include/end_include_file.inc