Manticore Search is an Open Source database that was created in 2017 as a continuation of Sphinx Search engine (Started in 2001). It is integrated with Tiki Wiki CMS Groupware and one of the components of WikiSuite. This is especially interesting for the Tiki Trackers database web app builder.
Status:
You can check out benchmarks at: https://db-benchmarks.com/
It is normally this:
sudo apt-get install wikisuite-manticore
This confirms if it installed properly, but it doesn't mean it's running in the background (see next section)
root~# searchd -v Manticore 6.0.2 89c7a5139@230210 (columnar 2.0.0 a7c703d@230130) (secondary 2.0.0 a7c703d@230130) Copyright (c) 2001-2016, Andrew Aksyonoff Copyright (c) 2008-2016, Sphinx Technologies Inc (http://sphinxsearch.com) Copyright (c) 2017-2023, Manticore Software LTD (https://manticoresearch.com)
For Manticore to be available for applications like Tiki Wiki CMS Groupware, you want to enable
sudo systemctl enable manticore
In some newer operating systems it can fail with error "Failed to enable unit: Unit ... is transient or generated.". In this can you can remove the generator and try again. It's unlikely you need the generator ever again after Manticore is installed.
In Debian-based operating systems run:
sudo rm /lib/systemd/system-generators/manticore-generator sudo systemctl daemon-reload sudo systemctl enable manticore
For more detail, please see: https://manual.manticoresearch.com/Starting_the_server/Linux#Starting-and-stopping-using-systemd
To check if the Manticore service is set to run at boot
sudo systemctl is-enabled manticore
Then reboot to test
sudo reboot
If you prefer "Nightly" (development) versions, please see: https://manual.manticoresearch.com/Installation/Debian_and_Ubuntu#APT-repository
php console.php index:rebuild --log
If you get this error:
SQLSTATE[42000]: Syntax error or access violation: 1064 error adding index 'tiki_pref_en': file not found: '/home/example/tmp/manticore-stopwords-tiki_pref_en'
The temporary workaround:
Virtualmin Virtual Server -> Services -> PHP-FPM Configuration -> Edit Configuration Manually
Old:
php_admin_value[sys_temp_dir] = /home/example/tmp
New:
php_admin_value[sys_temp_dir] = /tmp
On Debian 10 and 11, it is located at /etc/manticoresearch/manticore.conf
Here are tweaks you may want to do in /etc/manticoresearch/manticore.conf
Tiki uses Manticore as an index. So it's a copy of the data, optimized for speed and search. The real data lives in MariaDB/MySQL. Thus, we don't need binary logging because we an rebuild the index any time.
binlog_path = # disable logging
Ref: https://manual.manticoresearch.com/Logging/Binary_logging#Disabling-binary-logging
If you get errors like this on index rebuild:
2023-03-03T16:07:21+00:00 ERR (3): NOTICE: PDOStatement::execute(): send of 32768 bytes failed with errno=104 Connection reset by peer {\"code\":null,\"file\":\"/lib/core/Search/Manticore/PdoClient.php\",\"line\":201}
you can increase max_packet_size
max_packet_size = 128M
Ref: https://manual.manticoresearch.com/Server_settings/Searchd#max_packet_size
Lemmatization, stemming, word forms, etc.: