Der Warenimport hat bisher alle Waren ausgelesen und dann im Hash umsortiert.
Bei einer Datenbank mit 84k Waren hat das 22s gedauert, und 700MB
Arbeitsspeicher gefressen, das ist nicht zumutbar. Nun wird jeder Wert einzeln
aus der Datenbank gesucht.
my $object = $entry->{object};
- $entry->{part} = $self->parts_by->{partnumber}->{ $object->type }->{ $object->partnumber };
+ $entry->{part} = SL::DB::Manager::Part->find_by(
+ SL::DB::Manager::Part->type_filter($object->type),
+ ( partnumber => $object->partnumber ) x!! $object->partnumber,
+ );
if ($self->settings->{article_number_policy} eq 'update_prices') {
if ($entry->{part}) {