From d9fd73ccb35d0a5031121d26331b9b53ceda5596 Mon Sep 17 00:00:00 2001 From: "Collin M. Barrett" Date: Sat, 25 Aug 2018 09:46:14 -0500 Subject: [PATCH] lazy-create batches --- src/FilterLists.Services/Snapshot/Snapshot.cs | 18 +++++------------- 1 file changed, 5 insertions(+), 13 deletions(-) diff --git a/src/FilterLists.Services/Snapshot/Snapshot.cs b/src/FilterLists.Services/Snapshot/Snapshot.cs index 09442cd70..2e30504d0 100644 --- a/src/FilterLists.Services/Snapshot/Snapshot.cs +++ b/src/FilterLists.Services/Snapshot/Snapshot.cs @@ -1,7 +1,6 @@ using System; using System.Collections.Generic; using System.IO; -using System.Linq; using System.Net; using System.Net.Http; using System.Threading; @@ -120,21 +119,14 @@ private async Task GetLines() } private async Task SaveInBatches() - { - var snapBatches = await CreateBatches(); - SaveBatches(snapBatches); - } - - private async Task> CreateBatches() { SnapEntity.BatchSize = await batchSizeService.GetBatchSize(); - return lines.Batch(SnapEntity.BatchSize.Value).Select(b => new Batch(dbContext, b, SnapEntity)); - } - - private static void SaveBatches(IEnumerable batches) - { - foreach (var batch in batches) + var lineBatches = lines.Batch(SnapEntity.BatchSize.Value); + foreach (var lineBatch in lineBatches) + { + var batch = new Batch(dbContext, lineBatch, SnapEntity); batch.Save(); + } } private async Task SetSuccessful()