diff options
author | Steven Normore <snormore@gmail.com> | 2014-04-14 16:25:04 +0000 |
---|---|---|
committer | Ben Johnson <benbjohnson@yahoo.com> | 2014-04-18 21:44:48 -0500 |
commit | 71e91e24b064c1c8e33d92b7f324b6cd57d07f87 (patch) | |
tree | 58863c8077373f832b2cf608f8c746faf9cc9438 /cmd/bolt/bench/generate.go | |
parent | add bench sub-package (diff) | |
download | dedo-71e91e24b064c1c8e33d92b7f324b6cd57d07f87.tar.gz dedo-71e91e24b064c1c8e33d92b7f324b6cd57d07f87.tar.xz |
move bench package to bench/cmd/bolt/bench
Diffstat (limited to 'cmd/bolt/bench/generate.go')
-rw-r--r-- | cmd/bolt/bench/generate.go | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/cmd/bolt/bench/generate.go b/cmd/bolt/bench/generate.go new file mode 100644 index 0000000..8c5554d --- /dev/null +++ b/cmd/bolt/bench/generate.go @@ -0,0 +1,24 @@ +package bench + +import ( + "fmt" + "strings" + + "github.com/boltdb/bolt" +) + +// Generate and write data to specified number of buckets/items. +func GenerateDB(db *bolt.DB, numBuckets, numItemsPerBucket int) error { + return db.Update(func(tx *bolt.Tx) error { + for bucketIndex := 0; bucketIndex < numBuckets; bucketIndex++ { + bucketName := fmt.Sprintf("bucket%08d") + tx.CreateBucket([]byte(bucketName)) + bucket := tx.Bucket([]byte(bucketName)) + for i := 0; i < numItemsPerBucket; i++ { + value := []byte(strings.Repeat("0", 100)) + bucket.Put([]byte(fmt.Sprintf("key%08d", i)), value) + } + } + return nil + }) +} |