Replies: 2 comments 2 replies
-
|
Critical issue, but the team seems to focus on raising a new round of VC right now - Hope all the best, and can comeback to this one |
Beta Was this translation helpful? Give feedback.
1 reply
-
|
In-depth article about this here: https://blog.cf8.gg/surrealdbs-ch/ It also talks about how the benchmarks turns on the equivalent setting for some competing DBs, skewing the results/conclusions |
Beta Was this translation helpful? Give feedback.
1 reply
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Recently, due to a power outage, we noticed that our RocksDB database became corrupted.
While investigating a possible solution, we came across the following:
surrealdb/crates/core/src/kvs/rocksdb/mod.rs
Line 65 in d5134c7
This code sets a number of parameters, including SYNC_DATA, which is configured here:
surrealdb/crates/core/src/kvs/rocksdb/cnf.rs
Line 6 in d5134c7
via the environment variable SURREAL_SYNC_DATA.
However, configuring this setting via an environment variable feels somewhat awkward and potentially unsafe in a multithreaded context.
Is there a way to set this parameter directly from Rust code instead?
Alternatively, is there another recommended option or setting that helps protect against data loss in the event of a sudden power failure?
EDIT: 2025-08
The corrupted database issue occurred in an application running on Windows Server, and we were unable to reproduce it on Linux.
Unfortunately, setting this flag had no effect, and on Windows Server, database corruption persisted during power outages. Because of this (and a few other issues), we ultimately migrated to PostgreSQL (embedded version).
Beta Was this translation helpful? Give feedback.
All reactions