74 lines
2.1 KiB
PHP
74 lines
2.1 KiB
PHP
# ==== Purpose ====
|
|
#
|
|
# Execute a .inc file once for master-slave connection that was
|
|
# configured by rpl_init.inc. For each connection, it sets the
|
|
# following variables:
|
|
#
|
|
# $rpl_master, $rpl_slave
|
|
# The server number of the master and of the slave.
|
|
#
|
|
# $rpl_channel_name
|
|
# If $rpl_multi_source is set, the name of the channel by which
|
|
# the slave connects to the master. Otherwise the empty string.
|
|
#
|
|
# $rpl_connection_number
|
|
# 1 for the first connection, 2 for the second connection, etc.
|
|
#
|
|
# Moreover, the current connection will be set to server_$rpl_slave.
|
|
#
|
|
# ==== Usage ====
|
|
#
|
|
# --let $rpl_source_file= FILE
|
|
# [--let $rpl_multi_source= 1]
|
|
# [--let $rpl_debug= 1]
|
|
# --source include/rpl_for_each_connection.inc
|
|
#
|
|
# Parameters:
|
|
# $rpl_source_file
|
|
# The file that will be sourced.
|
|
#
|
|
# $rpl_multi_source
|
|
# If this is set, $rpl_channel_name is set.
|
|
#
|
|
# $rpl_debug
|
|
# See include/rpl_init.inc
|
|
|
|
|
|
--let $include_filename= rpl_for_each_connection.inc [$rpl_source_file]
|
|
--source include/begin_include_file.inc
|
|
|
|
--let $rpl_connection_number= 1
|
|
while ($rpl_connection_number <= $rpl_connection_count)
|
|
{
|
|
# 'mX sY mZ sW ...'
|
|
# ^ _rfec_offset points here in the second iteration
|
|
--let $_rfec_offset= 1 + ($rpl_connection_number - 1) * 2 * (2 + $rpl_server_count_length)
|
|
--let $rpl_master= `SELECT SUBSTRING('$rpl_connection_list', $_rfec_offset + 1, $rpl_server_count_length)`
|
|
--let $rpl_slave= `SELECT SUBSTRING('$rpl_connection_list', $_rfec_offset + 1 + $rpl_server_count_length + 2, $rpl_server_count_length)`
|
|
|
|
--let $rpl_channel_name=
|
|
if ($rpl_multi_source)
|
|
{
|
|
--let $rpl_channel_name= 'channel_$rpl_master'
|
|
}
|
|
|
|
if ($rpl_debug)
|
|
{
|
|
--echo # debug: rpl_for_each_connection.inc: connection=$rpl_connection master=$rpl_master slave=$rpl_slave
|
|
}
|
|
|
|
--let $rpl_connection_name= server_$rpl_slave
|
|
--source include/rpl_connection.inc
|
|
--source $rpl_source_file
|
|
|
|
--inc $rpl_connection_number
|
|
}
|
|
|
|
--let $rpl_master=
|
|
--let $rpl_slave=
|
|
--let $rpl_connection_number=
|
|
--let $rpl_channel_name=
|
|
|
|
--let $include_filename= rpl_for_each_connection.inc [$rpl_source_file]
|
|
--source include/end_include_file.inc
|