Du kan använda funktionen fetchall_arrayref som accepterar ett 'maxrows'-argument:
while (my $data = $dbc->fetchall_arrayref(undef, 10000)) {
for my $row( @{$data} ) {
$report->process_record($row);
}
}
Du kan också titta på RowCacheSize egenskap som försöker kontrollera hur många poster som returneras i en hämtning från din drivrutin.