Skip to content

Version 0.25.2

Compare
Choose a tag to compare
@jasonbosco jasonbosco released this 03 Jan 01:39

This release fixes some important bugs identified in v0.25.1 and also adds several enhancements to existing features. So we highly recommend upgrading to it.

Enhancements

  • New search parameter flag prioritize_num_matching_fields that allows you to configure whether the text match score should consider number of matching fields as a ranking criteria. This defaults to true.
  • Unload embedding model and free memory when no collections use a given model.
  • Allow the hybrid search / keyword search weight (alpha) to be configurable in vector_query.
  • Allow the direction of drop tokens to be configurable via drop_tokens_mode search parameter.
  • Handle zero width non-joiner character for Persian.
  • Ability to apply vector search only on the results of keyword search.
  • Prevent Typesense from loading an embedding model that exceeds available memory.
  • Improvements to range faceting: float value support, min/max ranges by leaving range param blank, support spaces in range label.
  • Support remote_embedding_timeout_ms and remote_embedding_num_tries for indexing.
  • Better isolation of operations across collections.
  • Parameterize compaction of store during collection drop via the compact_store parameter.
  • Server argument for configuring the periodic DB compaction interval via db-compaction-interval. Default: 604800 (seconds).
  • When using group_by, you can now control if documents with a null value in the grouped field should be placed in one group together, or should not be grouped using the group_missing_values parameter.

Bug fixes

  • Improve precision of HNSW index under frequent deletion and updates of vectors.
  • Fixed a regression in analytics aggregation for aggregation intervals configured to > 60 seconds.
  • Fixed a bug that prevented two embedding field names from sharing the same prefix.
  • Fixed reindexing of old documents with embeddings on collection schema update.
  • Fixed group by search that used facet range query.
  • Fixed edge cases in indexing and querying of optional nested fields.
  • Fixed hanging when PaLM API is down.
  • Fixed an edge case in deletion of values from infix search index.
  • Fixed hybrid search not considering hidden_hits search parameter.
  • Tweaked text embedding mean-pooling code to match the vectors generated by Python libraries.
  • Fixed truncation of certain float values in facet response.

Upgrade

Before upgrading your existing Typesense cluster to v0.25.2, please review the behavior changes above to prepare your application for the upgrade.

  • For self-hosted Typesense deployment, please refer to the important upgrade section of the 0.25.2 documentation. This particular version requires a specific set of upgrade steps especially for multi-node clusters.
  • For Typesense Cloud, visit your clusters page, click on the cluster you want to upgrade, click on "Cluster Configuration" on the right pane, then "Modify", pick 0.25.2 and schedule a time for your upgrade.

Downgrade

Once you upgrade to v0.25.x of Typesense Server the internal structure of the data directory becomes incompatible with older versions of Typesense (v0.24).

However, if you need to downgrade to v0.24, we've released a special version v0.24.2 that backports these data structure changes back to v0.24 while keeping other v0.24.1 features as is.

So v0.25.x can only be downgraded to v0.24.2.

But v0.25.2 can be downgraded to v0.25.1 and v0.25.0 if needed.

Documentation

View the complete API documentation for this release here: https://typesense.org/docs/0.25.2/api/