Commit 1450e45d authored by Max Kellermann's avatar Max Kellermann

Main, db/Glue: improve error messages

parent ec8cba36
...@@ -203,7 +203,11 @@ glue_db_init_and_load(void) ...@@ -203,7 +203,11 @@ glue_db_init_and_load(void)
"because the database does not need it"); "because the database does not need it");
} }
instance->database->Open(); try {
instance->database->Open();
} catch (...) {
std::throw_with_nested(std::runtime_error("Failed to open database plugin"));
}
if (!instance->database->IsPlugin(simple_db_plugin)) if (!instance->database->IsPlugin(simple_db_plugin))
return true; return true;
......
...@@ -37,5 +37,10 @@ DatabaseGlobalInit(EventLoop &loop, DatabaseListener &listener, ...@@ -37,5 +37,10 @@ DatabaseGlobalInit(EventLoop &loop, DatabaseListener &listener,
throw FormatRuntimeError("No such database plugin: %s", throw FormatRuntimeError("No such database plugin: %s",
plugin_name); plugin_name);
return plugin->create(loop, listener, block); try {
return plugin->create(loop, listener, block);
} catch (...) {
std::throw_with_nested(FormatRuntimeError("Failed to initialize database plugin '%s'",
plugin_name));
}
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment