回复:RFC:随发布压缩包附带区块链 1-74000?
原始发布页
打开来源页面查看 1 个交叉存档
这是个不错的优化。下次更新 SVN 时我会加上。
更一般地说,我们也可以考虑这样做:
dbenv.set\_lk\_max\_objects(10000);
dbenv.set\_errfile(fopen(strErrorFile.c\_str(), "a")); /// debug
dbenv.set\_flags(DB\_AUTO\_COMMIT, 1);
\+ dbenv.set\_flags(DB\_TXN\_NOSYNC, 1);
ret = dbenv.open(strDataDir.c\_str(),
DB\_CREATE |
DB\_INIT\_LOCK |
DB\_INIT\_LOG |然后,我们会依靠 CDB::Close() 中的 dbenv.txn_checkpoint(0, 0, 0) 在钱包写入后刷新数据。
英文原文
展开英文原文
That's a good optimisation. I'll add that next time I update SVN.
More generally, we could also consider this:
dbenv.set_lk_max_objects(10000); dbenv.set_errfile(fopen(strErrorFile.c_str(), "a")); /// debug dbenv.set_flags(DB_AUTO_COMMIT, 1); + dbenv.set_flags(DB_TXN_NOSYNC, 1); ret = dbenv.open(strDataDir.c_str(), DB_CREATE | DB_INIT_LOCK | DB_INIT_LOG |
We would then rely on dbenv.txn_checkpoint(0, 0, 0) in CDB::Close() to flush after wallet writes.