diff --git a/index/upside_down/benchmark_common_test.go b/index/upside_down/benchmark_common_test.go new file mode 100644 index 00000000..ff9a854a --- /dev/null +++ b/index/upside_down/benchmark_common_test.go @@ -0,0 +1,27 @@ +package upside_down + +import ( + "strconv" + "testing" + + "github.com/couchbaselabs/bleve/document" + "github.com/couchbaselabs/bleve/index/store" +) + +func CommonBenchmarkIndex(b *testing.B, s store.KVStore) { + + index := NewUpsideDownCouch(s) + + indexDocument := document.NewDocument(""). + AddField(document.NewTextField("body", []byte("A boiling liquid expanding vapor explosion (BLEVE, /ˈblɛviː/ blev-ee) is an explosion caused by the rupture of a vessel containing a pressurized liquid above its boiling point."))) + + b.ResetTimer() + for i := 0; i < b.N; i++ { + indexDocument.ID = strconv.Itoa(i) + err := index.Update(indexDocument) + if err != nil { + b.Fatal(err) + } + } + +} diff --git a/index/upside_down/benchmark_forestdb_test.go b/index/upside_down/benchmark_forestdb_test.go new file mode 100644 index 00000000..f3adf467 --- /dev/null +++ b/index/upside_down/benchmark_forestdb_test.go @@ -0,0 +1,21 @@ +// +build forestdb + +package upside_down + +import ( + "os" + "testing" + + "github.com/couchbaselabs/bleve/index/store/goforestdb" +) + +func BenchmarkForestDBIndexing(b *testing.B) { + s, err := goforestdb.Open("test") + if err != nil { + b.Fatal(err) + } + defer os.RemoveAll("test") + defer s.Close() + + CommonBenchmarkIndex(b, s) +} diff --git a/index/upside_down/benchmark_gouchstore_test.go b/index/upside_down/benchmark_gouchstore_test.go new file mode 100644 index 00000000..9cca9d2e --- /dev/null +++ b/index/upside_down/benchmark_gouchstore_test.go @@ -0,0 +1,19 @@ +package upside_down + +import ( + "os" + "testing" + + "github.com/couchbaselabs/bleve/index/store/gouchstore" +) + +func BenchmarkGouchstoreIndexing(b *testing.B) { + s, err := gouchstore.Open("test") + if err != nil { + b.Fatal(err) + } + defer os.RemoveAll("test") + defer s.Close() + + CommonBenchmarkIndex(b, s) +} diff --git a/index/upside_down/benchmark_leveldb_test.go b/index/upside_down/benchmark_leveldb_test.go new file mode 100644 index 00000000..ef5f08c2 --- /dev/null +++ b/index/upside_down/benchmark_leveldb_test.go @@ -0,0 +1,19 @@ +package upside_down + +import ( + "os" + "testing" + + "github.com/couchbaselabs/bleve/index/store/leveldb" +) + +func BenchmarkLevelDBIndexing(b *testing.B) { + s, err := leveldb.Open("test") + if err != nil { + b.Fatal(err) + } + defer os.RemoveAll("test") + defer s.Close() + + CommonBenchmarkIndex(b, s) +}