24c24
< $slavehost,$slaveport,$slaveuser,$slavepassword);
---
> $slavehost,$slaveport,$slaveuser,$slavepassword,$loop);
33c33
< "snapshot=s" => \$snapshot,
---
> "snapshot=s" => \$snapshot, "loop|l=i" => \$loop,
94a95,96
> $SIG{HUP} = sub { $loop = 0 };
>
133d134
< SyncSync($mconn, $sconn);
135,149c136,142
< my $outf = new IO::File;
< open $outf, ">$snapshot";
< print "\n>>>>>>>>>>>>> Prepare Snapshot\n\n" if ($verbose);
< my $res = PrepareSnapshot($mconn, $sconn, $outf, $slaveId, $tables);
< close $outf;
< if ($res < 0) {
< unlink $fname;
< die "\n>>>>>>>>>>>>> ERROR\n";
< }
< if ($res == 0)
< {
< print "\n>>>>>>>>>>>>> DBases are sync-ed\n" if ($verbose);
< unlink $snapshot unless ($debug);
< unlink $fname;
< exit(0);
---
> if ( ! $loop ) {
> &doReplication;
> } else {
> while ( $loop ) {
> &doReplication;
> sleep( $loop );
> }
152,167d144
< my $inpf = new IO::File;
< open $inpf, "<$snapshot";
< print "\n>>>>>>>>>>>>> Apply Snapshot\n\n" if ($verbose);
< $res = ApplySnapshot($sconn, $inpf, $tables);
< close $inpf;
< if ($res < 0) {
< unlink $fname;
< die "\n>>>>>>>>>>>>> ERROR\n";
< }
<
< if ($res > 0)
< {
< print "Snapshot applied\n" if ($verbose);
< unlink $snapshot unless ($debug);
< SyncSync($mconn, $sconn);
< }
169d145
< unlink $fname;
173a150,189
> sub doReplication {
> SyncSync($mconn, $sconn);
>
> my $outf = new IO::File;
> open $outf, ">$snapshot";
> print "\n>>>>>>>>>>>>> Prepare Snapshot\n\n" if ($verbose);
> my $res = PrepareSnapshot($mconn, $sconn, $outf, $slaveId, $tables);
> close $outf;
> if ($res < 0) {
> unlink $fname;
> die "\n>>>>>>>>>>>>> ERROR\n";
> }
> if ($res == 0)
> {
> print "\n>>>>>>>>>>>>> DBases are sync-ed\n" if ($verbose);
> unlink $snapshot unless ($debug);
> unlink $fname;
> return(0);
> }
>
> my $inpf = new IO::File;
> open $inpf, "<$snapshot";
> print "\n>>>>>>>>>>>>> Apply Snapshot\n\n" if ($verbose);
> $res = ApplySnapshot($sconn, $inpf, $tables);
> close $inpf;
> if ($res < 0) {
> unlink $fname;
> die "\n>>>>>>>>>>>>> ERROR\n";
> }
>
> if ($res > 0)
> {
> print "Snapshot applied\n" if ($verbose);
> unlink $snapshot unless ($debug);
> SyncSync($mconn, $sconn);
> }
>
> unlink $fname;
> }
>
183,184c199,200
< print "Last SyncID applied: $syncid\n" if ($verbose);
< print "Sync SyncID\n" if ($verbose);
---
> print "Last SyncID applied: $syncid\n" if ($verbose);
> print "Sync SyncID\n" if ($verbose);
186c202
< $res = SyncSyncID($mconn, $slaveId, $syncid);
---
> my $res = SyncSyncID($mconn, $slaveId, $syncid);
188c204
< print "Succeeded\n" if (($res > 0) && ($verbose));
---
> print "Succeeded\n" if (($res > 0) && ($verbose));
