You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@james.apache.org by bt...@apache.org on 2025/09/18 07:20:46 UTC

(james-project) 01/03: JAMES-4057 Align subject search with other implementations

This is an automated email from the ASF dual-hosted git repository.

btellier pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/james-project.git

commit fbee6a7899d0b93716e4426065c7388636450321
Author: Benoit TELLIER <bt...@linagora.com>
AuthorDate: Tue Sep 16 20:44:50 2025 +0200

    JAMES-4057 Align subject search with other implementations
---
 .../james/mailbox/opensearch/query/DefaultCriterionConverter.java   | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/mailbox/opensearch/src/main/java/org/apache/james/mailbox/opensearch/query/DefaultCriterionConverter.java b/mailbox/opensearch/src/main/java/org/apache/james/mailbox/opensearch/query/DefaultCriterionConverter.java
index 61376312be..0c8f56f15f 100644
--- a/mailbox/opensearch/src/main/java/org/apache/james/mailbox/opensearch/query/DefaultCriterionConverter.java
+++ b/mailbox/opensearch/src/main/java/org/apache/james/mailbox/opensearch/query/DefaultCriterionConverter.java
@@ -47,7 +47,6 @@ import org.opensearch.client.opensearch._types.query_dsl.MatchQuery;
 import org.opensearch.client.opensearch._types.query_dsl.NestedQuery;
 import org.opensearch.client.opensearch._types.query_dsl.Operator;
 import org.opensearch.client.opensearch._types.query_dsl.Query;
-import org.opensearch.client.opensearch._types.query_dsl.QueryStringQuery;
 import org.opensearch.client.opensearch._types.query_dsl.RangeQuery;
 import org.opensearch.client.opensearch._types.query_dsl.SimpleQueryStringQuery;
 import org.opensearch.client.opensearch._types.query_dsl.TermQuery;
@@ -531,10 +530,11 @@ public class DefaultCriterionConverter implements CriterionConverter {
 
     protected Query convertSubject(SearchQuery.SubjectCriterion headerCriterion) {
         if (useQueryStringQuery && QUERY_STRING_CONTROL_CHAR.matchesAnyOf(headerCriterion.getSubject())) {
-            return new QueryStringQuery.Builder()
+            return new SimpleQueryStringQuery.Builder()
                 .fields(ImmutableList.of(JsonMessageConstants.SUBJECT))
                 .query(headerCriterion.getSubject())
-                .fuzziness(textFuzzinessSearchValue)
+                .defaultOperator(Operator.And)
+                .lenient(true)
                 .build().toQuery();
         } else {
             return new MatchQuery.Builder()


---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@james.apache.org
For additional commands, e-mail: notifications-help@james.apache.org