only adjust batch size if more than one batch was used

ref #344
This commit is contained in:
Collin Barrett 2018-08-25 08:40:46 -05:00
parent 3dcb62b841
commit 8919ea5eaa

View file

@ -20,9 +20,11 @@ public async Task<int> GetBatchSize()
{
var recentSnapPerfs = await GetRecentSnapPerfs();
return recentSnapPerfs.Count == 2
? (recentSnapPerfs[0].RulesPerMs >= recentSnapPerfs[1].RulesPerMs
? (int)Math.Round(recentSnapPerfs[0].BatchSize * (1 + PercentMultiplier))
: (int)Math.Round(recentSnapPerfs[0].BatchSize * (1 - PercentMultiplier)))
? recentSnapPerfs[0].RulesCount > recentSnapPerfs[0].BatchSize
? (recentSnapPerfs[0].RulesPerMs >= recentSnapPerfs[1].RulesPerMs
? (int)Math.Round(recentSnapPerfs[0].BatchSize * (1 + PercentMultiplier))
: (int)Math.Round(recentSnapPerfs[0].BatchSize * (1 - PercentMultiplier)))
: recentSnapPerfs[0].BatchSize
: DefaultBatchSize;
}
@ -43,7 +45,7 @@ await DbContext.Snapshots
private class SnapshotPerformance
{
public int BatchSize { get; set; }
public int RulesCount { private get; set; }
public int RulesCount { get; set; }
public DateTime CreatedDateUtc { private get; set; }
public DateTime ModifiedDateUtc { private get; set; }
public int RulesPerMs => (ModifiedDateUtc - CreatedDateUtc).Milliseconds / RulesCount;