Skip to content

add cj-btc-rocksdb: RocksDB module for blockchain database#381

Draft
yuvicc wants to merge 1 commit into
ConsensusJ:masterfrom
yuvicc:2025-12-add_rocksdb_module
Draft

add cj-btc-rocksdb: RocksDB module for blockchain database#381
yuvicc wants to merge 1 commit into
ConsensusJ:masterfrom
yuvicc:2025-12-add_rocksdb_module

Conversation

@yuvicc

@yuvicc yuvicc commented Jun 29, 2026

Copy link
Copy Markdown

New module providing a reader and writer over a RocksDB store of Bitcoin blockchain index data.

  • BlockchainDatabase / WritableBlockchainDatabase interfaces and a shared AbstractRocksDbBlockchainDatabase base holding the read implementation
  • BlockchainSchema for the key encodings and column family layout
  • Integration and schema unit tests

New module providing a reader and writer over a RocksDB store of Bitcoin
blockchain index data.
- `BlockchainDatabase` / `WritableBlockchainDatabase` interfaces and a shared
  AbstractRocksDbBlockchainDatabase base holding the read implementation
- BlockchainSchema for the key encodings and column family layout
- Integration and schema unit tests
@yuvicc yuvicc changed the title add: module cj-btc-rocksdb, RocksDB module for blockchain database add cj-btc-rocksdb: RocksDB module for blockchain database Jun 29, 2026
@msgilligan

Copy link
Copy Markdown
Member

I took a quick look -- and it looks like a great start!

@msgilligan msgilligan added this to the v0.8.0 milestone Jun 29, 2026
@msgilligan
msgilligan self-requested a review June 29, 2026 17:31
@yuvicc

yuvicc commented Jul 14, 2026

Copy link
Copy Markdown
Author

Hmm, looks like a pending state would lose the data permanently, need to fix that before marking it for review.

@yuvicc

yuvicc commented Jul 14, 2026

Copy link
Copy Markdown
Author

I saw there's an integration testing script(test-run-regtest.sh) which runs bitcoind in regtest mode and tests the json-rpc, I have also added some integration tests here but adding this module to that script would be better?

@msgilligan

Copy link
Copy Markdown
Member

I have also added some integration tests here

Do they use regTest?

but adding this module to that script would be better?

All you have to do is add a regTest target in your module and put tests in it and they will be run by that script.

@yuvicc

yuvicc commented Jul 14, 2026

Copy link
Copy Markdown
Author

All you have to do is add a regTest target in your module and put tests in it and they will be run by that script.

Alright!

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