splitbrain opened a new pull request at
This is work in progress based on #2943
* Plugin authors should be able to reuse the index mechanisms to build their
own indexing (eg. the docsearch plugin)
* This means an index may not have pages as the primary underlying object
* All index related mechanism should be well covered by tests
* The overall architecture should be easy to understand with clear doc
comments, consistent naming, etc.
* memory is precious so we need to be aware what can be loaded or not
* speed is important when reading indexes
To me the Indexing/Search System consists of several building blocks
* at the bottom are individual **index** files
* some are small enough to load them into memory
* some are too large to load them (remember people have 100k pages sometimes)
* on top of the individual indexes are what I would call **collections**
* The FullTextIndex is such a collection, making use of several index files
* finally there is the indexer that manages the collections and fills them with
Concerns between these different levels should be clearly differentiated
currently all these things are very much mixed and spread all over the place.
A series of smaller PRs against this branch should be made before this can be
merged into master.
Please help us to review this pull request, so new contributors get feedback in
a timely manner.
DokuWiki mailing list - more info at