Baloo: Difference between revisions

From KDE Community Wiki
(Add note on `balooctl checkDb`)
(Add Top Issues section)
Line 1: Line 1:
[[File:Mascot konqi-support-search.png|thumbnail|right|Help [[Konqi]] find what he wants!]]
[[File:Mascot konqi-support-search.png|thumbnail|right|Help [[Konqi]] find what he wants!]]
[https://projects.kde.org/projects/frameworks/baloo Baloo] is the file indexing and file search framework for KDE Plasma.
[https://projects.kde.org/projects/frameworks/baloo Baloo] is the file indexing and file search framework for KDE Plasma, with a focus on providing a very small memory footprint along with with extremely fast searching.


:Mailing List: [email protected] ([https://mail.kde.org/mailman/listinfo/kde-devel info page])
:Mailing List: [email protected] ([https://mail.kde.org/mailman/listinfo/kde-devel info page])
:IRC Channel: #kde-baloo on freenode
:IRC Channel: #kde-devel on freenode
:Phabricator project: https://phabricator.kde.org/project/view/261


Baloo focuses on providing a very small memory footprint along with with extremely fast searching.
== Top issues ==
* DB size grows forever; deleted files are never removed: https://bugs.kde.org/show_bug.cgi?id=353874
* Files in plasma vault are indexed and available when the vault is closed: https://bugs.kde.org/show_bug.cgi?id=390830
* Baloo's file metadata extractor doesn't run sandboxed: https://phabricator.kde.org/D8532
* Baloo DB is entirely rewritten for every write, introducing delays and SSD lifespan issues when DB size grows large: https://bugs.kde.org/show_bug.cgi?id=373021
* Baloo doesn't notice/re-index renamed files saved over other ones: https://bugs.kde.org/show_bug.cgi?id=397242
 
* Need better error handling for lmdb errors: https://bugs.kde.org/show_bug.cgi?id=368557
* Baloo's initial indexing introduces IO-related UI lag and delays: https://bugs.kde.org/show_bug.cgi?id=400704 & https://bugs.kde.org/show_bug.cgi?id=356357
* No apparent effect after removing a folder from the index; need to restart or kill all Baloo processes: https://bugs.kde.org/show_bug.cgi?id=373430
* baloo_file doesn't get killed when you stop indexing or force a re-index: https://bugs.kde.org/show_bug.cgi?id=353559
* Baloo should index NTFS disks: https://bugs.kde.org/show_bug.cgi?id=399885
* Baloo should have a user-facing option to index source code: https://bugs.kde.org/show_bug.cgi?id=380893
* Baloo crashes a lot in various places:
** https://bugs.kde.org/show_bug.cgi?id=367480 <tt>PostingCodec::decode()</tt>
** https://bugs.kde.org/show_bug.cgi?id=357206 <tt>PostingDB::get()</tt> or <tt>WriteTransaction::commit()</tt>
** https://bugs.kde.org/show_bug.cgi?id=361186 <tt>PositionDB::get()</tt> or <tt>WriteTransaction::commit()</tt>
** https://bugs.kde.org/show_bug.cgi?id=397644 <tt>DocumentTimeDB::get()</tt>
** https://bugs.kde.org/show_bug.cgi?id=390823 <tt>IdTreeDB::get()</tt>
** https://bugs.kde.org/show_bug.cgi?id=372880 <tt>IdFilenameDB::get()</tt>
** https://bugs.kde.org/show_bug.cgi?id=395902 <tt>DocumentTimeDB::del()</tt>
** https://bugs.kde.org/show_bug.cgi?id=393583 <tt>PostingDB::del()</tt>
** https://bugs.kde.org/show_bug.cgi?id=372655 <tt>IdFilenameDB::del()</tt>
** https://bugs.kde.org/show_bug.cgi?id=385056 <tt>PendingFileQueue::enqueue()</tt> or <tt>FileWatch::slotFileDeleted()</tt>
** https://bugs.kde.org/show_bug.cgi?id=389679 <tt>Transaction::commit()</tt> or <tt>lmdb::mdb_txn_commit()</tt>
** https://bugs.kde.org/show_bug.cgi?id=380111 <tt>IdTreeDB::put()</tt>
** https://bugs.kde.org/show_bug.cgi?id=395888 <tt>DocTermsCodec::decode()</tt>
** https://bugs.kde.org/show_bug.cgi?id=374239 <tt>DocumentIdDB::size()</tt>
** https://bugs.kde.org/show_bug.cgi?id=384133 <tt>DocumentIdDB::fetchItems()</tt>
** https://bugs.kde.org/show_bug.cgi?id=393472 <tt>PostingDB::iter</tt> or <tt>PostingDB::prefixIter</tt> when invoked from KRunner
** https://bugs.kde.org/show_bug.cgi?id=403475 <tt>putDifferentialVarInt32()</tt> or <tt>PositionCodec::encode()</tt>


== Useful pages ==
== Useful pages ==

Revision as of 22:27, 4 March 2019

Help Konqi find what he wants!

Baloo is the file indexing and file search framework for KDE Plasma, with a focus on providing a very small memory footprint along with with extremely fast searching.

Mailing List: [email protected] (info page)
IRC Channel: #kde-devel on freenode
Phabricator project: https://phabricator.kde.org/project/view/261

Top issues

Useful pages

Using Baloo

Baloo is not an application, but a daemon to index files. Applications can use the Baloo framework to provide file search results.

An intentionally limited number of settings are provided via the KDE System Settings "Desktop Search" icon. Other adjustments can be made directly to the configuration file.

balooctl

balooctl is a CLI command to perform certain operations on Baloo. The operations are indicated by arguments. All available arguments can be listed by issuing balooctl --help in terminal app, such as userbase:Konsole.

To be noted, argument checkDb is only meant to be used by developers for debugging. All it does is to print some messages but not to sanitize the database. And the execution time grows exponentially with the number of indexed files (see Comment 5 under bug #380465).