ipfs / go-ds-pebble

A datastore implementation backed by https://github.com/cockroachdb/pebble (experimental)
Other
9 stars 9 forks source link

Revert "Use prefix iterators for Get/Has()" #28

Closed hsanjuan closed 1 year ago

hsanjuan commented 1 year ago

Upon testing this on high concurrency scenario, it would seem that this makes reading very very slow in comparison to the previous implementation (ie. 50 vs 3000 ipfs block-reads per second).

For this reason we must revert.

hsanjuan commented 1 year ago

Hmmm i think things may slow down too even with this reverted :cry:

github-actions[bot] commented 1 year ago

Suggested version: v0.2.5

Comparing to: v0.2.4 (diff)

Changes in go.mod file(s):

diff --git a/go.mod b/go.mod
index 4eb1c16..2de2b87 100644
--- a/go.mod
+++ b/go.mod
@@ -1,6 +1,6 @@
 module github.com/ipfs/go-ds-pebble

-go 1.19
+go 1.20

 require (
    github.com/cockroachdb/pebble v0.0.0-20230227185959-8285e8dd5c08

gorelease says:

# diagnostics
required module github.com/kataras/iris/v12@v12.0.1 retracted by module author: Retract older versions as only latest is to be depended upon. Please update to @latest
required module github.com/microcosm-cc/bluemonday@v1.0.2 retracted by module author: Retract older versions as only latest is to be depended upon

# summary
Suggested version: v0.3.0

gocompat says:

Your branch is up to date with 'origin/master'.

Cutting a Release (and modifying non-markdown files)

This PR is modifying both version.json and non-markdown files. The Release Checker is not able to analyse files that are not checked in to master. This might cause the above analysis to be inaccurate. Please consider performing all the code changes in a separate PR before cutting the release.

Automatically created GitHub Release

A draft GitHub Release has been created. It is going to be published when this PR is merged. You can modify its' body to include any release notes you wish to include with the release.

hsanjuan commented 1 year ago

This is merged because upstream pebble uses bloom filters now, so we don't need to complicate things here.

See: https://github.com/cockroachdb/pebble/issues/197.