// Tests a batch of queries very similar to those that that PGBench runs // in its TPC-B(ish) mode. func runPgbenchQueryParallel(b *testing.B, db *gosql.DB) { if err := pgbench.SetupBenchDB(db, 20000, true /*quiet*/); err != nil { b.Fatal(err) } retryOpts := retry.Options{ InitialBackoff: 1 * time.Millisecond, MaxBackoff: 200 * time.Millisecond, Multiplier: 2, } b.ResetTimer() b.RunParallel(func(pb *testing.PB) { src := rand.New(rand.NewSource(5432)) r := retry.Start(retryOpts) var err error for pb.Next() { r.Reset() for r.Next() { err = pgbench.RunOne(db, src, 20000) if err == nil { break } } if err != nil { b.Fatal(err) } } }) b.StopTimer() }
// Tests a batch of queries very similar to those that that PGBench runs // in its TPC-B(ish) mode. func runPgbenchQuery(b *testing.B, db *gosql.DB) { if err := pgbench.SetupBenchDB(db, 20000, true /*quiet*/); err != nil { b.Fatal(err) } src := rand.New(rand.NewSource(5432)) b.ResetTimer() for i := 0; i < b.N; i++ { if err := pgbench.RunOne(db, src, 20000); err != nil { b.Fatal(err) } } b.StopTimer() }