-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Nodedb followup: SafeNoSync
#13550
Milestone
Comments
AskAlexSharov
pushed a commit
that referenced
this issue
Feb 19, 2025
Currently the MDBX metrics recorded by `CollectMetrics()` are hardcoded , and work only for the main `chaindata` MDBX instance. In this PR I add a label to the MDBX metrics to denote the DB instance for which the metrics are collected. This will enable me to tune the performance of node DB : #13550 --------- Co-authored-by: antonis19 <[email protected]>
SaveNoSyn
set 2 limits.SaveNoSyn
Open
AskAlexSharov
pushed a commit
that referenced
this issue
Feb 26, 2025
Release v0.38.6 of mdbx-go : https://github.com/erigontech/mdbx-go/releases/tag/v0.38.6 includes bindings for `mdbx_env_set_syncbytes` and `mdbx_env_get_syncbytes` , which will allow a more comprehensive assessment of MDBX using `SafeNoSync` . Related task: #13550 --------- Co-authored-by: antonis19 <[email protected]>
Closing with: #13980 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Follow-up after: #13457 (comment)
Set
mdbx_env_set_syncperiod
andmdbx_env_set_syncbytes
and call in goroutinemdbx_env_sync_ex
.mdbx doesn't have own thread: at all.
In
SafeNoSync
- it can callfsync
in 2 cases:mdbx_env_sync_ex
So,
SafeNoSync
- increase latency of "unlucky" rwtx which reached limits. But we can reduce this probability by manually creating goroutine with periodical call ofmdbx_env_sync_ex
(then this goroutine will be blocked instead of "unlucky Commit")I prefer
SafeNoSync
over.Batch
because:with
SafeNoSync
- if kill -9 came in wrong time - it may leave DB in "bad" state:Let's remove
ReadOnly
mode of DB. RPCDaemon and integration tools - nothing will change if open inRW
mode.The text was updated successfully, but these errors were encountered: