Lines 94-102
sub process {
Link Here
|
94 |
@deleted_biblionumbers ); |
94 |
@deleted_biblionumbers ); |
95 |
|
95 |
|
96 |
try { |
96 |
try { |
97 |
my $schema = Koha::Database->new->schema; |
|
|
98 |
$schema->txn_do( |
99 |
sub { |
100 |
my (@biblionumbers); |
97 |
my (@biblionumbers); |
101 |
for my $record_id ( sort { $a <=> $b } @record_ids ) { |
98 |
for my $record_id ( sort { $a <=> $b } @record_ids ) { |
102 |
|
99 |
|
Lines 107-113
sub process {
Link Here
|
107 |
my $return = $item->safe_delete({ skip_record_index => 1, skip_holds_queue => 1 }); |
104 |
my $return = $item->safe_delete({ skip_record_index => 1, skip_holds_queue => 1 }); |
108 |
unless ( $return ) { |
105 |
unless ( $return ) { |
109 |
|
106 |
|
110 |
# FIXME Do we need to rollback the whole transaction if a deletion failed? |
|
|
111 |
push @not_deleted_itemnumbers, $item->itemnumber; |
107 |
push @not_deleted_itemnumbers, $item->itemnumber; |
112 |
push @messages, |
108 |
push @messages, |
113 |
{ |
109 |
{ |
Lines 173-180
sub process {
Link Here
|
173 |
} |
169 |
} |
174 |
) if C4::Context->preference('RealTimeHoldsQueue'); |
170 |
) if C4::Context->preference('RealTimeHoldsQueue'); |
175 |
} |
171 |
} |
176 |
} |
|
|
177 |
); |
178 |
} |
172 |
} |
179 |
catch { |
173 |
catch { |
180 |
|
174 |
|
Lines 187-194
sub process {
Link Here
|
187 |
error => $_, |
181 |
error => $_, |
188 |
}; |
182 |
}; |
189 |
|
183 |
|
190 |
die "Something terrible has happened!" |
|
|
191 |
if ( $_ =~ /Rollback failed/ ); # Rollback failed |
192 |
}; |
184 |
}; |
193 |
|
185 |
|
194 |
$report->{deleted_itemnumbers} = \@deleted_itemnumbers; |
186 |
$report->{deleted_itemnumbers} = \@deleted_itemnumbers; |
195 |
- |
|
|