Dont exit on backend misconfiguration

This commit is contained in:
RickiNano 2025-01-21 21:18:59 +01:00
commit f1dd4f7080
2 changed files with 5 additions and 5 deletions

View file

@ -4,7 +4,7 @@
#include <nano/store/lmdb/lmdb.hpp> #include <nano/store/lmdb/lmdb.hpp>
#include <nano/store/rocksdb/rocksdb.hpp> #include <nano/store/rocksdb/rocksdb.hpp>
std::unique_ptr<nano::store::component> nano::make_store (nano::logger & logger, std::filesystem::path const & path, nano::ledger_constants & constants, bool read_only, bool add_db_postfix, nano::node_config const & node_config) std::unique_ptr<nano::store::component> nano::make_store (nano::logger & logger, std::filesystem::path const & path, nano::ledger_constants & constants, bool read_only, bool add_db_postfix, nano::node_config node_config)
{ {
if (node_config.database_backend == nano::database_backend::rocksdb) if (node_config.database_backend == nano::database_backend::rocksdb)
{ {
@ -13,9 +13,9 @@ std::unique_ptr<nano::store::component> nano::make_store (nano::logger & logger,
if (node_config.rocksdb_config.enable && node_config.database_backend == nano::database_backend::lmdb) if (node_config.rocksdb_config.enable && node_config.database_backend == nano::database_backend::lmdb)
{ {
// rocksdb.enable is true in config, but database_backend is set to LMDB in config // rocksdb.enable is true in config, but database_backend is set to LMDB in config
logger.critical (nano::log::type::config, "Legacy RocksDb setting detected in config file."); logger.warn (nano::log::type::config, "Use of deprecated RocksDb setting detected in config file.\nPlease edit node_config.toml and use the new 'database_backend' to enable RocksDb");
logger.info (nano::log::type::config, "Edit node_config.toml and use 'database_backend' in the node section to re-enable RocksDb"); node_config.database_backend = nano::database_backend::rocksdb;
std::exit (EXIT_FAILURE); return std::make_unique<nano::store::rocksdb::component> (logger, add_db_postfix ? path / "rocksdb" : path, constants, node_config.rocksdb_config, read_only);
} }
return std::make_unique<nano::store::lmdb::component> (logger, add_db_postfix ? path / "data.ldb" : path, constants, node_config.diagnostics_config.txn_tracking, node_config.block_processor_batch_max_time, node_config.lmdb_config, node_config.backup_before_upgrade); return std::make_unique<nano::store::lmdb::component> (logger, add_db_postfix ? path / "data.ldb" : path, constants, node_config.diagnostics_config.txn_tracking, node_config.block_processor_batch_max_time, node_config.lmdb_config, node_config.backup_before_upgrade);

View file

@ -23,5 +23,5 @@ class component;
namespace nano namespace nano
{ {
std::unique_ptr<nano::store::component> make_store (nano::logger &, std::filesystem::path const & path, nano::ledger_constants & constants, bool read_only = false, bool add_db_postfix = true, nano::node_config const & node_config = nano::node_config{}); std::unique_ptr<nano::store::component> make_store (nano::logger &, std::filesystem::path const & path, nano::ledger_constants & constants, bool read_only = false, bool add_db_postfix = true, nano::node_config node_config = nano::node_config{});
} }