diff --git a/src/engine/CMakeLists.txt b/src/engine/CMakeLists.txt --- a/src/engine/CMakeLists.txt +++ b/src/engine/CMakeLists.txt @@ -26,6 +26,12 @@ fsutils.cpp ) +ecm_qt_declare_logging_category( + BALOO_ENGINE_SRCS + HEADER "enginedebug.h" + IDENTIFIER "ENGINE" + CATEGORY_NAME "org.kde.baloo.engine") + if(${BUILD_EXPERIMENTAL}) set(BALOO_ENGINE_SRCS ${BALOO_ENGINE_SRCS} experimental/databasesanitizer.cpp) endif() @@ -48,6 +54,7 @@ SOVERSION ${BALOO_SOVERSION} EXPORT_NAME BalooEngine ) + ##target_include_directories(KF5BalooEngine INTERFACE "$") generate_export_header(KF5BalooEngine BASE_NAME BALOO_ENGINE EXPORT_FILE_NAME engine_export.h) diff --git a/src/engine/documentdatadb.cpp b/src/engine/documentdatadb.cpp --- a/src/engine/documentdatadb.cpp +++ b/src/engine/documentdatadb.cpp @@ -18,6 +18,7 @@ */ #include "documentdatadb.h" +#include "enginedebug.h" using namespace Baloo; @@ -35,21 +36,24 @@ MDB_dbi DocumentDataDB::create(MDB_txn* txn) { - MDB_dbi dbi; + MDB_dbi dbi = 0; int rc = mdb_dbi_open(txn, "documentdatadb", MDB_CREATE | MDB_INTEGERKEY, &dbi); - Q_ASSERT_X(rc == 0, "DocumentUrlDB::create", mdb_strerror(rc)); + if (rc) { + qCDebug(ENGINE) << "DocumentDataDB::create" << mdb_strerror(rc); + return 0; + } return dbi; } MDB_dbi DocumentDataDB::open(MDB_txn* txn) { - MDB_dbi dbi; + MDB_dbi dbi = 0; int rc = mdb_dbi_open(txn, "documentdatadb", MDB_INTEGERKEY, &dbi); - if (rc == MDB_NOTFOUND) { + if (rc) { + qCDebug(ENGINE) << "DocumentDataDB::open" << mdb_strerror(rc); return 0; } - Q_ASSERT_X(rc == 0, "DocumentUrlDB::create", mdb_strerror(rc)); return dbi; } @@ -79,12 +83,12 @@ key.mv_size = sizeof(quint64); key.mv_data = static_cast(&docId); - MDB_val val; + MDB_val val{0, nullptr}; int rc = mdb_get(m_txn, m_dbi, &key, &val); - if (rc == MDB_NOTFOUND) { + if (rc) { + qCDebug(ENGINE) << "DocumentDataDB::get" << docId << mdb_strerror(rc); return QByteArray(); } - Q_ASSERT_X(rc == 0, "DocumentDataDB::get", mdb_strerror(rc)); return QByteArray(static_cast(val.mv_data), val.mv_size); } @@ -98,10 +102,9 @@ key.mv_data = static_cast(&docId); int rc = mdb_del(m_txn, m_dbi, &key, nullptr); - if (rc == MDB_NOTFOUND) { - return; + if (rc) { + qCDebug(ENGINE) << "DocumentDataDB::del" << docId << mdb_strerror(rc); } - Q_ASSERT_X(rc == 0, "DocumentUrlDB::del", mdb_strerror(rc)); } bool DocumentDataDB::contains(quint64 docId) @@ -112,12 +115,12 @@ key.mv_size = sizeof(quint64); key.mv_data = static_cast(&docId); - MDB_val val; + MDB_val val{0, nullptr}; int rc = mdb_get(m_txn, m_dbi, &key, &val); - if (rc == MDB_NOTFOUND) { + if (rc) { + qCDebug(ENGINE) << "DocumentDataDB::contains" << docId << mdb_strerror(rc); return false; } - Q_ASSERT_X(rc == 0, "DocumentDataDB::contains", mdb_strerror(rc)); return true; } @@ -133,7 +136,7 @@ QMap map; while (1) { int rc = mdb_cursor_get(cursor, &key, &val, MDB_NEXT); - if (rc == MDB_NOTFOUND) { + if (rc) { break; } Q_ASSERT_X(rc == 0, "DocumentDataDB::toTestMap", mdb_strerror(rc)); diff --git a/src/engine/documentdb.cpp b/src/engine/documentdb.cpp --- a/src/engine/documentdb.cpp +++ b/src/engine/documentdb.cpp @@ -20,8 +20,7 @@ #include "documentdb.h" #include "doctermscodec.h" - -#include +#include "enginedebug.h" using namespace Baloo; @@ -39,21 +38,24 @@ MDB_dbi DocumentDB::create(const char* name, MDB_txn* txn) { - MDB_dbi dbi; - int rc = mdb_dbi_open(txn, name, MDB_CREATE | MDB_INTEGERKEY, &dbi); - Q_ASSERT_X(rc == 0, "DocumentDB::create", mdb_strerror(rc)); + MDB_dbi dbi = 0; + const int rc = mdb_dbi_open(txn, name, MDB_CREATE | MDB_INTEGERKEY, &dbi); + if (rc) { + qCDebug(ENGINE) << "DocumentDB::create" << name << mdb_strerror(rc); + return 0; + } return dbi; } MDB_dbi DocumentDB::open(const char* name, MDB_txn* txn) { - MDB_dbi dbi; - int rc = mdb_dbi_open(txn, name, MDB_INTEGERKEY, &dbi); - if (rc == MDB_NOTFOUND) { + MDB_dbi dbi = 0; + const int rc = mdb_dbi_open(txn, name, MDB_INTEGERKEY, &dbi); + if (rc) { + qCDebug(ENGINE) << "DocumentDB::open" << name << mdb_strerror(rc); return 0; } - Q_ASSERT_X(rc == 0, "DocumentDB::open", mdb_strerror(rc)); return dbi; } @@ -86,19 +88,19 @@ key.mv_size = sizeof(quint64); key.mv_data = static_cast(&docId); - MDB_val val; + MDB_val val{0, nullptr}; int rc = mdb_get(m_txn, m_dbi, &key, &val); - if (rc == MDB_NOTFOUND) { + if (rc) { + qCDebug(ENGINE) << "DocumentDB::get" << docId << mdb_strerror(rc); return QVector(); } - Q_ASSERT_X(rc == 0, "DocumentDB::get", mdb_strerror(rc)); QByteArray arr = QByteArray::fromRawData(static_cast(val.mv_data), val.mv_size); DocTermsCodec codec; auto result = codec.decode(arr); if (result.isEmpty()) { - qDebug() << "Document Terms DB contains corrupt data for " << docId; + qCDebug(ENGINE) << "Document Terms DB contains corrupt data for " << docId; } return result; } @@ -112,10 +114,10 @@ key.mv_data = static_cast(&docId); int rc = mdb_del(m_txn, m_dbi, &key, nullptr); - if (rc == MDB_NOTFOUND) { + if (rc) { + qCDebug(ENGINE) << "DocumentDB::del" << docId << mdb_strerror(rc); return; } - Q_ASSERT_X(rc == 0, "DocumentDB::del", mdb_strerror(rc)); } bool DocumentDB::contains(quint64 docId) @@ -128,10 +130,10 @@ MDB_val val; int rc = mdb_get(m_txn, m_dbi, &key, &val); - if (rc == MDB_NOTFOUND) { + if (rc) { + qCDebug(ENGINE) << "DocumentDB::contains" << docId << mdb_strerror(rc); return false; } - Q_ASSERT_X(rc == 0, "DocumentDB::contains", mdb_strerror(rc)); return true; } @@ -156,7 +158,7 @@ QMap> map; while (1) { int rc = mdb_cursor_get(cursor, &key, &val, MDB_NEXT); - if (rc == MDB_NOTFOUND) { + if (rc) { break; } Q_ASSERT_X(rc == 0, "PostingDB::toTestMap", mdb_strerror(rc)); diff --git a/src/engine/documentiddb.cpp b/src/engine/documentiddb.cpp --- a/src/engine/documentiddb.cpp +++ b/src/engine/documentiddb.cpp @@ -19,8 +19,7 @@ */ #include "documentiddb.h" - -#include +#include "enginedebug.h" using namespace Baloo; @@ -38,21 +37,24 @@ MDB_dbi DocumentIdDB::create(const char* name, MDB_txn* txn) { - MDB_dbi dbi; + MDB_dbi dbi = 0; int rc = mdb_dbi_open(txn, name, MDB_CREATE | MDB_INTEGERKEY, &dbi); - Q_ASSERT_X(rc == 0, "DocumentIdDB::create", mdb_strerror(rc)); + if (rc) { + qCDebug(ENGINE) << "DocumentIdDB::create" << name << mdb_strerror(rc); + return 0; + } return dbi; } MDB_dbi DocumentIdDB::open(const char* name, MDB_txn* txn) { - MDB_dbi dbi; + MDB_dbi dbi = 0; int rc = mdb_dbi_open(txn, name, MDB_INTEGERKEY, &dbi); - if (rc == MDB_NOTFOUND) { + if (rc) { + qCDebug(ENGINE) << "DocumentIdDB::open" << name << mdb_strerror(rc); return 0; } - Q_ASSERT_X(rc == 0, "DocumentIdDB::create", mdb_strerror(rc)); return dbi; } @@ -81,12 +83,12 @@ key.mv_size = sizeof(quint64); key.mv_data = static_cast(&docId); - MDB_val val; + MDB_val val{0, nullptr}; int rc = mdb_get(m_txn, m_dbi, &key, &val); - if (rc == MDB_NOTFOUND) { + if (rc) { + qCDebug(ENGINE) << "DocumentIdDB::contains" << docId << mdb_strerror(rc); return false; } - Q_ASSERT_X(rc == 0, "DocumentIdDB::contains", mdb_strerror(rc)); return true; } @@ -100,10 +102,9 @@ key.mv_data = static_cast(&docId); int rc = mdb_del(m_txn, m_dbi, &key, nullptr); - if (rc == MDB_NOTFOUND) { - return; + if (rc) { + qCDebug(ENGINE) << "DocumentIdDB::del" << docId << mdb_strerror(rc); } - Q_ASSERT_X(rc == 0, "DocumentIdDB::del", mdb_strerror(rc)); } QVector DocumentIdDB::fetchItems(int size) @@ -116,12 +117,12 @@ QVector vec; for (int i = 0; i < size; i++) { - MDB_val key; + MDB_val key{0, nullptr}; int rc = mdb_cursor_get(cursor, &key, nullptr, MDB_NEXT); - if (rc == MDB_NOTFOUND) { + if (rc) { + qCDebug(ENGINE) << "DocumentIdDB::fetchItems" << size << mdb_strerror(rc); break; } - Q_ASSERT_X(rc == 0, "DocumentIdDB::fetchItems", mdb_strerror(rc)); quint64 id = *(static_cast(key.mv_data)); vec << id; @@ -145,13 +146,13 @@ MDB_cursor* cursor; mdb_cursor_open(m_txn, m_dbi, &cursor); - MDB_val key = {0, nullptr}; - MDB_val val; + MDB_val key{0, nullptr}; + MDB_val val{0, nullptr}; QVector vec; while (1) { int rc = mdb_cursor_get(cursor, &key, &val, MDB_NEXT); - if (rc == MDB_NOTFOUND) { + if (rc) { break; } Q_ASSERT_X(rc == 0, "DocumentTimeDB::toTestMap", mdb_strerror(rc)); diff --git a/src/engine/documenttimedb.cpp b/src/engine/documenttimedb.cpp --- a/src/engine/documenttimedb.cpp +++ b/src/engine/documenttimedb.cpp @@ -19,6 +19,7 @@ */ #include "documenttimedb.h" +#include "enginedebug.h" using namespace Baloo; @@ -36,21 +37,24 @@ MDB_dbi DocumentTimeDB::create(MDB_txn* txn) { - MDB_dbi dbi; + MDB_dbi dbi = 0; int rc = mdb_dbi_open(txn, "documenttimedb", MDB_CREATE | MDB_INTEGERKEY, &dbi); - Q_ASSERT_X(rc == 0, "DocumentTimeDB::create", mdb_strerror(rc)); + if (rc) { + qCDebug(ENGINE) << "DocumentTimeDB::create" << mdb_strerror(rc); + return 0; + } return dbi; } MDB_dbi DocumentTimeDB::open(MDB_txn* txn) { - MDB_dbi dbi; + MDB_dbi dbi = 0; int rc = mdb_dbi_open(txn, "documenttimedb", MDB_INTEGERKEY, &dbi); - if (rc == MDB_NOTFOUND) { + if (rc) { + qCDebug(ENGINE) << "DocumentTimeDB::open" << mdb_strerror(rc); return 0; } - Q_ASSERT_X(rc == 0, "DocumentTimeDB::create", mdb_strerror(rc)); return dbi; } @@ -79,12 +83,12 @@ key.mv_size = sizeof(quint64); key.mv_data = &docId; - MDB_val val; + MDB_val val{0, nullptr}; int rc = mdb_get(m_txn, m_dbi, &key, &val); - if (rc == MDB_NOTFOUND) { + if (rc) { + qCDebug(ENGINE) << "DocumentTimeDB::get" << docId << mdb_strerror(rc); return TimeInfo(); } - Q_ASSERT_X(rc == 0, "DocumentTimeDB::get", mdb_strerror(rc)); return *(static_cast(val.mv_data)); } @@ -98,10 +102,9 @@ key.mv_data = static_cast(&docId); int rc = mdb_del(m_txn, m_dbi, &key, nullptr); - if (rc == MDB_NOTFOUND) { - return; + if (rc) { + qCDebug(ENGINE) << "DocumentTimeDB::del" << docId << mdb_strerror(rc); } - Q_ASSERT_X(rc == 0, "DocumentTimeDB::del", mdb_strerror(rc)); } bool DocumentTimeDB::contains(quint64 docId) @@ -114,10 +117,10 @@ MDB_val val; int rc = mdb_get(m_txn, m_dbi, &key, &val); - if (rc == MDB_NOTFOUND) { + if (rc) { + qCDebug(ENGINE) << "DocumentTimeDB::contains" << docId << mdb_strerror(rc); return false; } - Q_ASSERT_X(rc == 0, "DocumentTimeDB::contains", mdb_strerror(rc)); return true; } @@ -133,7 +136,7 @@ QMap map; while (1) { int rc = mdb_cursor_get(cursor, &key, &val, MDB_NEXT); - if (rc == MDB_NOTFOUND) { + if (rc) { break; } Q_ASSERT_X(rc == 0, "DocumentTimeDB::toTestMap", mdb_strerror(rc)); diff --git a/src/engine/documenturldb.cpp b/src/engine/documenturldb.cpp --- a/src/engine/documenturldb.cpp +++ b/src/engine/documenturldb.cpp @@ -24,7 +24,6 @@ #include #include -#include using namespace Baloo; diff --git a/src/engine/fsutils.cpp b/src/engine/fsutils.cpp --- a/src/engine/fsutils.cpp +++ b/src/engine/fsutils.cpp @@ -21,8 +21,7 @@ */ #include "fsutils.h" - -#include +#include "enginedebug.h" #ifdef Q_OS_LINUX #include @@ -54,15 +53,15 @@ ulong flags = 0; const int fd = open(qPrintable(path), O_RDONLY); if (fd == -1) { - qWarning() << "Failed to open" << path << "to modify flags (" << errno << ")"; + qCWarning(ENGINE) << "Failed to open" << path << "to modify flags (" << errno << ")"; return; } if (ioctl(fd, FS_IOC_GETFLAGS, &flags) == -1) { const int errno_ioctl = errno; // ignore ENOTTY, filesystem does not support attrs (and likely neither supports COW) if (errno_ioctl != ENOTTY) { - qWarning() << "ioctl error: failed to get file flags (" << errno_ioctl << ")"; + qCWarning(ENGINE) << "ioctl error: failed to get file flags (" << errno_ioctl << ")"; } close(fd); return; @@ -73,7 +72,7 @@ const int errno_ioctl = errno; // ignore EOPNOTSUPP, returned on filesystems not supporting COW if (errno_ioctl != EOPNOTSUPP) { - qWarning() << "ioctl error: failed to set file flags (" << errno_ioctl << ")"; + qCWarning(ENGINE) << "ioctl error: failed to set file flags (" << errno_ioctl << ")"; } close(fd); return; diff --git a/src/engine/idfilenamedb.cpp b/src/engine/idfilenamedb.cpp --- a/src/engine/idfilenamedb.cpp +++ b/src/engine/idfilenamedb.cpp @@ -19,6 +19,7 @@ */ #include "idfilenamedb.h" +#include "enginedebug.h" using namespace Baloo; @@ -36,21 +37,24 @@ MDB_dbi IdFilenameDB::create(MDB_txn* txn) { - MDB_dbi dbi; + MDB_dbi dbi = 0; int rc = mdb_dbi_open(txn, "idfilename", MDB_CREATE | MDB_INTEGERKEY, &dbi); - Q_ASSERT_X(rc == 0, "IdFilenameDB::create", mdb_strerror(rc)); + if (rc) { + qCDebug(ENGINE) << "IdFilenameDB::create" << mdb_strerror(rc); + return 0; + } return dbi; } MDB_dbi IdFilenameDB::open(MDB_txn* txn) { - MDB_dbi dbi; + MDB_dbi dbi = 0; int rc = mdb_dbi_open(txn, "idfilename", MDB_INTEGERKEY, &dbi); - if (rc == MDB_NOTFOUND) { + if (rc) { + qCDebug(ENGINE) << "IdFilenameDB::open" << mdb_strerror(rc); return 0; } - Q_ASSERT_X(rc == 0, "IdFilenameDB::open", mdb_strerror(rc)); return dbi; } @@ -86,12 +90,12 @@ FilePath path; - MDB_val val; + MDB_val val{0, nullptr}; int rc = mdb_get(m_txn, m_dbi, &key, &val); - if (rc == MDB_NOTFOUND) { + if (rc) { + qCDebug(ENGINE) << "IdfilenameDB::get" << docId << mdb_strerror(rc); return path; } - Q_ASSERT_X(rc == 0, "IdfilenameDB::get", mdb_strerror(rc)); path.parentId = static_cast(val.mv_data)[0]; path.name = QByteArray(static_cast(val.mv_data) + 8, val.mv_size - 8); @@ -107,12 +111,12 @@ key.mv_size = sizeof(quint64); key.mv_data = static_cast(&docId); - MDB_val val; + MDB_val val{0, nullptr}; int rc = mdb_get(m_txn, m_dbi, &key, &val); - if (rc == MDB_NOTFOUND) { + if (rc) { + qCDebug(ENGINE) << "IdfilenameDB::contains" << docId << mdb_strerror(rc); return false; } - Q_ASSERT_X(rc == 0, "IdfilenameDB::contains", mdb_strerror(rc)); return true; } @@ -139,7 +143,7 @@ QMap map; while (1) { int rc = mdb_cursor_get(cursor, &key, &val, MDB_NEXT); - if (rc == MDB_NOTFOUND) { + if (rc) { break; } Q_ASSERT_X(rc == 0, "IdFilenameDB::toTestMap", mdb_strerror(rc)); diff --git a/src/engine/idtreedb.cpp b/src/engine/idtreedb.cpp --- a/src/engine/idtreedb.cpp +++ b/src/engine/idtreedb.cpp @@ -19,9 +19,9 @@ */ #include "idtreedb.h" +#include "enginedebug.h" #include "postingiterator.h" -#include #include using namespace Baloo; @@ -36,21 +36,24 @@ MDB_dbi IdTreeDB::create(MDB_txn* txn) { - MDB_dbi dbi; + MDB_dbi dbi = 0; int rc = mdb_dbi_open(txn, "idtree", MDB_CREATE | MDB_INTEGERKEY, &dbi); - Q_ASSERT_X(rc == 0, "IdTreeDB::create", mdb_strerror(rc)); + if (rc) { + qCDebug(ENGINE) << "IdTreeDB::create" << mdb_strerror(rc); + return 0; + } return dbi; } MDB_dbi IdTreeDB::open(MDB_txn* txn) { - MDB_dbi dbi; + MDB_dbi dbi = 0; int rc = mdb_dbi_open(txn, "idtree", MDB_INTEGERKEY, &dbi); - if (rc == MDB_NOTFOUND) { + if (rc) { + qCDebug(ENGINE) << "IdTreeDB::open" << mdb_strerror(rc); return 0; } - Q_ASSERT_X(rc == 0, "IdTreeDB::open", mdb_strerror(rc)); return dbi; } @@ -78,12 +81,12 @@ key.mv_size = sizeof(quint64); key.mv_data = static_cast(&docId); - MDB_val val; + MDB_val val{0, nullptr}; int rc = mdb_get(m_txn, m_dbi, &key, &val); - if (rc == MDB_NOTFOUND) { + if (rc) { + qCDebug(ENGINE) << "IdTreeDB::get" << docId << mdb_strerror(rc); return QVector(); } - Q_ASSERT_X(rc == 0, "IdTreeeDB::get", mdb_strerror(rc)); // FIXME: This still makes a copy of the data. Perhaps we can avoid that? QVector list(val.mv_size / sizeof(quint64)); @@ -169,7 +172,7 @@ QMap> map; while (1) { int rc = mdb_cursor_get(cursor, &key, &val, MDB_NEXT); - if (rc == MDB_NOTFOUND) { + if (rc) { break; } Q_ASSERT_X(rc == 0, "PostingDB::toTestMap", mdb_strerror(rc)); diff --git a/src/engine/mtimedb.cpp b/src/engine/mtimedb.cpp --- a/src/engine/mtimedb.cpp +++ b/src/engine/mtimedb.cpp @@ -19,6 +19,7 @@ */ #include "mtimedb.h" +#include "enginedebug.h" #include "vectorpostingiterator.h" #include @@ -38,21 +39,24 @@ MDB_dbi MTimeDB::create(MDB_txn* txn) { - MDB_dbi dbi; + MDB_dbi dbi = 0; int rc = mdb_dbi_open(txn, "mtimedb", MDB_CREATE | MDB_INTEGERKEY | MDB_DUPSORT | MDB_DUPFIXED | MDB_INTEGERDUP, &dbi); - Q_ASSERT_X(rc == 0, "MTimeDB::create", mdb_strerror(rc)); + if (rc) { + qCDebug(ENGINE) << "MTimeDB::create" << mdb_strerror(rc); + return 0; + } return dbi; } MDB_dbi MTimeDB::open(MDB_txn* txn) { - MDB_dbi dbi; + MDB_dbi dbi = 0; int rc = mdb_dbi_open(txn, "mtimedb", MDB_INTEGERKEY | MDB_DUPSORT | MDB_DUPFIXED | MDB_INTEGERDUP, &dbi); - if (rc == MDB_NOTFOUND) { + if (rc) { + qCDebug(ENGINE) << "MTimeDB::open" << mdb_strerror(rc); return 0; } - Q_ASSERT_X(rc == 0, "MTimeDB::open", mdb_strerror(rc)); return dbi; } @@ -87,9 +91,10 @@ MDB_cursor* cursor; mdb_cursor_open(m_txn, m_dbi, &cursor); - MDB_val val; + MDB_val val{0, nullptr}; int rc = mdb_cursor_get(cursor, &key, &val, MDB_SET_RANGE); - if (rc == MDB_NOTFOUND) { + if (rc) { + qCDebug(ENGINE) << "MTimeDB::get" << mtime << mdb_strerror(rc); mdb_cursor_close(cursor); return values; } @@ -99,10 +104,10 @@ while (1) { rc = mdb_cursor_get(cursor, &key, &val, MDB_NEXT_DUP); - if (rc == MDB_NOTFOUND) { + if (rc) { + qCDebug(ENGINE) << "MTimeDB::get (loop)" << mtime << mdb_strerror(rc); break; } - Q_ASSERT_X(rc == 0, "MTimeDB::get while", mdb_strerror(rc)); values << *static_cast(val.mv_data); } @@ -127,10 +132,9 @@ val.mv_data = static_cast(&docId); int rc = mdb_del(m_txn, m_dbi, &key, &val); - if (rc == MDB_NOTFOUND) { - return; + if (rc) { + qCDebug(ENGINE) << "MTimeDB::del" << mtime << docId << mdb_strerror(rc); } - Q_ASSERT_X(rc == 0, "DocumentDB::del", mdb_strerror(rc)); } // @@ -150,21 +154,22 @@ MDB_cursor* cursor; mdb_cursor_open(m_txn, m_dbi, &cursor); - MDB_val val; + MDB_val val{0, nullptr}; int rc = mdb_cursor_get(cursor, &key, &val, MDB_SET_RANGE); - if (rc == MDB_NOTFOUND) { + if (rc) { + qCDebug(ENGINE) << "MTimeDB::iter" << mtime << mdb_strerror(rc); mdb_cursor_close(cursor); return nullptr; } - Q_ASSERT_X(rc == 0, "MTimeDB::iter", mdb_strerror(rc)); QVector results; results << *static_cast(val.mv_data); if (com == GreaterEqual) { while (1) { rc = mdb_cursor_get(cursor, &key, &val, MDB_NEXT); - if (rc == MDB_NOTFOUND) { + if (rc) { + qCDebug(ENGINE) << "MTimeDB::iter (loop)" << mtime << mdb_strerror(rc); break; } Q_ASSERT_X(rc == 0, "MTimeDB::iter >=", mdb_strerror(rc)); @@ -175,7 +180,8 @@ else { while (1) { rc = mdb_cursor_get(cursor, &key, &val, MDB_PREV); - if (rc == MDB_NOTFOUND) { + if (rc) { + qCDebug(ENGINE) << "MTimeDB::iter (loop)" << mtime << mdb_strerror(rc); break; } Q_ASSERT_X(rc == 0, "MTimeDB::iter >=", mdb_strerror(rc)); @@ -203,9 +209,10 @@ MDB_cursor* cursor; mdb_cursor_open(m_txn, m_dbi, &cursor); - MDB_val val; + MDB_val val{0, nullptr}; int rc = mdb_cursor_get(cursor, &key, &val, MDB_SET_RANGE); - if (rc == MDB_NOTFOUND) { + if (rc) { + qCDebug(ENGINE) << "MTimeDB::iterRange" << beginTime << endTime << mdb_strerror(rc); mdb_cursor_close(cursor); return nullptr; } @@ -216,7 +223,8 @@ while (1) { rc = mdb_cursor_get(cursor, &key, &val, MDB_NEXT); - if (rc == MDB_NOTFOUND) { + if (rc) { + qCDebug(ENGINE) << "MTimeDB::iterRange" << beginTime << endTime << mdb_strerror(rc); break; } Q_ASSERT_X(rc == 0, "MTimeDB::iter >=", mdb_strerror(rc)); @@ -245,7 +253,7 @@ QMap map; while (1) { int rc = mdb_cursor_get(cursor, &key, &val, MDB_NEXT); - if (rc == MDB_NOTFOUND) { + if (rc) { break; } Q_ASSERT_X(rc == 0, "MTimeDB::toTestMap", mdb_strerror(rc)); diff --git a/src/engine/phraseanditerator.cpp b/src/engine/phraseanditerator.cpp --- a/src/engine/phraseanditerator.cpp +++ b/src/engine/phraseanditerator.cpp @@ -20,8 +20,6 @@ #include "phraseanditerator.h" -#include - using namespace Baloo; PhraseAndIterator::PhraseAndIterator(const QVector& iterators) diff --git a/src/engine/positiondb.cpp b/src/engine/positiondb.cpp --- a/src/engine/positiondb.cpp +++ b/src/engine/positiondb.cpp @@ -18,13 +18,12 @@ * */ +#include "enginedebug.h" #include "positiondb.h" #include "positioncodec.h" #include "positioninfo.h" #include "postingiterator.h" -#include - using namespace Baloo; PositionDB::PositionDB(MDB_dbi dbi, MDB_txn* txn) @@ -41,21 +40,24 @@ MDB_dbi PositionDB::create(MDB_txn* txn) { - MDB_dbi dbi; + MDB_dbi dbi = 0; int rc = mdb_dbi_open(txn, "positiondb", MDB_CREATE, &dbi); - Q_ASSERT_X(rc == 0, "PositionDB::create", mdb_strerror(rc)); + if (rc) { + qCDebug(ENGINE) << "PositionDB::create" << mdb_strerror(rc); + return 0; + } return dbi; } MDB_dbi PositionDB::open(MDB_txn* txn) { - MDB_dbi dbi; + MDB_dbi dbi = 0; int rc = mdb_dbi_open(txn, "positiondb", 0, &dbi); - if (rc == MDB_NOTFOUND) { + if (rc) { + qCDebug(ENGINE) << "PositionDB::open" << mdb_strerror(rc); return 0; } - Q_ASSERT_X(rc == 0, "PositionDB::open", mdb_strerror(rc)); return dbi; } @@ -88,12 +90,12 @@ key.mv_size = term.size(); key.mv_data = static_cast(const_cast(term.constData())); - MDB_val val; + MDB_val val{0, nullptr}; int rc = mdb_get(m_txn, m_dbi, &key, &val); - if (rc == MDB_NOTFOUND) { + if (rc) { + qCDebug(ENGINE) << "PositionDB::get" << term << mdb_strerror(rc); return QVector(); } - Q_ASSERT_X(rc == 0, "PositionDB::get", mdb_strerror(rc)); QByteArray data = QByteArray::fromRawData(static_cast(val.mv_data), val.mv_size); @@ -110,10 +112,10 @@ key.mv_data = static_cast(const_cast(term.constData())); int rc = mdb_del(m_txn, m_dbi, &key, nullptr); - if (rc == MDB_NOTFOUND) { + if (rc) { + qCDebug(ENGINE) << "PositionDB::del" << term << mdb_strerror(rc); return; } - Q_ASSERT_X(rc == 0, "PositionDB::del", mdb_strerror(rc)); } // @@ -165,12 +167,12 @@ key.mv_size = term.size(); key.mv_data = static_cast(const_cast(term.constData())); - MDB_val val; + MDB_val val{0, nullptr}; int rc = mdb_get(m_txn, m_dbi, &key, &val); - if (rc == MDB_NOTFOUND) { + if (rc) { + qCDebug(ENGINE) << "PositionDB::iter" << term << mdb_strerror(rc); return nullptr; } - Q_ASSERT_X(rc == 0, "PositionDB::iter", mdb_strerror(rc)); return new DBPositionIterator(static_cast(val.mv_data), val.mv_size); } @@ -186,7 +188,7 @@ QMap> map; while (1) { int rc = mdb_cursor_get(cursor, &key, &val, MDB_NEXT); - if (rc == MDB_NOTFOUND) { + if (rc) { break; } Q_ASSERT_X(rc == 0, "PostingDB::toTestMap", mdb_strerror(rc)); diff --git a/src/engine/postingdb.cpp b/src/engine/postingdb.cpp --- a/src/engine/postingdb.cpp +++ b/src/engine/postingdb.cpp @@ -18,12 +18,11 @@ * */ +#include "enginedebug.h" #include "postingdb.h" #include "orpostingiterator.h" #include "postingcodec.h" -#include - using namespace Baloo; PostingDB::PostingDB(MDB_dbi dbi, MDB_txn* txn) @@ -40,21 +39,24 @@ MDB_dbi PostingDB::create(MDB_txn* txn) { - MDB_dbi dbi; + MDB_dbi dbi = 0; int rc = mdb_dbi_open(txn, "postingdb", MDB_CREATE, &dbi); - Q_ASSERT_X(rc == 0, "PostingDB::create", mdb_strerror(rc)); + if (rc) { + qCDebug(ENGINE) << "PostingDB::create" << mdb_strerror(rc); + return 0; + } return dbi; } MDB_dbi PostingDB::open(MDB_txn* txn) { - MDB_dbi dbi; + MDB_dbi dbi = 0; int rc = mdb_dbi_open(txn, "postingdb", 0, &dbi); - if (rc == MDB_NOTFOUND) { + if (rc) { + qCDebug(ENGINE) << "PostingDB::open" << mdb_strerror(rc); return 0; } - Q_ASSERT_X(rc == 0, "PostingDB::open", mdb_strerror(rc)); return dbi; } @@ -87,12 +89,12 @@ key.mv_size = term.size(); key.mv_data = static_cast(const_cast(term.constData())); - MDB_val val; + MDB_val val{0, nullptr}; int rc = mdb_get(m_txn, m_dbi, &key, &val); - if (rc == MDB_NOTFOUND) { + if (rc) { + qCDebug(ENGINE) << "PostingDB::get" << term << mdb_strerror(rc); return PostingList(); } - Q_ASSERT_X(rc == 0, "PostingDB::get", mdb_strerror(rc)); QByteArray arr = QByteArray::fromRawData(static_cast(val.mv_data), val.mv_size); @@ -109,10 +111,10 @@ key.mv_data = static_cast(const_cast(term.constData())); int rc = mdb_del(m_txn, m_dbi, &key, nullptr); - if (rc == MDB_NOTFOUND) { + if (rc) { + qCDebug(ENGINE) << "PostingDB::del" << term << mdb_strerror(rc); return; } - Q_ASSERT_X(rc == 0, "PostingDB::del", mdb_strerror(rc)); } QVector< QByteArray > PostingDB::fetchTermsStartingWith(const QByteArray& term) @@ -126,7 +128,7 @@ QVector terms; int rc = mdb_cursor_get(cursor, &key, nullptr, MDB_SET_RANGE); - while (rc != MDB_NOTFOUND) { + while (rc == 0) { Q_ASSERT_X(rc == 0, "PostingDB::fetchTermsStartingWith", mdb_strerror(rc)); const QByteArray arr(static_cast(key.mv_data), key.mv_size); @@ -161,10 +163,10 @@ MDB_val val; int rc = mdb_get(m_txn, m_dbi, &key, &val); - if (rc == MDB_NOTFOUND) { + if (rc) { + qCDebug(ENGINE) << "PostingDB::iter" << term << mdb_strerror(rc); return nullptr; } - Q_ASSERT_X(rc == 0, "PostingDB::iter", mdb_strerror(rc)); return new DBPostingIterator(val.mv_data, val.mv_size); } @@ -214,9 +216,7 @@ MDB_val val; int rc = mdb_cursor_get(cursor, &key, &val, MDB_SET_RANGE); - while (rc != MDB_NOTFOUND) { - Q_ASSERT_X(rc == 0, "PostingDB::regexpIter", mdb_strerror(rc)); - + while (rc == 0) { const QByteArray arr(static_cast(key.mv_data), key.mv_size); if (!arr.startsWith(prefix)) { break; @@ -226,8 +226,10 @@ } rc = mdb_cursor_get(cursor, &key, &val, MDB_NEXT); } - if (rc != MDB_NOTFOUND) { - Q_ASSERT_X(rc == 0, "PostingDB::regexpIter", mdb_strerror(rc)); + + if (rc) { + qCDebug(ENGINE) << "PostingDB::regexpIter" << mdb_strerror(rc); + return nullptr; } mdb_cursor_close(cursor); @@ -279,7 +281,7 @@ QMap map; while (1) { int rc = mdb_cursor_get(cursor, &key, &val, MDB_NEXT); - if (rc == MDB_NOTFOUND) { + if (rc) { break; } Q_ASSERT_X(rc == 0, "PostingDB::toTestMap", mdb_strerror(rc)); diff --git a/src/file/extractorprocess.cpp b/src/file/extractorprocess.cpp --- a/src/file/extractorprocess.cpp +++ b/src/file/extractorprocess.cpp @@ -20,8 +20,9 @@ #include "extractorprocess.h" +#include "baloodebug.h" + #include -#include #include using namespace Baloo; @@ -91,7 +92,7 @@ break; default: - qCritical() << "Got unknown result from extractor" << command << arg; + qCritical(BALOO) << "Got unknown result from extractor" << command << arg; } } } diff --git a/src/file/fileindexscheduler.cpp b/src/file/fileindexscheduler.cpp --- a/src/file/fileindexscheduler.cpp +++ b/src/file/fileindexscheduler.cpp @@ -19,6 +19,7 @@ #include "fileindexscheduler.h" +#include "baloodebug.h" #include "firstrunindexer.h" #include "newfileindexer.h" #include "modifiedfileindexer.h" @@ -33,7 +34,6 @@ #include #include -#include #include using namespace Baloo; @@ -181,9 +181,9 @@ void FileIndexScheduler::powerManagementStatusChanged(bool isOnBattery) { - qDebug() << "Power state changed"; + qCDebug(BALOO) << "Power state changed"; if (isOnBattery && m_indexerState == ContentIndexing) { - qDebug() << "On battery stopping content indexer"; + qCDebug(BALOO) << "On battery stopping content indexer"; m_contentIndexer->quit(); //TODO: Maybe we can add a special state for suspended due to being on battery. m_indexerState = Idle; @@ -196,14 +196,14 @@ void FileIndexScheduler::setSuspend(bool suspend) { if (suspend) { - qDebug() << "Suspending"; + qCDebug(BALOO) << "Suspending"; if (m_indexerState == ContentIndexing) { m_contentIndexer->quit(); } m_indexerState = Suspended; Q_EMIT stateChanged(m_indexerState); } else { - qDebug() << "Resuming"; + qCDebug(BALOO) << "Resuming"; m_indexerState = Idle; // No need to emit here we'll be emitting in scheduling scheduleIndexing(); diff --git a/src/file/indexcleaner.cpp b/src/file/indexcleaner.cpp --- a/src/file/indexcleaner.cpp +++ b/src/file/indexcleaner.cpp @@ -24,7 +24,8 @@ #include "transaction.h" #include "idutils.h" -#include +#include "baloodebug.h" + #include #include @@ -52,19 +53,19 @@ QString url = tr.documentUrl(id); if (!QFile::exists(url)) { - qDebug() << "not exists: " << url; + qCDebug(BALOO) << "not exists: " << url; return true; } if (!m_config->shouldBeIndexed(url)) { - qDebug() << "should not be indexed: " << url; + qCDebug(BALOO) << "should not be indexed: " << url; return true; } // FIXME: This mimetype is not completely accurate! QString mimetype = mimeDb.mimeTypeForFile(url, QMimeDatabase::MatchExtension).name(); if (!m_config->shouldMimeTypeBeIndexed(mimetype)) { - qDebug() << "mimetype should not be indexed: " << url << mimetype; + qCDebug(BALOO) << "mimetype should not be indexed: " << url << mimetype; return true; } diff --git a/src/file/main.cpp b/src/file/main.cpp --- a/src/file/main.cpp +++ b/src/file/main.cpp @@ -24,7 +24,6 @@ #include #include -#include #include #include diff --git a/src/file/metadatamover.cpp b/src/file/metadatamover.cpp --- a/src/file/metadatamover.cpp +++ b/src/file/metadatamover.cpp @@ -191,7 +191,7 @@ return; } - qDebug() << "MetadataMover::watcherServiceUnregistered" << itService.key(); + qCDebug(BALOO) << "MetadataMover::watcherServiceUnregistered" << itService.key(); delete itService.value(); m_watcherApplications.erase(itService);