8000 Implemented RocksDB by jeongkyun-oh · Pull Request #1855 · klaytn/klaytn · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content
This repository was archived by the owner on Aug 19, 2024. It is now read-only.

Implemented RocksDB #1855

Merged
merged 22 commits into from
Jul 26, 2023
Merged

Implemented RocksDB #1855

merged 22 commits into from
Jul 26, 2023

Conversation

jeongkyun-oh
Copy link
Contributor
@jeongkyun-oh jeongkyun-oh commented May 31, 2023

Proposed changes

  • implemented RocksDB in order to support concurrent reads from multiple process
  • RocksDB supports read-only instance with extra ability to catch-up with primary instance. This is done by TryCatchup method.
  • The chaindata directory is separated to share the chaindata only, not the other unnecessary data such as klay.ipc, kend.pid.
  • GetDBProperty API is added
  • The RocksDB options, metrics and testcases are added.
  • In order to build with rocksdb, USE_ROCKSDB environment variable should be set in addition to rocksdb installation properly.

Types of changes

Please put an x in the boxes related to your change.

  • Bugfix
  • New feature or enhancement
  • Others

Checklist

Put an x in the boxes that apply. You can also fill these out after creating the PR. If you're unsure about any of them, don't hesitate to ask. We're here to help! This is simply a reminder of what we are going to look for before merging your code.

  • I have read the CONTRIBUTING GUIDELINES doc
  • I have signed the CLA
  • Lint and unit tests pass locally with my changes ($ make test)
  • I have added tests that prove my fix is effective or that my feature works
  • I have added necessary documentation (if appropriate)
  • Any dependent changes have been merged and published in downstream modules

Related issues

  • Please leave the issue numbers or links related to this PR here.

Further comments

If this is a relatively large or complex change, kick off the discussion by explaining why you chose the solution you did and what alternatives you considered, etc...

@jeongkyun-oh jeongkyun-oh force-pushed the 230504-impl-rocksdb branch 2 times, most recently from 4bbdc9d to 373396e Compare June 1, 2023 01:03
@jeongkyun-oh jeongkyun-oh force-pushed the 230504-impl-rocksdb branch 4 times, most recently from 0321b19 to 4a187f4 Compare June 15, 2023 01:38
@jeongkyun-oh jeongkyun-oh force-pushed the 230504-impl-rocksdb branch 3 times, most recently from 3c37298 to 1e2dce4 Compare June 20, 2023 00:07
@jeongkyun-oh jeongkyun-oh force-pushed the 230504-impl-rocksdb branch 18 times, most recently from a87e8d6 to e7a211a Compare July 17, 2023 05:59
@jeongkyun-oh jeongkyun-oh force-pushed the 230504-impl-rocksdb branch from d304878 to a79de1f Compare July 18, 2023 18:33
aidan-kwon
aidan-kwon previously approved these changes Jul 25, 2023
@aidan-kwon
Copy link
Member

Reviewers, PTAL

blukat29
blukat29 previously approved these changes Jul 25, 2023
kjeom
kjeom previously approved these changes Jul 25, 2023
@kjeom
Copy link
kjeom commented Jul 25, 2023

@ethan-kr Please take a look

@JayChoi1736
Copy link
Contributor
JayChoi1736 commented Jul 25, 2023

because in service chain or other private chain , "ken init" will automatically generate chaindata with given genesis.json in datadir.
Therefore, i think we need to put ChainDataDirFlag in InitCommand in cmd/utils/nodecmd/chaincmd.go

@jeongkyun-oh
Copy link
Contributor Author

@JayChoi1736 Good point!! Thanks for reviewing. Apart from init command, I think we need to add this flags to several places regarding to DataDir flag. I will add this in another PR.

@aidan-kwon
Copy link
Member

@ethan-kr Pleas take a look

JayChoi1736
JayChoi1736 previously approved these changes Jul 26, 2023
@aidan-kwon aidan-kwon dismissed stale reviews from JayChoi1736, kjeom, blukat29, and themself via 351f047 July 26, 2023 05:07
@jeongkyun-oh jeongkyun-oh merged commit 1325be9 into klaytn:dev Jul 26, 2023
@jeongkyun-oh jeongkyun-oh deleted the 230504-impl-rocksdb branch July 26, 2023 05:24
@junha-ahn junha-ahn mentioned this pull request May 10, 2024
9 tasks
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
need to merge Need to merge for the next time
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants
0