Commit Graph

831 Commits

Author SHA1 Message Date
Clément Renault cca1dbd186
Merge bbb681361c into 1cd00f37c0 2025-03-12 14:28:17 +01:00
Kerollmops 0197dc87e0
Make sure to delete useless prefixes 2025-03-12 11:24:13 +01:00
Kerollmops bbb681361c
Prefer waiting for the task before getting the indexes 2025-03-12 10:28:07 +01:00
Kerollmops d4c39ca973
Prefer using WithoutTls for the auth env 2025-03-12 10:09:29 +01:00
meili-bors[bot] a2a86ef4e2
Merge #5254
5254: Granular Filterable attribute settings r=ManyTheFish a=ManyTheFish

# Related
**Issue:** https://github.com/meilisearch/meilisearch/issues/5163
**PRD:** https://meilisearch.notion.site/API-usage-Settings-to-opt-out-indexing-features-filterableAttributes-1764b06b651f80aba8bdf359b2df3ca8

# Summary
Change the `filterableAttributes` settings to let the user choose which facet feature he wants to activate or not.
Deactivating a feature will avoid some database computation in the indexing process and save time and disk size.

# Example

`PATCH /indexes/:index_uid/settings`

```json
{
  "filterableAttributes": [
    {
      "patterns": [
        "cattos",
        "doggos.age"
      ],
      "features": {
        "facetSearch": false,
        "filter": {
          "equality": true,
          "comparison": false
        }
      }
    }
  ]
}
```

# Impact on the codebase
- Settings API:
  - `/settings`
  - `/settings/filterable-attributes`
  - OpenAPI 
  - may impact the LocalizedAttributesRules due to the AttributePatterns factorization
- Database:
  - Filterable attributes format changed
  - Faceted field_ids are no more stored in the database
  - FieldIdsMap has no more unexisting fields
- Search:
  - Search using filters
  - Facet search
  - `Attributes` ranking rule
  - Distinct attribute
  - Facet distribution
- Settings reindexing:
  - searchable
  - facet
  - vector
  - geo
- Document indexing:
  - searchable
  - facet
  - vector
  - geo
- Dump import

# Note for the reviewers
The changes are huge and have been split in different commits with a dedicated explanation, I suggest reviewing the commit 1by1

Co-authored-by: ManyTheFish <many@meilisearch.com>
2025-03-12 09:00:43 +00:00
Kerollmops 36a481c932
Fix some test (invalid anyway) 2025-03-11 18:15:43 +01:00
ManyTheFish d500c7f625 Add default deserialize value 2025-03-11 17:55:49 +01:00
Kerollmops 9ee7e97c43
Avoid opening the Auth environment multiple times 2025-03-11 17:30:29 +01:00
ManyTheFish ea7e299663 Update has_changed_for_fields documentation 2025-03-11 16:48:55 +01:00
Kerollmops 76968179de
Fix the upgrade arroy calls 2025-03-11 15:33:43 +01:00
Kerollmops e91f18bdd0
Use a WithoutTls env 2025-03-11 15:33:43 +01:00
Kerollmops 7d2f26a6db
Move to the latest version of arroy 2025-03-11 15:33:43 +01:00
ManyTheFish a370b467fe Merge `MetadataBuilder::_new` into `MetadataBuilder::new` 2025-03-11 15:31:57 +01:00
ManyTheFish 8790880589 Fix clippy 2025-03-11 15:22:39 +01:00
ManyTheFish 7072fe9780 Fix typos in comments and messages 2025-03-11 15:22:00 +01:00
Kerollmops 39c58d8085
Dumpless upgrade from v1.13 to v1.14 2025-03-11 15:08:07 +01:00
Kerollmops c1fa3e81a0
Use the new arroy upgrade method to move from 0.4 to 0.5 2025-03-11 14:52:46 +01:00
Louis Dureuil fa8afc5cfd
Style change after review
Co-authored-by: Tamo <tamo@meilisearch.com>
2025-03-11 13:25:35 +01:00
ManyTheFish 6d52c6e711 Merge branch 'main' into granular-filterable-attributes 2025-03-11 10:05:58 +01:00
ManyTheFish dfb8411647 Revert "Remove filter pre-check"
This reverts commit b12ffd1356.
2025-03-11 09:48:30 +01:00
ManyTheFish 6269f757ff Revert document creation in tests 2025-03-10 18:35:10 +01:00
ManyTheFish 40c5f911fd Revert metadata creation when computing the facet-distribution 2025-03-10 17:05:41 +01:00
Kerollmops c63dae8267
WIP: Still need to introduce a Env::copy_to_path method 2025-03-10 16:33:35 +01:00
ManyTheFish abef655849 Revert metadata creation when computing facet search and distinct 2025-03-10 15:45:59 +01:00
Kerollmops b9da33fcbd
Specify WithoutTls everywhere 2025-03-10 15:41:53 +01:00
Kerollmops 26f0f1d638
Fix the error variants 2025-03-10 15:41:32 +01:00
Kerollmops 0a4dbea30d
Open Env without TLS 2025-03-10 15:41:11 +01:00
Kerollmops 1740940809
Bump heed and other dependencies 2025-03-10 15:40:23 +01:00
ManyTheFish b12ffd1356 Remove filter pre-check 2025-03-10 14:29:45 +01:00
ManyTheFish c9a4c6ed96 REvert metadata creation when computing filters at search time 2025-03-10 14:29:44 +01:00
Louis Dureuil aa32b719c7
Add tests about experimentalness of the feature and fix existing 2025-03-10 14:23:22 +01:00
Louis Dureuil 41d2b1e52b
Analytics 2025-03-10 14:23:07 +01:00
Louis Dureuil 54ee81bb09
Make composite embedders experimental 2025-03-10 14:22:47 +01:00
ManyTheFish 689e69d6d2 Take into account PR messages 2025-03-10 13:46:33 +01:00
meili-bors[bot] 9a282be0a2
Merge #5393
5393: Bring back changes from v1.13.3 into main r=irevoire a=Kerollmops



Co-authored-by: Kerollmops <clement@meilisearch.com>
Co-authored-by: Kerollmops <Kerollmops@users.noreply.github.com>
Co-authored-by: Strift <lau.cazanove@gmail.com>
2025-03-10 07:57:02 +00:00
ManyTheFish ed1dcbe0f7 Fix behavior change in the Attributes criterion 2025-03-06 14:18:25 +01:00
ManyTheFish 5ceddbda84 Add the max_weight of the weight map if it's lacking 2025-03-06 13:58:28 +01:00
ManyTheFish ca41ce3bbd Old indexer document addition now check if facet search is globally activated 2025-03-06 11:43:42 +01:00
ManyTheFish 8ec0c322ea Apply PR requests related to Refactor the FieldIdMapWithMetadata 2025-03-06 11:42:53 +01:00
ManyTheFish b88aa9cc76 Rely on FieldIdMapWithMetadata in facet search and filters 2025-03-05 18:22:12 +01:00
meili-bors[bot] 3fd86e8d76
Merge #5371
5371: Composite embedders r=irevoire a=dureuill

# Pull Request

## Related issue
Fixes #5343 

## What does this PR do?
- Implement [public usage](https://www.notion.so/meilisearch/Composite-embedder-usage-14a4b06b651f81859dc3df21e8cd02a0)
- Refactor the way we check if a parameter is mandatory/allowed/disallowed for a given source
- Take the "nesting context" into account for computer if a parameter is mandatory/allowed/disallowed
- Add tests checking all parameters with all sources, and made sure the results didn't change compared with v1.13

## Dumpless Upgrade

- This adds a new value for an existing parameter => compatible without change
- This adds new optional parameters => compatible without change

Co-authored-by: Louis Dureuil <louis@meilisearch.com>
2025-03-05 17:18:11 +00:00
ManyTheFish 67f7470c83 Apply PR requests related to Refactor search and facet-search 2025-03-05 18:17:42 +01:00
Louis Dureuil 4fab72cbea
Rename SettingsDiff::diff to SettingsDiff::apply_and_diff 2025-03-05 18:16:57 +01:00
Louis Dureuil afb4b9677f
Remove Embedder:embed 2025-03-05 18:16:57 +01:00
Louis Dureuil 73d2dbd60f
Error handling 2025-03-05 18:16:57 +01:00
Louis Dureuil 57a6beee30
Test composite embedders 2025-03-05 18:16:57 +01:00
Louis Dureuil b190b612a3
Add test on all parameters 2025-03-05 18:16:57 +01:00
Strift 111e77eff2
Bump mini-dashboard to v0.2.18 2025-03-05 15:24:53 +01:00
Kerollmops ba30747de3
Bump v1.13.2 to v1.13.3 in the TOMLs and snaps 2025-03-05 15:24:53 +01:00
Kerollmops c8c0951c43
Update the snapshots 2025-03-05 15:24:21 +01:00