my $self = shift;
my $dest_dbc = $self->param('dest_dbc');
my $mode = $self->param('mode');
my $table = $self->param('table');
my $where = $self->param('where');
my $src_before = $self->param('src_before');
if($mode eq 'overwrite') {
my $dest_after = $self->get_row_count($dest_dbc, $table, $where);
if($src_before == $dest_after) {
$self->warning("Successfully copied $src_before '$table' rows");
} else {
die "Could not copy '$table' rows: $src_before rows from source copied into $dest_after rows in target\n";
}
} else {
my $dest_row_increase = $self->get_row_count($dest_dbc, $table) - $self->param('dest_before_all');
if($mode eq 'topup') {
if($src_before <= $dest_row_increase) {
$self->warning("Cannot check success/failure in this mode, but the number of '$table' rows in target increased by $dest_row_increase (higher than $src_before)");
} else {
die "Could not add rows: $src_before '$table' rows from source copied into $dest_row_increase rows in target\n";
}
} elsif($mode eq 'insertignore') {
$self->warning("Cannot check success/failure in this mode, but the number of '$table' rows in target increased by $dest_row_increase");
}
}
}