diff --git a/db/db_test.go b/db/db_test.go index ee003ca417b25ff96732a89b815f90fe6afc7fdd..dd5d82f10371b42da9243813449a33c6c37f55df 100644 --- a/db/db_test.go +++ b/db/db_test.go @@ -19,6 +19,9 @@ const ( // How many events to fill up the db, test/bench cases. manyEventsTest = 100000 manyEventsBench = 1000000 + + // When writing events to the db, do it in batches of this size. + writeBatchSize = 1000 ) func randomIP() string { @@ -151,10 +154,9 @@ func runWriteBench(b *testing.B, driver string) { } defer db.Close() - // Chunks of 100. - chunkSize := 1000 - nchunks := b.N / chunkSize - events := randomEvents(chunkSize) + // Write events in chunks. + nchunks := b.N / writeBatchSize + events := randomEvents(writeBatchSize) b.ResetTimer() @@ -188,9 +190,10 @@ func runReadBenchmark(b *testing.B, driver string, eventsPerIP int, threadCounts // Write a lot of events just to bulk up the database, but // also write a couple of records for a known IP, that we're - // going to read in the benchmark. - n := manyEventsBench - db.AddAggregate(randomEvents(n)) + // going to read in the benchmark. Do it in batches. + for i := 0; i < manyEventsBench; i += writeBatchSize { + db.AddAggregate(randomEvents(writeBatchSize)) + } // For a bunch of random IPs, add a known (possibly large) // number of events.