Skip to content

Pebble#304

Closed
faddat wants to merge 14 commits intotendermint:masterfrom
baabeetaa:pebble
Closed

Pebble#304
faddat wants to merge 14 commits intotendermint:masterfrom
baabeetaa:pebble

Conversation

@faddat
Copy link
Contributor

@faddat faddat commented Nov 8, 2022

Pebbledb

@faddat faddat closed this Nov 8, 2022
github-merge-queue bot pushed a commit to cometbft/cometbft that referenced this pull request Jan 29, 2024
This PR integrates pebbledb, a key-value store by Cockroachdb based on
Cockroach Labs findings about cgo:

* https://www.cockroachlabs.com/blog/the-cost-and-complexity-of-cgo/


Unlike any other kv store that cometbft currently supports:

* pebble is actively maintained unlike:
  * goleveldb
  * boltdb
  * badgerdb 
* pebble does not require the use of CGO like:
  * cleveldb
  * rocksdb

In benchmarks:

* pebble performs better than goleveldb, cleveldb and rocksdb
* pebble performs consistently

At Notional Ventures, Pte, we've used and submitted pebble for two years
for:

* archive nodes that would be crushed if they used goleveldb
* high performance RPC infrastructure

Here are the hitstorical pull requests to merge pebble:

* tendermint/tm-db#230
* tendermint/tm-db#231
* tendermint/tm-db#281
* tendermint/tm-db#282
* tendermint/tm-db#283
* tendermint/tm-db#284
* tendermint/tm-db#304
* tendermint/tm-db#321

Pebble snapshots for cosmos blockchains are available here:

* https://snapshot.notional.ventures/

---

#### PR checklist

- [ ] Tests written/updated
- [x] Changelog entry added in `.changelog` (we use
[unclog](https://github.com/informalsystems/unclog) to manage our
changelog)
- [x] Updated relevant documentation (`docs/` or `spec/`) and code
comments
- [x] Title follows the [Conventional
Commits](https://www.conventionalcommits.org/en/v1.0.0/) spec

---------

Co-authored-by: Anton Kaliaev <anton.kalyaev@gmail.com>
mergify bot pushed a commit to cometbft/cometbft that referenced this pull request Jan 29, 2024
This PR integrates pebbledb, a key-value store by Cockroachdb based on
Cockroach Labs findings about cgo:

* https://www.cockroachlabs.com/blog/the-cost-and-complexity-of-cgo/

Unlike any other kv store that cometbft currently supports:

* pebble is actively maintained unlike:
  * goleveldb
  * boltdb
  * badgerdb
* pebble does not require the use of CGO like:
  * cleveldb
  * rocksdb

In benchmarks:

* pebble performs better than goleveldb, cleveldb and rocksdb
* pebble performs consistently

At Notional Ventures, Pte, we've used and submitted pebble for two years
for:

* archive nodes that would be crushed if they used goleveldb
* high performance RPC infrastructure

Here are the hitstorical pull requests to merge pebble:

* tendermint/tm-db#230
* tendermint/tm-db#231
* tendermint/tm-db#281
* tendermint/tm-db#282
* tendermint/tm-db#283
* tendermint/tm-db#284
* tendermint/tm-db#304
* tendermint/tm-db#321

Pebble snapshots for cosmos blockchains are available here:

* https://snapshot.notional.ventures/

---

#### PR checklist

- [ ] Tests written/updated
- [x] Changelog entry added in `.changelog` (we use
[unclog](https://github.com/informalsystems/unclog) to manage our
changelog)
- [x] Updated relevant documentation (`docs/` or `spec/`) and code
comments
- [x] Title follows the [Conventional
Commits](https://www.conventionalcommits.org/en/v1.0.0/) spec

---------

Co-authored-by: Anton Kaliaev <anton.kalyaev@gmail.com>
(cherry picked from commit 82fa3c0)
melekes added a commit to cometbft/cometbft that referenced this pull request Jan 29, 2024
This PR integrates pebbledb, a key-value store by Cockroachdb based on
Cockroach Labs findings about cgo:

* https://www.cockroachlabs.com/blog/the-cost-and-complexity-of-cgo/


Unlike any other kv store that cometbft currently supports:

* pebble is actively maintained unlike:
  * goleveldb
  * boltdb
  * badgerdb 
* pebble does not require the use of CGO like:
  * cleveldb
  * rocksdb

In benchmarks:

* pebble performs better than goleveldb, cleveldb and rocksdb
* pebble performs consistently

At Notional Ventures, Pte, we've used and submitted pebble for two years
for:

* archive nodes that would be crushed if they used goleveldb
* high performance RPC infrastructure

Here are the hitstorical pull requests to merge pebble:

* tendermint/tm-db#230
* tendermint/tm-db#231
* tendermint/tm-db#281
* tendermint/tm-db#282
* tendermint/tm-db#283
* tendermint/tm-db#284
* tendermint/tm-db#304
* tendermint/tm-db#321

Pebble snapshots for cosmos blockchains are available here:

* https://snapshot.notional.ventures/

---

#### PR checklist

- [ ] Tests written/updated
- [x] Changelog entry added in `.changelog` (we use
[unclog](https://github.com/informalsystems/unclog) to manage our
changelog)
- [x] Updated relevant documentation (`docs/` or `spec/`) and code
comments
- [x] Title follows the [Conventional
Commits](https://www.conventionalcommits.org/en/v1.0.0/) spec

---------

Co-authored-by: Anton Kaliaev <anton.kalyaev@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants