Syntax:
MASTER_POS_WAIT(log_name,log_pos[,timeout][,channel])

This function is useful for control of master/slave synchronization. It
blocks until the slave has read and applied all updates up to the
specified position in the master log. The return value is the number of
log events the slave had to wait for to advance to the specified
position. The function returns NULL if the slave SQL thread is not
started, the slave's master information is not initialized, the
arguments are incorrect, or an error occurs. It returns -1 if the
timeout has been exceeded. If the slave SQL thread stops while
MASTER_POS_WAIT() is waiting, the function returns NULL. If the slave
is past the specified position, the function returns immediately.

On a multi-threaded slave, the function waits until expiry of the limit
set by the slave_checkpoint_group or slave_checkpoint_period system
variable, when the checkpoint operation is called to update the status
of the slave. Depending on the setting for the system variables, the
function might therefore return some time after the specified position
was reached.

If a timeout value is specified, MASTER_POS_WAIT() stops waiting when
timeout seconds have elapsed. timeout must be greater than 0; a zero or
negative timeout means no timeout.

The optional channel value enables you to name which replication
channel the function applies to. See
http://dev.mysql.com/doc/refman/5.7/en/replication-channels.html for
more information.

URL: http://dev.mysql.com/doc/refman/5.7/en/miscellaneous-functions.html

