meilisearch @ v1.39.0
integrity
- size
- 20.2 MiB
- downloaded
- last checked
release notes
What's Changed
✨ Enhancement
🔬 Cross-index document hydration
Add a new ForeignKeys setting allowing to hydrate documents with documents coming from other indexes.
📓 Note: This implementation doesn't support a remote sharding environment
foreignKeys experimental feature
A new experimental feature, foreignKeys, has been added to the /experimental-feature route that must be set to true to activate the hydration.
curl -X PATCH 'http://127.0.0.1:7700/experimental-features' \
-H 'Content-Type: application/json' \
--data-binary '{"foreignKeys": true}'
foreignKeys index setting
A new index setting, foreignKeys, has been added to the /indexes/{index_uid}/settings:
// new setting, an array of foreign keys that allows multiple foreign relationships between indexes
"foreignKeys": [
{
// the path in the JSON document containing foreign document ids
"fieldName": "actors",
// the UID of the foreign index containing the documents to fetch during hydration
"foreignIndexUid": "actors"
}
]
Example
With this new feature, a document shaped as follows:
{
"id": 1,
"title": "Forrest Gump",
// Document IDs in foreign index
"actors": [
1
]
}
Will be hydrated as follows in a search response:
{
"id": 1,
"title": "Forrest Gump",
"actors": [
{
"id": 1,
"name": "Tom",
"familyName": "Hanks",
"birthDate": "1956-07-09"
}
]
}
By @ManyTheFish in #6047
Disable proxy response buffering on Server-Sent Events (SSE)
Add X-Accel-Buffering: no on POST /chats/{workspace_uid}/chat/completions when the streaming mode is activated.
By @YoEight in #6228
🪲 Bug fixes
-
Fix a memory leak in the indexation pipeline by @Kerollmops in #6212
We fixed an important memory leak caused by an invalid use of bumpalo. If you've seen Meilisearch using more and more memory over time, this issue is no longer visible in the latest version. If you want to read more about the bumpalo-trap we felt in, here is a good summary. It looks like this leak was introduced in v1.12, so approximately a year ago...
-
Avoid losing tasks by applying deltas on the wtxn view by @Kerollmops in #6222
We addressed a small performance regression introduced in v1.38.1 that affected sending updates to the engine during task deletion. We've restored the task deletion performance to match v1.38.0 levels and ensured no race conditions occur while still allowing updates during deletion.
🔩 Miscellaneous
- Ignore flaky test on windows by @dureuill in #6226
- Fix small documentation mistakes by @ManyTheFish in #6205
- Improve messaging when field is missing in the settings indexing pipeline by @Kerollmops in #6213
Full Changelog: https://github.com/meilisearch/meilisearch/compare/v1.38.0...v1.39.0
download
curl -fL -o v1.39.0.zip https://ratatoskr.space/pkg/meilisearch/v1.39.0.zip
printf '%s %s\n' 'bc8bcccd860ab3ea1998d33c9a55b36a22e362aed95cfd548ff53c013a418307' 'v1.39.0.zip' | sha256sum -c -
$url = "https://ratatoskr.space/pkg/meilisearch/v1.39.0.zip"
$out = "v1.39.0.zip"
Invoke-WebRequest -Uri $url -OutFile $out
if ((Get-FileHash $out -Algorithm SHA256).Hash.ToLowerInvariant() -ne "bc8bcccd860ab3ea1998d33c9a55b36a22e362aed95cfd548ff53c013a418307") { throw "sha256 mismatch" }
curl -fL -o v1.39.0.tar.gz https://ratatoskr.space/pkg/meilisearch/v1.39.0.tar.gz
printf '%s %s\n' '502e8ac8938e23daa466795e2a0419f88accaa2cc4e2ee193eb65863de71830d' 'v1.39.0.tar.gz' | sha256sum -c -
$url = "https://ratatoskr.space/pkg/meilisearch/v1.39.0.tar.gz"
$out = "v1.39.0.tar.gz"
Invoke-WebRequest -Uri $url -OutFile $out
if ((Get-FileHash $out -Algorithm SHA256).Hash.ToLowerInvariant() -ne "502e8ac8938e23daa466795e2a0419f88accaa2cc4e2ee193eb65863de71830d") { throw "sha256 mismatch" }
download via yggdrasil mesh
curl -fL -o v1.39.0.zip http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/meilisearch/v1.39.0.zip
printf '%s %s\n' 'bc8bcccd860ab3ea1998d33c9a55b36a22e362aed95cfd548ff53c013a418307' 'v1.39.0.zip' | sha256sum -c -
$url = "http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/meilisearch/v1.39.0.zip"
$out = "v1.39.0.zip"
Invoke-WebRequest -Uri $url -OutFile $out
if ((Get-FileHash $out -Algorithm SHA256).Hash.ToLowerInvariant() -ne "bc8bcccd860ab3ea1998d33c9a55b36a22e362aed95cfd548ff53c013a418307") { throw "sha256 mismatch" }
curl -fL -o v1.39.0.tar.gz http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/meilisearch/v1.39.0.tar.gz
printf '%s %s\n' '502e8ac8938e23daa466795e2a0419f88accaa2cc4e2ee193eb65863de71830d' 'v1.39.0.tar.gz' | sha256sum -c -
$url = "http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/meilisearch/v1.39.0.tar.gz"
$out = "v1.39.0.tar.gz"
Invoke-WebRequest -Uri $url -OutFile $out
if ((Get-FileHash $out -Algorithm SHA256).Hash.ToLowerInvariant() -ne "502e8ac8938e23daa466795e2a0419f88accaa2cc4e2ee193eb65863de71830d") { throw "sha256 mismatch" }
| artifact | format | size | hashes |
|---|---|---|---|
| v1.39.0.zip | zip | 20.2 MiB |
blake3-24 2321acd2d9892ff0a54192378ea2ce4add9394f3aae58d2f
sha256 bc8bcccd860ab3ea1998d33c9a55b36a22e362aed95cfd548ff53c013a418307
sha1 99b5236a3a7d00fe019cd8e72834d10460243b62
|
| v1.39.0.tar.gz | tar.gz | 19.3 MiB |
blake3-24 88aa51089f06122cf017f77c6ebc88c0cae944cfb3e4a09e
sha256 502e8ac8938e23daa466795e2a0419f88accaa2cc4e2ee193eb65863de71830d
sha1 248861337d65341fc73dde498e6f90f8118812c4
|
install
http_archive(
name = "meilisearch",
urls = ["https://ratatoskr.space/pkg/meilisearch/v1.39.0.tar.gz"],
integrity = "sha256-UC6KyJOOI9qkZnleKgQZ+IrMqizE4u4ZPrZYY95xgw0=",
strip_prefix = "meilisearch-v1.39.0",
)
.url = "https://ratatoskr.space/pkg/meilisearch/v1.39.0.tar.gz",
install via yggdrasil mesh
http_archive(
name = "meilisearch",
urls = ["http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/meilisearch/v1.39.0.tar.gz"],
integrity = "sha256-UC6KyJOOI9qkZnleKgQZ+IrMqizE4u4ZPrZYY95xgw0=",
strip_prefix = "meilisearch-v1.39.0",
)
.url = "http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/meilisearch/v1.39.0.tar.gz",