stable

Clone or download

Read-only

Addition and removal from the search index are now done asynchronously

It does not make that much of a difference at this stage since our only FTS implementation is localized close to the data to index (it might still lead to an improvement when re-indexing all the items on the instance). It will start to matter when indexing files (e.g. Word files) and using a remote FTS backend and possibly on large Tuleap instances. The number of events processed by the full-text-search might be important, it should probably not be processed with the priority than the other async events (e.g. notifications or Git commit message handling). An upcoming contribution will implement the possibility to to queue low-priority tasks into the async queue. Part of story #26771: Index artifact fields (REST + Switch to) on updated artifacts only Change-Id: Ib8264221dafb0d509858e0cd3886dc5c1650f756

Modified Files

Name
A plugins/fts_db/include/Index/Asynchronous/IndexItemTask.php +81 −0 Go to diff View file
A plugins/fts_db/include/Index/Asynchronous/IndexingWorkerEventDispatcher.php +49 −0 Go to diff View file
A plugins/fts_db/include/Index/Asynchronous/RemoveItemsFromIndexTask.php +77 −0 Go to diff View file
M plugins/fts_db/include/fts_dbPlugin.php +20 −2 Go to diff View file
A plugins/fts_db/tests/unit/Index/Asynchronous/IndexItemTaskTest.php +89 −0 Go to diff View file
A plugins/fts_db/tests/unit/Index/Asynchronous/IndexingWorkerEventDispatcherTest.php +87 −0 Go to diff View file
A plugins/fts_db/tests/unit/Index/Asynchronous/RemoveItemsFromIndexTaskTest.php +89 −0 Go to diff View file