Manticore Search 28.4.4 has been released. This release brings faster KNN rescoring, more flexible conversational search, a simpler install and upgrade path, better faceting controls, per-table relevance defaults, and fixes across authentication, replication, SQL compatibility, distributed queries, and columnar/KNN internals.
This post is a catch-up for everything shipped from 27.2.0 through 28.4.4.
Please review these before upgrading:
SPH_UDF_VERSION
to 12.dict=keywords_32k
embeddings_threads
KNN search now batches distance calculations during the rescore
pass. After HNSW returns the candidate set, Manticore recomputes final full-precision distances and re-sorts the results. Batching that work reduces per-candidate overhead in the final stage of vector search.
For vector-heavy workloads, this takes work out of the part of the query that runs after candidate selection. Results do not change; the final ranking pass just has less overhead when many candidates are rescored.
Conversational search is now available through the /search
JSON API as well as SQL CALL CHAT
. That makes it easier to use Manticore's chat flow from applications that already talk to the HTTP API and do not want to add a separate SQL path just for chat requests.
CREATE CHAT MODEL
also gained custom_prompt
support, so answers can follow application-specific instructions such as citation rules, tone, response length, or formatting. The feature is still built on the same Manticore Search flow: retrieve relevant documents from an existing vectorized table, build context, keep conversation history, and return an answer with supporting sources.
The quick-start install path is now simpler:
curl https://manticoresearch.com | sh
The same installer can also upgrade an existing installation, list available versions, switch between stable and development repositories, and install a selected version. Package managers still remain the source of truth for installed files, repositories, services, and dependencies; the new path just removes the manual setup steps around them.
For all options, run:
curl https://manticoresearch.com | sh -s help
Faceted search now supports zero-count facet buckets through SQL ZEROES
and JSON "zeroes": true
.
This is a small but important UI feature. In e-commerce-style filtering, you often want to keep an option visible even when the current filter combination gives it a count of 0
. Combined with max
-mode facet behavior, zero-count buckets make it easier to show selected, available, and currently unavailable choices without hiding part of the filter vocabulary from the user.
Manticore now supports CREATE TABLE ... profile='relevance', plus stored per-table defaults for
ranker
boolean_mode
Based on our search quality tests, profile='relevance'
and the ranking settings it enables improve relevance in many cases. The application also no longer needs to repeat the same ranking parameters in every request.
embeddings_threads caps the CPU threads used for auto-embedding inserts,
ALTER TABLE ... REBUILD KNN
, and text-to-vector KNN queries.This matters on shared hosts and mixed workloads. Embedding generation and KNN rebuilds can be CPU-heavy; a server-level cap makes those jobs easier to schedule without letting them take over the whole machine.
This release includes 17 bug fixes. The most important ones are:
COUNT(DISTINCT ...)
GETFIELD
fetch errors or malformed replies instead of returning apparently successful rows with empty or untrusted stored-field values..tmp.spc.*
files from breaking later table rename, attach, or drop operations.SELECT
queries.SET
statements no longer fail under auth.здоров'ям
match здоров'я
under lemmatize_uk_all
.blend_mode
, restoring separator-stripped variants consistently for indexing and keyword extraction.percentiles
aggregations together with terms aggregations in the same /search
request on multi-chunk RT tables was fixed.For the complete list, see the changelog.