doc(server): sync backend-rocksdb with master - #487
Open
bitflicker64 wants to merge 1 commit into
Open
Conversation
Add the missing RocksDB backend configuration page in English and Chinese. It documents how to select the backend, the data and WAL directory layout for the m/g/s stores, all 70 rocksdb.* options with the defaults and ranges from RocksDBOptions, how optimize_mode, bulkload_mode and the bloom filter group are applied, the per column family memory accounting, SST ingestion, the current state of raft mode for this backend, the backend feature flags, the pinned rocksdbjni 8.10.2 version, and the riscv64 libatomic requirement in the start scripts.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The RocksDB backend had no page of its own:
config-option.mdlists a subset of therocksdb.*keys andconfig-guide.mdmentions two of them, so nothing documented the data directory layout, the optiongroups, how
optimize_modeandbulkload_modebehave, the memory accounting, SST ingestion, the stateof raft mode for this backend or the pinned RocksDB version. This adds the page in English and Chinese,
built from the sources on hugegraph master (commit 36811483a).
config-https.md, weight 5 places it afterconfig-optionbackend=rocksdb,serializer=binary,store, plusinit-store.shbefore the first startrocksdbsstname were undocumentedbackend.properties(hugegraph.backends, default rocksdb/hbase/hstore,-Drocksdb-onlyfor a rocksdb-only build);rocksdbsstis registered but rejected by the allowed backend listm/g/sstore subdirectories, one column family per table named<database>+<table>, old column families always reopened_<newGraph>suffix, deleting a graph deletes both dirs, snapshot path shape and resume behavior, parallel open of up to 8 instances with 600s/30s timeoutsrocksdb.*keys were documented anywhere, and three defaults were wronguint64addmerge operator, create-if-missing and the two always-on flagsbloom_filter_bits_per_key >= 0, and thatoptimize_filters_for_hitsapplies regardlessGET /metrics/backendcounts as memory, block cache is per column family, write buffers are per column family withdb_write_buffer_sizeas the per store cap, row cache is per storerocksdb.sst_pathhad a one line description and no behavior<sst_path>/<column family>/, takes non-empty*.sstfiles and moves them into the column familyraft.mode=false, the shipped template marks the raft options deprecated, and the peer endpoints now live undergraphspaces/{graphspace}/graphs/{graph}/raft/libatomic.so.1is preloaded bybin/util.shfor the server, init-store and dump-store scripts, with the exact error messageFollow-up outside this PR: the page is not yet listed in
data/docs_nav.jsonor in the section index ofconfig/_index.md, both of which are shared files that several backend pages need to touch at once.