Skip to content

Release history

Manticore Search releases

Full-text search and data analytics, with fast response time for small, medium and big data (alternative to Elasticsearch)

All releases

2 shown

release-25.0.0 Breaking risk
⚠ Upgrade required
  • When upgrading from the split-package layout to the new `manticore` bundle, remove existing `manticore*` packages (e.g., `apt remove 'manticore*'` or `yum remove 'manticore*'`) before installing the bundle; data and configuration remain intact.
  • Upgrade clustered nodes together because mixed‑version replication is unsupported after this release.
Breaking changes
  • Requires **MCL 13.0.0**; incompatible with older MCL versions (affects auto‑embedding models and any separate MCL management).
  • Bumps internal replication protocol version and adds cluster epoch tracking; mixed‑version replication clusters are no longer compatible.
  • Introduces index format version 69 for bigram tokenization options; indexes rebuilt in this format cannot be read by older Manticore versions.
Notable features
  • Hybrid search with Reciprocal Rank Fusion (`fusion_method='rrf'`).
  • S3‑compatible backup and restore (AWS S3, MinIO, Wasabi, Cloudflare R2).
  • New Manticore bundle package for deb/rpm simplifying installation.
Full changelog

Version 25.0.0

Released: March 30th 2026

This release brings a broader packaging overhaul, new API_URL and API_TIMEOUT options for auto-embedding models, hybrid search, S3-compatible backup and restore support, faster RT tables maintenance with N-way merges and parallel OPTIMIZE, KNN prefiltering, and MySQL-compatible prepared statements.

Breaking Changes

  • ⚠️ v25.0.0 PR #123 Breaking change: updated MCL to 13.0.0, adding API_URL and API_TIMEOUT for auto-embedding models. This affects you if you use auto-embedding models or manage MCL separately from the daemon, because Manticore 25.0.0 requires MCL 13.0.0 and is not compatible with older MCL versions; upgrade the daemon and MCL together, and downgrade is only safe if you also restore a matching older MCL version.
  • ⚠️ v24.0.0 Issue #4343 Breaking change: the internal replication protocol version is bumped, and cluster epoch tracking is added so recovering nodes can detect when cluster table membership changed while they were offline and use SST instead of failing during IST recovery. This affects you only if you use replication clusters: mixed-version replication clusters are not compatible across this change, so upgrade clustered nodes together, and downgrade is only safe before the new replication protocol is used in the cluster.
  • ⚠️ v23.0.0 Issue #4364 Breaking change: index format version 69 is introduced to support new bigram tokenization options, including bigram_delimiter modes and digit-aware bigram_index modes. This affects you if you use those bigram options or if you rebuild indexes and later need to open the rewritten indexes with an older Manticore version: existing older indexes remain readable, but indexes rebuilt or newly written in format 69 are not compatible with older Manticore versions, so downgrade is only safe before such indexes are rewritten.
  • ⚠️ v22.0.0 Issue #4301 Breaking change: embedding generation for RT tables is moved out of the commit phase and replicated as vector data. This affects you if you use replication clusters with RT tables that have model_name: it preserves user-provided vectors, prevents replicas from regenerating different embeddings, and improves auto-embeddings performance when used with replication, but mixed-version replication clusters are not compatible across this change. Upgrade clustered nodes together; downgrade is only safe before the new replication protocol is used in the cluster.
  • ⚠️ v21.0.0 PR #138 Breaking change: updated MCL to 12.0.0 and bumped the required KNN API to support adaptive KNN early termination during HNSW traversal. This affects you if you manage MCL separately from the daemon or run KNN queries that rely on the previous candidate exploration behavior or borderline result selection: Manticore 21.0.0 requires MCL 12.0.0 with the newer KNN interface, and with that library KNN search can stop earlier once enough candidates are found, which may change which candidates are explored and returned. Existing data remains compatible and no special migration is required, but upgrade the daemon and MCL together; downgrade is only safe if you also restore a matching older MCL version.
  • ⚠️ v19.0.0 Issue #4103 Breaking change: added KNN prefiltering. This affects you if you run KNN queries together with attribute filters, because filters can now be applied during KNN search instead of only after candidate selection. That changes result-selection behavior for filtered KNN queries by prioritizing filtered nearest neighbors; no special migration is required, but queries relying on the previous post-filtered result behavior may return different results after upgrade. Downgrade is possible since no index or protocol format change is introduced by this feature.
  • ⚠️ v18.0.0 Issue #4261 Breaking change: index format version 68 is introduced to fix hitless_words dictionary layout handling. This affects you if you rebuild or newly write indexes and later need to open them with an older Manticore version: existing older indexes remain readable, but any indexes rebuilt or newly written in the new format are not compatible with older Manticore versions, so downgrade is only safe before such indexes are rewritten.

Packaging-related changes

  • 🆕 v25.0.0 PR #4357 Packaging change: manticore is now a bundle package for deb and rpm. It includes the daemon, tools, converter, development headers, ICU data, bundled dependency packages (manticore-columnar-lib, manticore-backup, manticore-buddy, manticore-executor, manticore-load, manticore-galera, and manticore-tzdata where applicable), plus built-in language packs for German, English, and Russian, along with Jieba support. The Ukrainian lemmatizer is not bundled; install it separately using the Debian/Ubuntu or RHEL/CentOS instructions.
    When upgrading from the previous package layout, normally you can just install the manticore package. If the old split packages cause conflicts, remove them with apt remove 'manticore*' or yum remove 'manticore*' and then install manticore. That cleanup does not remove your existing data or configuration.

New Features and Improvements

  • 🆕 v24.4.0 PR #4091 Improved RT table compaction by adding N-way disk chunk merges and parallel OPTIMIZE jobs, reducing the time needed to merge many disk chunks and exposing the new merge_chunks_per_job and parallel_chunk_merges settings.
  • 🆕 v24.3.0 PR #133 Updated Manticore Backup to 1.10.0, adding S3-compatible backup and restore support, including AWS S3, MinIO, Wasabi, and Cloudflare R2.
  • 🆕 v24.2.0 Issue #2079 Added hybrid search with Reciprocal Rank Fusion (fusion_method='rrf'), allowing SQL and JSON queries to combine full-text and KNN results, rank them with hybrid_score(), and support multiple KNN subqueries in a single fused result set.
  • 🆕 v24.1.0 PR #141 Updated MCL to 12.4.1, adding support for GGUF quantized local embedding models, T5 encoder models, and gated Hugging Face models via token-authenticated downloads.
  • 🆕 v23.2.0 PR #4372 Updated Buddy to 3.44.0, adding fuzzy search support for queries involving multiple tables.
  • 🆕 v23.1.0 PR #4357 Added a new Manticore bundle package for deb and rpm, replacing the previous meta package to simplify installation and distribution of bundled components.
  • 🆕 v21.1.0 PR #4352 Updated MCL to 12.1.0, improving KNN early-termination performance and adding more efficient 64-bit value encoding.
  • 🆕 v19.2.0 PR #4306 Updated MCL to 11.1.0, adding codec cache support.
  • 🆕 v19.1.0 PR #4271 Updated Buddy to 3.43.0, including improved metrics handling.
  • 🆕 v19.0.3 Issue #4303 Added separate interactive_timeout and wait_timeout handling for SQL connections, so interactive clients and non-interactive clients can use different idle timeouts like MySQL.
  • 🆕 v17.6.0 Issue #1124 Added MySQL-compatible prepared statements support, including binary protocol prepare/execute handling and bound parameter validation.

Bug Fixes

  • 🪲 v24.2.3 Issue #4375 Fixed false-positive full-text matches when max_query_time interrupts queries using operators such as NOTNEAR, MAYBE, or negation, so timed-out searches no longer return rows that do not actually satisfy the query.
  • 🪲 v24.2.2 Issue #4398 Fixed query time statistics so query log, global counters, and per-table SHOW STATUS timings stay consistent, and Buddy’s internal requests no longer distort user-facing daemon stats.
  • 🪲 v24.2.1 PR #653 Updated Buddy to 3.44.1, fixing incorrect default handling of empty request payloads.
  • 🪲 v24.1.3 PR #4396 Fixed manual searchd startup on macOS so Buddy-backed SQL commands no longer fail from loading an older system libcurl; runtime lookup now prefers Homebrew curl automatically, with MANTICORE_CURL_LIB still available as an explicit override.
  • 🪲 v24.1.2 PR #4394 Fixed macOS packaged builds so Buddy-backed SQL commands no longer fail because searchd links against an incompatible libcurl; the package now prefers Homebrew curl and supports a MANTICORE_CURL_LIB runtime override.
  • 🪲 v24.1.1 Issue #4388 Fixed replication in clusters when a transaction contains duplicate document IDs, so replicas no longer lose rows while the donor correctly removes duplicates.
  • 🪲 v24.0.1 Issue #4354 Fixed UPDATE handling when a changed attribute must also disable its secondary index, preventing incorrect warnings and inconsistent secondary-index state.
  • 🪲 v23.0.2 PR #4370 Updated MCL to 12.1.1, fixing crashes during auto-embedding generation when text contains invalid UTF-8, including inserts into tables with html_strip=1.
  • 🪲 v23.0.1 PR #4371 Fixed a missing RT segments lock during embedding validation, preventing crashes and race conditions in embedding-related operations.
  • 🪲 v21.0.3 Issue #4315 Fixed inserts into tables with auto-embedding columns so MVA values are preserved instead of being stored as empty.
  • 🪲 v21.0.2 PR #4277 Updated Buddy to 3.43.1, fixing autocomplete and fuzzy search handling for terms with numeric prefixes and wildcard asterisks.
  • 🪲 v21.0.1 PR #4349 Fixed a crash during embedding generation for tables using columnar storage.
  • 🪲 v19.2.5 PR #4333 Updated Executor to 1.4.1, switching PHP source downloads from php.net to GitHub to avoid CAPTCHA-protected links, and bumping bundled PHP to 8.4.18.
  • 🪲 v19.2.4 Issue #4314 Fixed model-backed float_vector columns to support an explicit empty FROM='', which now correctly means “use all text/string fields.”.
  • 🪲 v19.2.3 Issue #4315 Fixed inserts into tables with auto-embedding float_vector columns so MVA values are preserved instead of being stored as empty.
  • 🪲 v19.2.2 Issue #4297 Fixed IMPORT TABLE to copy external files correctly, including hitless_words, so imported tables no longer reference missing external files after import.
  • 🪲 v19.2.1 Issue #4229 Fixed LEFT JOIN results to emit proper MySQL NULL values instead of the string NULL, improving compatibility with native MySQL clients and drivers.
  • 🪲 v19.0.4 Issue #4308 Fixed daemon crashes caused by filtering on stored/full-text fields such as WHERE title='test'; these queries now return an error instead of crashing.
  • 🪲 v19.0.2 PR #4311 Fixed crashes in HTTP /sql?mode=raw multi-statement requests using .@files followed by SHOW META.
  • 🪲 v19.0.1 Issue #4103 Updated MCL to 11.0.0 to support KNN prefiltering.
  • 🪲 v18.0.1 Issue #4293 Fixed ALTER TABLE ... ADD COLUMN for auto-embedding float_vector columns so model_name and FROM are preserved correctly instead of being replaced with knn_dims='0'.
  • 🪲 v17.6.6 Issue #4264 Fixed kqueue EOF handling on macOS to prevent spurious HTTP receive warnings such as Resource temporarily unavailable during request processing.
  • 🪲 v17.6.5 PR #4296 Fixed document-count and cost estimation for full-text AND nodes, improving query planner decisions for intersecting full-text conditions.
  • 🪲 v17.6.4 Issue #4274 Fixed indextool --check failing to open disk-chunk hitless_words files by resolving their paths relative to the index directory.
  • 🪲 v17.6.3 Issue #4284 Fixed crashes on replica nodes when inserting into clustered tables with auto-embeddings by preserving the source text needed to generate embeddings during replicated commits.
  • 🪲 v17.6.2 Issue #4257 Fixed a Valgrind-detected invalid read in prepared statement execution by ensuring the parser input buffer is terminated correctly.
  • 🪲 v17.6.1 Issue #4207 Added a regression fix and test coverage for the RT disk chunk save race that could lose document kills and lead to duplicate rows after merges.
  • 🪲 v17.5.10 Issue #4207 Updated MCL to 10.2.2, fixing crashes when running searches while data is being inserted into tables with local embedding models by adding a concurrency guard around local model usage.
  • 🪲 v17.5.9 PR #4247 Fixed a race during RT disk chunk save that could lose document kills and produce duplicate rows after merges or saves.
  • 🪲 v17.5.8 PR #4241 Fixed incorrect post-limit attribute evaluation in joined tables, including LEFT JOIN queries after flushing RAM chunks to disk.
  • 🪲 v17.5.7 PR #4239 Clarified query-time and wall-time definitions in logging and status documentation.
  • 🪲 v17.5.6 PR #4245 Fixed global search_stats_ms_* metrics overreporting search time by double-counting local execution time; these statistics now match the actual query execution time.
  • 🪲 v17.5.5 Issue #858 Fixed HIGHLIGHT() and snippet generation for CJK text adding unnecessary spaces between words; highlighted excerpts now preserve the original text spacing instead of tokenized spacing.
  • 🪲 v17.5.4 Issue #1166 Fixed a crash on INSERT after TRUNCATE TABLE ... WITH RECONFIGURE for RT tables with index_field_lengths=1, particularly when fields and string attributes are mixed; field-length attributes are now set up correctly during reconfigure.
  • 🪲 v17.5.3 Fixed corrupted Wordforms documentation content in the manual.
  • 🪲 v17.5.2 Issue #3213 Fixed JOIN queries filtering on expressions built from aliases of joined-table columns, such as SELECT t2.i al, (al*0.1) pct ... WHERE pct > 0, which could fail with incoming-schema expression missing evaluator; these filters now evaluate correctly after the join.
release-17.5.1 Breaking risk
Breaking changes
  • Percolate query JSON responses: `_id` and `_score` fields are now returned as numbers instead of strings, breaking clients that relied on string types.
Notable features
  • MCL updated to version 10.2.0
  • searchd `--quiet` (`-q`) flag added to suppress startup output
Full changelog

Version 17.5.1

Released: February 7th 2026

Recommended Libraries

  • Recommended MCL version: 10.2.0
  • Recommended Buddy version: 3.41.0

If you follow the official installation guide, you don't need to worry about this.

❤️ We’d like to thank @pakud for their work on PR #4075.

Breaking Changes

  • ⚠️ v17.0.0 Issue #4120 MCL 10.0.0: Added support for DROP CACHE. This updates the interface between the daemon and MCL. Older Manticore Search versions don't suport the newer MCL.
  • ⚠️ v16.0.0 Issue #4019 Percolate query JSON responses now return hit _id and _score as numbers instead of strings, matching regular search; this is a breaking change for clients that relied on string type for these fields.

New Features and Improvements

  • 🆕 v17.5.0 PR #130 MCL updated to 10.2.0: QWEN model support fixed and support for additional models added.
  • 🆕 v17.3.0 PR #4186 Executor updated to 1.4.0, including an updated PHP version and the llm-php-ext extension.
  • 🆕 v17.2.0 PR #4195 Updated MCL to 10.1.0; Added support for Qwen local embeddings models.
  • 🆕 v17.1.0 Issue #3826 Jieba morphology instances are now shared across tables with the same configuration (mode, HMM flag, user dict path), greatly reducing memory use when many tables use Jieba (e.g. many empty tables no longer cause ~20 GB usage).
  • 🆕 v17.0.7 Issue #2046 In RT mode, stopwords, wordforms, exceptions, and hitless_words can be set inline in CREATE TABLE (semicolon-separated values; wordforms/exceptions use > or => for pairs, with \ escaping), so tables can be created without external files; SHOW CREATE TABLE returns these inline values.
  • 🆕 v16.3.0 KNN search now defaults to oversampling=3 and rescore=1, and supports omitting k so the query limit is used as the effective k; this reduces unnecessary oversampling and improves behavior when using SELECT * with KNN on columnar tables.
  • 🆕 v16.2.0 PR #4088 Added searchd --quiet (-q) flag to suppress startup output (banner and precache messages), printing only errors; useful when starting and stopping searchd in a loop or from scripts.
  • 🆕 v16.0.1 Issue #3336 HTTP connections are now persistent by default when using HTTP/1.1: clients no longer need to send the Keep-Alive header explicitly, reducing random connection failures in API clients (e.g. PHP, Go). To close a connection, the client sends Connection: close. HTTP/1.0 still requires Connection: keep-alive for persistence.

Bug Fixes

  • 🪲 v17.5.1 Issue #3498 Fixed JOIN results returning empty or duplicated values when a column was both a string attribute and a stored field; the attribute value is now returned correctly.
  • 🪲 v17.4.2 Issue #2559 Fixed joins on JSON string attributes (e.g. j.s) returning no matches; they now work like joins on plain string attributes.
  • 🪲 v17.4.1 Fixed stored attributes not being evaluated in final when cutoff is set.
  • 🪲 v17.2.10 Issue #425 Auto table creation (auto schema) now runs for REPLACE INTO as well as INSERT INTO, so tables are created on demand when missing.
  • 🪲 v17.2.9 Issue #3226 Fixed incorrect GROUP BY results on columnar MVA with multiple GROUP BY columns by rejecting such queries with the same error as rowwise ("MVA values can't be used in multiple group-by").
  • 🪲 v17.2.7 Issue #1737 Fixed highlight() with html_strip_mode=strip corrupting content by decoding entities and altering tags; original entity form is now preserved in the highlighted output.
  • 🪲 v17.2.6 Issue #3203 Fixed ALTER TABLE REBUILD SECONDARY failing with failed to rename … .tmp.spjidx when the table had multiple disk chunks.
  • 🪲 v17.2.5 Issue #3226 Fixed incorrect GROUP BY results on columnar MVA with multiple GROUP BY columns by rejecting such queries with the same error as rowwise ("MVA values can't be used in multiple group-by").
  • 🪲 v17.2.4 Issue #4148 Fixed distributed queries returning stored fields from the wrong local index when agent tables contain duplicate document IDs; stored fields now follow index order and the first matching index is used for duplicates.
  • 🪲 v17.2.3 Issue #4176 Fixed table rename breaking tables that use external stopwords, wordforms, or exceptions: ATTACH TABLE now migrates these files to the new chunk-based format and updates disk chunk headers, so after ALTER TABLE RENAME the daemon no longer reports missing external files on restart.
  • 🪲 v17.2.2 Issue #1065 Added the expand_blended search option so that query tokenization applies the table's blend rules and expands blended variants (e.g. "well-being" → "well-being" | "wellbeing" | "well" "being"), allowing one query to match documents indexed with any of those forms.
  • 🪲 v17.1.3 Issue #1618 Bumped Buddy to 3.40.7. Support for using Manticore with HikariCP and JPA/MyBatis (Spring Boot) is provided via Manticore Buddy, which implements the required MySQL wire protocol behavior.
  • 🪲 v17.1.2 Issue #4128 Fixed MATCH with OR over the same phrase in different fields (e.g. (@name ="^New York$") | (@ascii_name ="^New York$")) returning matches from other fields; boolean simplification no longer drops field restrictions in that case.
  • 🪲 v17.1.1 Issue #4131 Fixed ALTER TABLE with table-level settings (e.g. html_strip='1') failing on tables with auto-embeddings with "knn_dims can't be used together with model_name"; serialization now omits knn_dims when model_name is set.
  • 🪲 v17.0.12 PR #4188 Fixed incorrect filter and filter tree evaluation in joined queries.
  • 🪲 v17.0.11 Issue #3661 Fixed intermittent crashes when using columnar MVA64 attributes (e.g. during merge/optimize or when selecting stored/columnar attributes), by correcting docstore and blob-pool handling of columnar MVA64 data.
  • 🪲 v17.0.10 Issue #3944 HIGHLIGHT and snippet generation now support REGEX in the query string, so REGEX matches are highlighted correctly when the same REGEX query is used in MATCH and HIGHLIGHT.
  • 🪲 v17.0.8 Issue #4159 Fixed HISTOGRAM() returning incorrect values (e.g. zero) when the first argument is a float expression such as price*100; histogram now uses float bucketing for float-like arguments so expression results are binned correctly.
  • 🪲 v17.0.5 Issue #4148 Fixed distributed queries returning the wrong stored field when an agent has multiple local indexes with duplicate document IDs; stored field is now taken from the matching index according to index order (first encounter wins), and the behavior is documented.
  • 🪲 v17.0.3 Issue #4115 HIGHLIGHT() and snippet generation now support the explicit OR operator (|) inside quoted expressions, using the same query transform as search.
  • 🪲 v17.0.1 Issue #4118 In plain mode, KNN attributes with model_name (auto-embeddings) no longer require an explicit dims property; the table is served using the model's dimensions.
  • 🪲 v16.3.4 PR #4121 Improved performance for queries that use stored columnar attributes (early-out and cached attribute dependency checks, reduced docstore reader overhead), and added DROP CACHE to clear query, docstore, skip, and secondary index caches.
  • 🪲 v16.3.3 Issue #3928 Fixed scroll pagination when ORDER BY included a string column: the scroll token is now applied correctly and returns the next page instead of repeating the first page.
  • 🪲 v16.3.2 Issue #4040 Fixed a segmentation fault during startup when stack measurement failed on some environments (e.g. AlmaLinux 10, Docker/VM): stack mocking now compares the frame delta to the remaining stack size instead of using a sum that could overflow or be wrong, so measurement no longer enters an invalid state and searchd no longer crashes after the “Something wrong measuring stack” warning.
  • 🪲 v16.3.1 Issue #4062 JOIN queries now consistently report an error when left-table attributes are prefixed in WHERE clause filters; previously in some cases (e.g. when the right table had no full-text field) the query ran without error and returned an empty result set.
  • 🪲 v16.2.6 Issue #1827 Backtick-quoted reserved keywords (e.g. order, year, facet) are now accepted as attribute and column names in CREATE TABLE and in expressions, so tables and queries can use reserved words as identifiers when escaped with backticks.
  • 🪲 v16.2.5 Issue #4107 Fixed SphinxQL parser so expressions ending with a backticked column name parse correctly instead of raising a syntax error.
  • 🪲 v16.2.4 Issue #4106 SHOW CREATE TABLE now outputs column names that are reserved or special (e.g. knn) in backticks, so that CREATE TABLE ... LIKE and re-executing the shown DDL work when the source table has such columns.
  • 🪲 v16.2.3 Issue #3661 Corrected docstore stored-attribute count during ALTER so the non-existent .spds rename no longer occurs, and preserved existing blob data in the blob pool when adding columnar attributes so "Blob offset out of bounds" and query/merge crashes no longer occur.
  • 🪲 v16.2.1 PR #4083 Fixed incorrect diacritic-related mappings in CJK, Japanese, and Korean charset tables so that base and voiced/diacritic character forms are normalized correctly for indexing and search.
  • 🪲 v16.1.4 PR #4084 Fixed a memory leak of replication receiver state on joiner nodes when no files needed to be sent; added a cluster API command to clean up recv state on joiners so it is freed when the donor finds all nodes already in sync.
  • 🪲 v16.1.3 Issue #615 Bumped Buddy to 3.40.5. Fixed invalid JSON errors in the KNN plugin when result rows contained bigint fields: string values were serialized unquoted (e.g. numeric-looking strings like 0000000000), producing invalid JSON; string attributes are now always serialized as quoted JSON strings.
  • 🪲 v16.1.2 PR #4077 Fixed JSON field output and parsing for large double values: result-set printing now uses a fallback format when the value exceeds the default buffer, and integer literals that overflow int64 are parsed as doubles instead of incorrect integers.
  • 🪲 v16.1.1 Issue #2628 Improved KNN index error recovery: when an RT index fails to load a KNN index, partially loaded HNSW data is now cleaned up so the daemon no longer crashes when deleting the disk chunk.
  • 🪲 v16.0.13 PR #4076 Added searchd.attr_autoconv_strict option (default 0) to control string-to-number conversion on INSERT/REPLACE into RT tables: when enabled, invalid values (empty string, non-numeric, trailing characters, overflow) return errors instead of silently converting to 0.
  • 🪲 v16.0.12 Issue #1751 Fixed must_not in JSON search so it behaves as logical NOT (returning all documents that do not match the inner query); also fixed SphinxQL WHERE NOT ... for filter expressions.
  • 🪲 v16.0.11 PR #2990 Updated Libstemmer to a version that includes the fix for the Greek stemmer (libstemmer_el) bug #204, preventing the server crash that could occur with certain Greek text when using morphology='libstemmer_el' (see issue #2888).
  • 🪲 v16.0.10 Stored attribute evaluation moved to the postlimit stage when possible, improving performance.
  • 🪲 v16.0.9 Issue #3905 Fixed an intermittent crash when index rotation coincided with SIGHUP (e.g. config reload) on the master node: with dynamic config, fork() duplicated sockets and epoll could later report an fd whose associated data was already freed. Sockets are now removed from the epoll interest list with EPOLL_CTL_DEL before being closed, preventing use-after-free in LazyNetEvents_c::EventTick().
  • 🪲 v16.0.8 Issue #3418 Updated the Buddy requirement to 3.40.4, which includes an improved format for processing-error logs: when a query fails (e.g. “unknown local table(s) 'index'”), Buddy now logs the failure reason from the daemon instead of only “Failed to handle query” with no context.
  • 🪲 v16.0.7 Issue #2281 Resolved inconsistent type names for multi-value attributes in percolate tables: mva and mva64 are now accepted as synonyms for multi and multi64 in CREATE TABLE, so either naming can be used when defining tables (e.g. CREATE TABLE t (id bigint, tags mva64, ...) type='pq'). Schema output (e.g. DESC table) continues to use the existing type names for compatibility.
  • 🪲 v16.0.4 PR #4047 Updated MCL version to 9.0.1. Fixed KNN float vector handling when block_size is 1 by disabling table compression in that case (compression is not used for block size 1).
  • 🪲 v16.0.3 Issue #4042 Fixed a crash of a rejoined node when ALTER CLUSTER ... ADD TABLE was run on another node after the joiner had restarted and re-joined.
  • 🪲 v15.1.5 Issue #4009 Fixed query cache still being used when secondary index was forced via hints; the cache is now disabled so forced SI is always honored.
  • 🪲 v15.1.4 Issue #2591 Fixed the NOTNEAR full-text operator so it correctly excludes matches when the right-hand term appears within the specified distance either before or after the left-hand term (symmetric/backward matching). Previously NOTNEAR only considered the right term when it appeared after the left term, so for example d NOTNEAR/3 a could incorrectly match a document containing "a b c d". NEAR now also returns an error when the distance is 0.
  • 🪲 v15.1.3 Issue #507 Bumped Buddy to 3.40.3. Fixed multi-query requests that use fuzzy search (OPTION fuzzy=1) followed by show meta on /cli and /sql?mode=raw.
  • 🪲 v15.1.1 Issue #4009 Fixed incorrect results with SecondaryIndex hint and query cache by making SI and query cache mutually exclusive per query and adding a warning when forced SI is ignored due to a cache hit.

Beta — feedback welcome: [email protected]