diff --git a/index-scheduler/src/batch.rs b/index-scheduler/src/batch.rs index 94a8b3f07..5c904ad98 100644 --- a/index-scheduler/src/batch.rs +++ b/index-scheduler/src/batch.rs @@ -1345,9 +1345,6 @@ impl IndexScheduler { for (task, (_, settings)) in tasks.iter_mut().zip(settings) { let checked_settings = settings.clone().check(); - if checked_settings.proximity_precision.set().is_some() { - self.features.features().check_proximity_precision()?; - } task.details = Some(Details::SettingsUpdate { settings: Box::new(settings) }); apply_settings_to_builder(&checked_settings, &mut builder); diff --git a/index-scheduler/src/features.rs b/index-scheduler/src/features.rs index ae2823c30..1db27bcd5 100644 --- a/index-scheduler/src/features.rs +++ b/index-scheduler/src/features.rs @@ -81,19 +81,6 @@ impl RoFeatures { .into()) } } - - pub fn check_proximity_precision(&self) -> Result<()> { - if self.runtime.proximity_precision { - Ok(()) - } else { - Err(FeatureNotEnabledError { - disabled_action: "Using `proximityPrecision` index setting", - feature: "proximity precision", - issue_link: "https://github.com/orgs/meilisearch/discussions/710", - } - .into()) - } - } } impl FeatureData { diff --git a/meilisearch-types/src/features.rs b/meilisearch-types/src/features.rs index f0cbce340..33afe2d24 100644 --- a/meilisearch-types/src/features.rs +++ b/meilisearch-types/src/features.rs @@ -7,7 +7,6 @@ pub struct RuntimeTogglableFeatures { pub vector_store: bool, pub metrics: bool, pub export_puffin_reports: bool, - pub proximity_precision: bool, } #[derive(Default, Debug, Clone, Copy)] diff --git a/meilisearch/src/routes/features.rs b/meilisearch/src/routes/features.rs index 29e922eba..e7fd8de22 100644 --- a/meilisearch/src/routes/features.rs +++ b/meilisearch/src/routes/features.rs @@ -48,8 +48,6 @@ pub struct RuntimeTogglableFeatures { pub metrics: Option, #[deserr(default)] pub export_puffin_reports: Option, - #[deserr(default)] - pub proximity_precision: Option, } async fn patch_features( @@ -72,10 +70,6 @@ async fn patch_features( .0 .export_puffin_reports .unwrap_or(old_features.export_puffin_reports), - proximity_precision: new_features - .0 - .proximity_precision - .unwrap_or(old_features.proximity_precision), }; // explicitly destructure for analytics rather than using the `Serialize` implementation, because @@ -86,7 +80,6 @@ async fn patch_features( vector_store, metrics, export_puffin_reports, - proximity_precision, } = new_features; analytics.publish( @@ -96,7 +89,6 @@ async fn patch_features( "vector_store": vector_store, "metrics": metrics, "export_puffin_reports": export_puffin_reports, - "proximity_precision": proximity_precision, }), Some(&req), ); diff --git a/meilisearch/tests/dumps/mod.rs b/meilisearch/tests/dumps/mod.rs index 9e949436a..cb61d5e29 100644 --- a/meilisearch/tests/dumps/mod.rs +++ b/meilisearch/tests/dumps/mod.rs @@ -1848,8 +1848,7 @@ async fn import_dump_v6_containing_experimental_features() { "scoreDetails": false, "vectorStore": false, "metrics": false, - "exportPuffinReports": false, - "proximityPrecision": false + "exportPuffinReports": false } "###); diff --git a/meilisearch/tests/features/mod.rs b/meilisearch/tests/features/mod.rs index 812a5c6bb..abb006ac8 100644 --- a/meilisearch/tests/features/mod.rs +++ b/meilisearch/tests/features/mod.rs @@ -21,8 +21,7 @@ async fn experimental_features() { "scoreDetails": false, "vectorStore": false, "metrics": false, - "exportPuffinReports": false, - "proximityPrecision": false + "exportPuffinReports": false } "###); @@ -34,8 +33,7 @@ async fn experimental_features() { "scoreDetails": false, "vectorStore": true, "metrics": false, - "exportPuffinReports": false, - "proximityPrecision": false + "exportPuffinReports": false } "###); @@ -47,8 +45,7 @@ async fn experimental_features() { "scoreDetails": false, "vectorStore": true, "metrics": false, - "exportPuffinReports": false, - "proximityPrecision": false + "exportPuffinReports": false } "###); @@ -61,8 +58,7 @@ async fn experimental_features() { "scoreDetails": false, "vectorStore": true, "metrics": false, - "exportPuffinReports": false, - "proximityPrecision": false + "exportPuffinReports": false } "###); @@ -75,8 +71,7 @@ async fn experimental_features() { "scoreDetails": false, "vectorStore": true, "metrics": false, - "exportPuffinReports": false, - "proximityPrecision": false + "exportPuffinReports": false } "###); } @@ -96,8 +91,7 @@ async fn experimental_feature_metrics() { "scoreDetails": false, "vectorStore": false, "metrics": true, - "exportPuffinReports": false, - "proximityPrecision": false + "exportPuffinReports": false } "###); @@ -152,7 +146,7 @@ async fn errors() { meili_snap::snapshot!(code, @"400 Bad Request"); meili_snap::snapshot!(meili_snap::json_string!(response), @r###" { - "message": "Unknown field `NotAFeature`: expected one of `scoreDetails`, `vectorStore`, `metrics`, `exportPuffinReports`, `proximityPrecision`", + "message": "Unknown field `NotAFeature`: expected one of `scoreDetails`, `vectorStore`, `metrics`, `exportPuffinReports`", "code": "bad_request", "type": "invalid_request", "link": "https://docs.meilisearch.com/errors#bad_request" diff --git a/meilisearch/tests/settings/proximity_settings.rs b/meilisearch/tests/settings/proximity_settings.rs index d445adbfa..83f6c65b5 100644 --- a/meilisearch/tests/settings/proximity_settings.rs +++ b/meilisearch/tests/settings/proximity_settings.rs @@ -27,17 +27,6 @@ static DOCUMENTS: Lazy = Lazy::new(|| { #[actix_rt::test] async fn attribute_scale_search() { let server = Server::new().await; - let (response, code) = server.set_features(json!({"proximityPrecision": true})).await; - meili_snap::snapshot!(code, @"200 OK"); - meili_snap::snapshot!(meili_snap::json_string!(response), @r###" - { - "scoreDetails": false, - "vectorStore": false, - "metrics": false, - "exportPuffinReports": false, - "proximityPrecision": true - } - "###); let index = server.index("test"); index.add_documents(DOCUMENTS.clone(), None).await; @@ -111,17 +100,6 @@ async fn attribute_scale_search() { #[actix_rt::test] async fn attribute_scale_phrase_search() { let server = Server::new().await; - let (response, code) = server.set_features(json!({"proximityPrecision": true})).await; - meili_snap::snapshot!(code, @"200 OK"); - meili_snap::snapshot!(meili_snap::json_string!(response), @r###" - { - "scoreDetails": false, - "vectorStore": false, - "metrics": false, - "exportPuffinReports": false, - "proximityPrecision": true - } - "###); let index = server.index("test"); index.add_documents(DOCUMENTS.clone(), None).await; @@ -190,17 +168,6 @@ async fn attribute_scale_phrase_search() { #[actix_rt::test] async fn word_scale_set_and_reset() { let server = Server::new().await; - let (response, code) = server.set_features(json!({"proximityPrecision": true})).await; - meili_snap::snapshot!(code, @"200 OK"); - meili_snap::snapshot!(meili_snap::json_string!(response), @r###" - { - "scoreDetails": false, - "vectorStore": false, - "metrics": false, - "exportPuffinReports": false, - "proximityPrecision": true - } - "###); let index = server.index("test"); index.add_documents(DOCUMENTS.clone(), None).await; @@ -316,17 +283,6 @@ async fn word_scale_set_and_reset() { #[actix_rt::test] async fn attribute_scale_default_ranking_rules() { let server = Server::new().await; - let (response, code) = server.set_features(json!({"proximityPrecision": true})).await; - meili_snap::snapshot!(code, @"200 OK"); - meili_snap::snapshot!(meili_snap::json_string!(response), @r###" - { - "scoreDetails": false, - "vectorStore": false, - "metrics": false, - "exportPuffinReports": false, - "proximityPrecision": true - } - "###); let index = server.index("test"); index.add_documents(DOCUMENTS.clone(), None).await;