- Long-awaited autoincrement ID functionality for Real-Time indexes is now available.
- Highlighting on stored fields is now supported by the new HIGHLIGHT() function. HIGHLIGHT() is available in SphinxQL as well as the HTTP API.
- SNIPPET() can use new special function QUERY() for the query parameter. This eliminates the need to duplicate the full-text match string in search statements using SNIPPET() in SELECT clause.
Highlighting functions receive new parameter ‘field_separator’.
Improvements and changes
- Starting with this version default location of configuration file is
/etc/manticoresearch/manticore.conf. In case of upgrading via deb/rpm packaging, the packages will move the existing sphinx.conf to the new location.
- On RHEL/CentOS the service is renamed from searchd to manticore.
- For docker the configuration mount is expected to be
- In previous version, querying stored fields from distributed indexes with remote nodes was slow and high-resource demanding. To address this we implemented a lazy fetch of stored fields (they are retrieved only after the final result set is build), bringing the performance similar with queries that don’t carry stored fields.
- String attributes and expressions don’t break anymore the multi-query optimization and parallel FACET optimization. In previous versions, a single attribute introduced in facets would make the aggregations to run sequential, leading to slow faceted searches. Now a faceted search is mostly influenced only by the slowest faceted attribute/expression.
The gains depend on the composition types of facets, in some cases a faceted search can now be several times faster.
- ICU data file is now shipped in official and icu_data_dir directive is removed. This was due various issues reported between different ICU versions shipped by official OS channels.
- Systemd unit files now ship with ‘Restart=on-failure’ policy, to allow restarting searchd daemon in case of crashed or unwanted shutdowns.
- On RHEL/CentOS 8 Manticore Search is now compiled against mariadb-connector-c-devel and mariadb-connector-c is optional requirement for indexing data from MySQL databases.
We made this change as mariadb-connector-c is compatible with both MySQL and MariaDB shipped in RHEL/CentOS 8.
A number of bugs have been fixes in this release, to name a few:
- 795520a fix #275 binlog invalid state on error no space left on disk
- 2284da5 fix #279 crash on IN filter to JSON attribute
- ce2e4b4 fix #281 wrong pipe closing call
- 440991f fix crash on infix generation for long terms with wide utf8 codepoints
- faed322 fix JSON converts only numeric to string
For full changelog please consult the release notes.