From 05bee579322331ab0a081aba619cc048b64ee552 Mon Sep 17 00:00:00 2001 From: James Cole Date: Sun, 25 Aug 2019 16:36:26 +0200 Subject: [PATCH] Second fix for #2480 --- .../Commands/Upgrade/BackToJournals.php | 26 ++++++++++++++----- 1 file changed, 20 insertions(+), 6 deletions(-) diff --git a/app/Console/Commands/Upgrade/BackToJournals.php b/app/Console/Commands/Upgrade/BackToJournals.php index bfd63cf446..82657c1e34 100644 --- a/app/Console/Commands/Upgrade/BackToJournals.php +++ b/app/Console/Commands/Upgrade/BackToJournals.php @@ -85,10 +85,18 @@ class BackToJournals extends Command private function getIdsForBudgets(): array { $transactions = DB::table('budget_transaction')->distinct()->get(['transaction_id'])->pluck('transaction_id')->toArray(); + $array = []; + $chunks = array_chunk($transactions, 50); - return DB::table('transactions') - ->whereIn('transactions.id', $transactions) - ->get(['transaction_journal_id'])->pluck('transaction_journal_id')->toArray(); + foreach ($chunks as $chunk) { + $set = DB::table('transactions') + ->whereIn('transactions.id', $chunk) + ->get(['transaction_journal_id'])->pluck('transaction_journal_id')->toArray(); + /** @noinspection SlowArrayOperationsInLoopInspection */ + $array = array_merge($array, $set); + } + + return $array; } /** @@ -97,10 +105,16 @@ class BackToJournals extends Command private function getIdsForCategories(): array { $transactions = DB::table('category_transaction')->distinct()->get(['transaction_id'])->pluck('transaction_id')->toArray(); + $array = []; + $chunks = array_chunk($transactions, 50); - return DB::table('transactions') - ->whereIn('transactions.id', $transactions) - ->get(['transaction_journal_id'])->pluck('transaction_journal_id')->toArray(); + foreach ($chunks as $chunk) { + $set = DB::table('transactions') + ->whereIn('transactions.id', $transactions) + ->get(['transaction_journal_id'])->pluck('transaction_journal_id')->toArray(); + } + + return $array; } /**