bug 2423: actually ignore already-imported records
authorGalen Charlton <galen.charlton@liblime.com>
Wed, 30 Jul 2008 23:08:02 +0000 (18:08 -0500)
committerJoshua Ferraro <jmf@liblime.com>
Fri, 1 Aug 2008 04:01:40 +0000 (23:01 -0500)
When recommiting a partially completed MARC
record batch, records that were already imported
(or had an error status) were being processed
again, leading to duplicate bibs.  Corrected
so that these records are actually ignored.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
C4/ImportBatch.pm

index 9f9c7f6..f490fb7 100644 (file)
@@ -469,6 +469,7 @@ sub BatchCommitBibRecords {
         }
         if ($rowref->{'status'} eq 'error' or $rowref->{'status'} eq 'imported') {
             $num_ignored++;
+            next;
         }
 
         my $marc_record = MARC::Record->new_from_usmarc($rowref->{'marc'});
@@ -627,6 +628,7 @@ sub BatchRevertBibRecords {
     while (my $rowref = $sth->fetchrow_hashref) {
         if ($rowref->{'status'} eq 'error' or $rowref->{'status'} eq 'reverted') {
             $num_ignored++;
+            next;
         }
 
         my $bib_result = _get_revert_action($overlay_action, $rowref->{'overlay_status'}, $rowref->{'status'});