Errors when opening additional indexes for a query are now fatal. They could easily go unnoticed before
This commit is contained in:
parent
eed70e7003
commit
387b66e165
@ -582,19 +582,13 @@ bool Db::open(OpenMode mode)
|
|||||||
m_ndb->xrdb = Xapian::Database(dir);
|
m_ndb->xrdb = Xapian::Database(dir);
|
||||||
for (list<string>::iterator it = m_extraDbs.begin();
|
for (list<string>::iterator it = m_extraDbs.begin();
|
||||||
it != m_extraDbs.end(); it++) {
|
it != m_extraDbs.end(); it++) {
|
||||||
string aerr;
|
|
||||||
LOGDEB(("Db::Open: adding query db [%s]\n", it->c_str()));
|
LOGDEB(("Db::Open: adding query db [%s]\n", it->c_str()));
|
||||||
aerr.erase();
|
// Used to be non-fatal (1.13 and older) but I can't see why
|
||||||
try {
|
m_ndb->xrdb.add_database(Xapian::Database(*it));
|
||||||
// Make this non-fatal
|
|
||||||
m_ndb->xrdb.add_database(Xapian::Database(*it));
|
|
||||||
} XCATCHERROR(aerr);
|
|
||||||
if (!aerr.empty())
|
|
||||||
LOGERR(("Db::Open: error while trying to add database "
|
|
||||||
"from [%s]: %s\n", it->c_str(), aerr.c_str()));
|
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Check index format version. Must not try to check a just created or
|
// Check index format version. Must not try to check a just created or
|
||||||
// truncated db
|
// truncated db
|
||||||
if (mode != DbTrunc && m_ndb->xdb().get_doccount() > 0) {
|
if (mode != DbTrunc && m_ndb->xdb().get_doccount() > 0) {
|
||||||
@ -612,6 +606,8 @@ bool Db::open(OpenMode mode)
|
|||||||
m_basedir = dir;
|
m_basedir = dir;
|
||||||
return true;
|
return true;
|
||||||
} XCATCHERROR(ermsg);
|
} XCATCHERROR(ermsg);
|
||||||
|
|
||||||
|
m_reason = ermsg;
|
||||||
LOGERR(("Db::open: exception while opening [%s]: %s\n",
|
LOGERR(("Db::open: exception while opening [%s]: %s\n",
|
||||||
dir.c_str(), ermsg.c_str()));
|
dir.c_str(), ermsg.c_str()));
|
||||||
return false;
|
return false;
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user