AI-powered hybrid search is in closed beta. Join the waitlist for early access!

Go to homeMeilisearch's logo
Back to articles
23 Dec 2024

Meilisearch 1.12

Meilisearch 1.12 brings significant indexing speed improvement and introduces new APIs disable prefix search and facet search, and retrieve task batches.

Laurent Cazanove
Laurent CazanoveDX engineer & copywriter@StriftCodes
Meilisearch 1.12

We're excited to introduce Meilisearch v1.12. In this article, we'll cover the most significant changes. For a full list of updates, visit the changelog on GitHub.

Meilisearch 1.11 is available on Meilisearch Cloud, too—upgrade now!

New: facetSearch and prefixSearch index settings

Meilisearch 1.12 introduces new APIs to disable facet search and prefix search. When disabled, both these settings allow Meilisearch to skip building the required data structures to enable these features. As a result, the indexing process gets much faster.

Disabling these features can impact search result relevancy. Be sure to assess whether your product relies on them before proceeding.

Updating facet search index settings

Use the new API to update facet search index settings:

// disable facet search
client.index('my_index').setFacetSearch(false)
// enable facet search (default)
client.index('my_index').setFacetSearch(true)

Updating prefix search index settings

Use the new API to update prefix search index settings:

// disable prefix search
client.index('my_index').setPrefixSearch('disabled')
// enable prefix search (default)
client.index('my_index').setPrefixSearch('indexingTime')

New: batches API

Meilisearch 1.12 introduces a new batches API to retrieve data about batches. A batch is a set of tasks processed together by Meilisearch.

Here is an example batch object returned (as of Meilisearch 1.12.0):

{
  "uid": 160,
  "progress": {
    "steps": [
      {
        "currentStep": "processing tasks",
        "finished": 0,
        "total": 2
      },
      {
        "currentStep": "indexing",
        "finished": 2,
        "total": 3
      },
      {
        "currentStep": "extracting words",
        "finished": 3,
        "total": 13
      },
      {
        "currentStep": "document",
        "finished": 12300,
        "total": 19546
      }
    ],
    "percentage": 37.986263
  },
  "details": {
    "receivedDocuments": 19547,
    "indexedDocuments": null
  },
  "stats": {
    "totalNbTasks": 1,
    "status": {
      "processing": 1
    },
    "types": {
      "documentAdditionOrUpdate": 1
    },
    "indexUids": {
      "movies": 1
    }
  },
  "duration": null,
  "startedAt": "2024-12-12T09:44:34.124726733Z",
  "finishedAt": null
}

Please note that the get batches API accepts the same parameters as the get tasks API, allowing you to retrieve batches by filtering by task data.

For example, you can use GET /batches?uid=123 to retrieve batches containing tasks with a taskUid of 123.

Tasks API update

For better integration, the tasks API now includes a batchUid field in task objects. You can use this value to retrieve details about a specific batch using the API to get one batch.

Indexing speed improvements

Meilisearch 1.12 brings indexing speed improvements across the board for servers making use of multiple cores and having good I/O throughput.

This new release brings:

  • 2x faster raw document insertion
  • 4x faster incremental document updates in large databases
  • 1.5x faster embedding generation

Additionally, this release makes task cancellation faster. On less powerful machines, indexing time remains similar but may show slight improvements.

These advancements build upon the indexing customization and speed enhancements introduced in Meilisearch 1.6.

Contributors shout-out

We want to give a massive thank you to the external contributors who made this release possible. Thanks to @airycanon, @DerTimonius, @flevi29, @LukasKalbertodt, @PedroTurik, and @wuast94 for their contribution to Meilisearch, and @dqkqd and @tats-u for their work on charabia.

We also want to extend special thanks to our SDK maintainers working hard to make Meilisearch available across many languages and frameworks.


And that’s a wrap for v1.12! These release notes only highlight the most significant updates. For an exhaustive listing, read the changelog on GitHub.

Upgrade with ease using Meilisearch Cloud.

Open Meilisearch Cloud


For more information, subscribe to our monthly newsletter, check out the roadmap, or join our Product Discussions.

For anything else, join our developers community on Discord.

Meilisearch Q4 2024 release wrap-up

Meilisearch Q4 2024 release wrap-up

Meilisearch Q4 release includes faster search, more control over settings in UI and a new region.

Maya Shin
Maya Shin27 Nov 2024
Meilisearch 1.11

Meilisearch 1.11

Meilisearch 1.11 advances AI-powered search toward stabilization with key improvements, including binary quantization. This release also enhances federated search functionality based on user feedback.

Meilisearch 1.10

Meilisearch 1.10

Meilisearch 1.10 introduces federated search and locale settings, and paves the way for AI-powered search stabilization.

Laurent Cazanove
Laurent Cazanove27 Aug 2024