You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@james.apache.org by rc...@apache.org on 2020/12/23 03:51:20 UTC
[james-project] 06/10: MAILBOX-403 Remove unneeded display sort
forFrom, To, Cc, Bcc fields
This is an automated email from the ASF dual-hosted git repository.
rcordier pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/james-project.git
commit 6acaaa1b88bb52b0a152266298742e75af760f7c
Author: Benoit Tellier <bt...@linagora.com>
AuthorDate: Tue Dec 22 09:16:54 2020 +0700
MAILBOX-403 Remove unneeded display sort forFrom, To, Cc, Bcc fields
Functionally unneeded as no protocol actually uses this feature,
we end up keeping sorting un-analyzed fields in ElasticSearch,
leading to a minor impact on index size and thus search
performance.
---
.../apache/james/mailbox/model/SearchQuery.java | 14 ----------
.../elasticsearch/MailboxMappingFactory.java | 24 ----------------
.../mailbox/elasticsearch/query/SortConverter.java | 6 ----
.../lucene/search/LuceneMessageSearchIndex.java | 10 -------
.../LuceneMailboxMessageSearchIndexTest.java | 32 ----------------------
.../search/LuceneMessageSearchIndexTest.java | 5 ----
.../store/search/SimpleMessageSearchIndexTest.java | 10 -------
.../search/comparator/CombinedComparator.java | 4 ---
.../search/AbstractMessageSearchIndexTest.java | 32 ----------------------
.../store/search/CombinedComparatorTest.java | 12 --------
10 files changed, 149 deletions(-)
diff --git a/mailbox/api/src/main/java/org/apache/james/mailbox/model/SearchQuery.java b/mailbox/api/src/main/java/org/apache/james/mailbox/model/SearchQuery.java
index c82f2d6..e3daeeb 100644
--- a/mailbox/api/src/main/java/org/apache/james/mailbox/model/SearchQuery.java
+++ b/mailbox/api/src/main/java/org/apache/james/mailbox/model/SearchQuery.java
@@ -139,20 +139,6 @@ public class SearchQuery implements Serializable {
SentDate,
/**
- * addr-name of the first "From" address
- *
- * This MUST BE converted to uppercase before doing the sort
- */
- DisplayFrom,
-
- /**
- * addr-name of the first "To" address
- *
- * This MUST BE converted to uppercase before doing the sort
- */
- DisplayTo,
-
- /**
* Uid of the message. This is the DEFAULT if no other is specified
*/
Uid,
diff --git a/mailbox/elasticsearch/src/main/java/org/apache/james/mailbox/elasticsearch/MailboxMappingFactory.java b/mailbox/elasticsearch/src/main/java/org/apache/james/mailbox/elasticsearch/MailboxMappingFactory.java
index 9d74266..af9e096 100644
--- a/mailbox/elasticsearch/src/main/java/org/apache/james/mailbox/elasticsearch/MailboxMappingFactory.java
+++ b/mailbox/elasticsearch/src/main/java/org/apache/james/mailbox/elasticsearch/MailboxMappingFactory.java
@@ -162,12 +162,6 @@ public class MailboxMappingFactory {
.startObject(EMailer.NAME)
.field(TYPE, TEXT)
.field(ANALYZER, KEEP_MAIL_AND_URL)
- .startObject(FIELDS)
- .startObject(RAW)
- .field(TYPE, KEYWORD)
- .field(NORMALIZER, CASE_INSENSITIVE)
- .endObject()
- .endObject()
.endObject()
.startObject(EMailer.ADDRESS)
.field(TYPE, TEXT)
@@ -212,12 +206,6 @@ public class MailboxMappingFactory {
.startObject(EMailer.NAME)
.field(TYPE, TEXT)
.field(ANALYZER, KEEP_MAIL_AND_URL)
- .startObject(FIELDS)
- .startObject(RAW)
- .field(TYPE, KEYWORD)
- .field(NORMALIZER, CASE_INSENSITIVE)
- .endObject()
- .endObject()
.endObject()
.startObject(EMailer.ADDRESS)
.field(TYPE, TEXT)
@@ -238,12 +226,6 @@ public class MailboxMappingFactory {
.startObject(EMailer.NAME)
.field(TYPE, TEXT)
.field(ANALYZER, KEEP_MAIL_AND_URL)
- .startObject(FIELDS)
- .startObject(RAW)
- .field(TYPE, KEYWORD)
- .field(NORMALIZER, CASE_INSENSITIVE)
- .endObject()
- .endObject()
.endObject()
.startObject(EMailer.ADDRESS)
.field(TYPE, TEXT)
@@ -264,12 +246,6 @@ public class MailboxMappingFactory {
.startObject(EMailer.NAME)
.field(TYPE, TEXT)
.field(ANALYZER, KEEP_MAIL_AND_URL)
- .startObject(FIELDS)
- .startObject(RAW)
- .field(TYPE, KEYWORD)
- .field(NORMALIZER, CASE_INSENSITIVE)
- .endObject()
- .endObject()
.endObject()
.startObject(EMailer.ADDRESS)
.field(TYPE, TEXT)
diff --git a/mailbox/elasticsearch/src/main/java/org/apache/james/mailbox/elasticsearch/query/SortConverter.java b/mailbox/elasticsearch/src/main/java/org/apache/james/mailbox/elasticsearch/query/SortConverter.java
index 0dcc02c..bc19b73 100644
--- a/mailbox/elasticsearch/src/main/java/org/apache/james/mailbox/elasticsearch/query/SortConverter.java
+++ b/mailbox/elasticsearch/src/main/java/org/apache/james/mailbox/elasticsearch/query/SortConverter.java
@@ -58,12 +58,6 @@ public class SortConverter {
return SortBuilders.fieldSort(JsonMessageConstants.SENT_DATE);
case Uid :
return SortBuilders.fieldSort(JsonMessageConstants.UID);
- case DisplayFrom:
- return SortBuilders.fieldSort(JsonMessageConstants.FROM + PATH_SEPARATOR + JsonMessageConstants.EMailer.NAME
- + PATH_SEPARATOR + NodeMappingFactory.RAW);
- case DisplayTo:
- return SortBuilders.fieldSort(JsonMessageConstants.TO + PATH_SEPARATOR + JsonMessageConstants.EMailer.NAME
- + PATH_SEPARATOR + NodeMappingFactory.RAW);
case Id:
return SortBuilders.fieldSort(JsonMessageConstants.MESSAGE_ID);
default:
diff --git a/mailbox/lucene/src/main/java/org/apache/james/mailbox/lucene/search/LuceneMessageSearchIndex.java b/mailbox/lucene/src/main/java/org/apache/james/mailbox/lucene/search/LuceneMessageSearchIndex.java
index 0304099..6d76bea 100644
--- a/mailbox/lucene/src/main/java/org/apache/james/mailbox/lucene/search/LuceneMessageSearchIndex.java
+++ b/mailbox/lucene/src/main/java/org/apache/james/mailbox/lucene/search/LuceneMessageSearchIndex.java
@@ -1036,16 +1036,6 @@ public class LuceneMessageSearchIndex extends ListeningMessageSearchIndex {
return UID_SORT_REVERSE;
}
return UID_SORT;
- case DisplayFrom:
- if (reverse) {
- return FIRST_FROM_MAILBOX_DISPLAY_SORT_REVERSE;
- }
- return FIRST_FROM_MAILBOX_DISPLAY_SORT;
- case DisplayTo:
- if (reverse) {
- return FIRST_TO_MAILBOX_DISPLAY_SORT_REVERSE;
- }
- return FIRST_TO_MAILBOX_DISPLAY_SORT;
default:
return null;
}
diff --git a/mailbox/lucene/src/test/java/org/apache/james/mailbox/lucene/search/LuceneMailboxMessageSearchIndexTest.java b/mailbox/lucene/src/test/java/org/apache/james/mailbox/lucene/search/LuceneMailboxMessageSearchIndexTest.java
index 32813af..5ef86c7 100644
--- a/mailbox/lucene/src/test/java/org/apache/james/mailbox/lucene/search/LuceneMailboxMessageSearchIndexTest.java
+++ b/mailbox/lucene/src/test/java/org/apache/james/mailbox/lucene/search/LuceneMailboxMessageSearchIndexTest.java
@@ -550,38 +550,6 @@ class LuceneMailboxMessageSearchIndexTest {
}
@Test
- void sortOnDisplayToShouldReturnWellOrderedResults() throws Exception {
- SearchQuery query = SearchQuery.allSortedWith(new Sort(SortClause.DisplayTo, Order.NATURAL));
-
- Stream<MessageUid> result = index.search(session, mailbox, query).toStream();
- assertThat(result).containsExactly(uid4, uid1, uid3);
- }
-
- @Test
- void reverseSortOnDisplayToShouldReturnWellOrderedResults() throws Exception {
- SearchQuery query = SearchQuery.allSortedWith(new Sort(SortClause.DisplayTo, Order.REVERSE));
-
- Stream<MessageUid> result = index.search(session, mailbox, query).toStream();
- assertThat(result).containsExactly(uid3, uid1, uid4);
- }
-
- @Test
- void sortOnDisplayFromShouldReturnWellOrderedResults() throws Exception {
- SearchQuery query = SearchQuery.allSortedWith(new Sort(SortClause.DisplayFrom, Order.NATURAL));
-
- Stream<MessageUid> result = index.search(session, mailbox, query).toStream();
- assertThat(result).containsExactly(uid3, uid4, uid1);
- }
-
- @Test
- void reverseSortOnDisplayFromShouldReturnWellOrderedResults() throws Exception {
- SearchQuery query = SearchQuery.allSortedWith(new Sort(SortClause.DisplayFrom, Order.REVERSE));
-
- Stream<MessageUid> result = index.search(session, mailbox, query).toStream();
- assertThat(result).containsExactly(uid1, uid4, uid3);
- }
-
- @Test
void sortOnArrivalDateShouldReturnWellOrderedResults() throws Exception {
SearchQuery query = SearchQuery.allSortedWith(new Sort(SortClause.Arrival, Order.NATURAL));
diff --git a/mailbox/lucene/src/test/java/org/apache/james/mailbox/lucene/search/LuceneMessageSearchIndexTest.java b/mailbox/lucene/src/test/java/org/apache/james/mailbox/lucene/search/LuceneMessageSearchIndexTest.java
index e31852e..d274a37 100644
--- a/mailbox/lucene/src/test/java/org/apache/james/mailbox/lucene/search/LuceneMessageSearchIndexTest.java
+++ b/mailbox/lucene/src/test/java/org/apache/james/mailbox/lucene/search/LuceneMessageSearchIndexTest.java
@@ -126,11 +126,6 @@ class LuceneMessageSearchIndexTest extends AbstractMessageSearchIndexTest {
@Disabled("JAMES-1799: ignoring failing test after generalizing ElasticSearch test suite to other mailbox search backends")
@Override
- public void sortOnDisplayFromShouldWork() {
- }
-
- @Disabled("JAMES-1799: ignoring failing test after generalizing ElasticSearch test suite to other mailbox search backends")
- @Override
public void mailsContainsShouldIncludeMailHavingAttachmentsMatchingTheRequest() {
}
diff --git a/mailbox/scanning-search/src/test/java/org/apache/james/mailbox/store/search/SimpleMessageSearchIndexTest.java b/mailbox/scanning-search/src/test/java/org/apache/james/mailbox/store/search/SimpleMessageSearchIndexTest.java
index 34f767c..d29a492 100644
--- a/mailbox/scanning-search/src/test/java/org/apache/james/mailbox/store/search/SimpleMessageSearchIndexTest.java
+++ b/mailbox/scanning-search/src/test/java/org/apache/james/mailbox/store/search/SimpleMessageSearchIndexTest.java
@@ -127,11 +127,6 @@ class SimpleMessageSearchIndexTest extends AbstractMessageSearchIndexTest {
@Disabled("JAMES-1799: ignoring failing test after generalizing ElasticSearch test suite to other mailbox search backends")
@Override
- public void sortOnDisplayToShouldWork() {
- }
-
- @Disabled("JAMES-1799: ignoring failing test after generalizing ElasticSearch test suite to other mailbox search backends")
- @Override
public void flagIsUnSetShouldReturnUidOfMessageNotMarkedAsRecentWhenUsedWithFlagRecent() {
}
@@ -157,11 +152,6 @@ class SimpleMessageSearchIndexTest extends AbstractMessageSearchIndexTest {
@Disabled("JAMES-1799: ignoring failing test after generalizing ElasticSearch test suite to other mailbox search backends")
@Override
- public void sortOnDisplayFromShouldWork() {
- }
-
- @Disabled("JAMES-1799: ignoring failing test after generalizing ElasticSearch test suite to other mailbox search backends")
- @Override
public void revertSortingShouldReturnElementsInAReversedOrder() {
}
diff --git a/mailbox/store/src/main/java/org/apache/james/mailbox/store/search/comparator/CombinedComparator.java b/mailbox/store/src/main/java/org/apache/james/mailbox/store/search/comparator/CombinedComparator.java
index cb44353..849f2e9 100644
--- a/mailbox/store/src/main/java/org/apache/james/mailbox/store/search/comparator/CombinedComparator.java
+++ b/mailbox/store/src/main/java/org/apache/james/mailbox/store/search/comparator/CombinedComparator.java
@@ -66,10 +66,6 @@ public class CombinedComparator implements Comparator<MailboxMessage> {
return MessageComparators.UID_COMPARATOR;
case SentDate:
return SentDateComparator.SENTDATE;
- case DisplayFrom:
- return HeaderDisplayComparator.FROM_COMPARATOR;
- case DisplayTo:
- return HeaderDisplayComparator.TO_COMPARATOR;
case Id:
return MessageComparators.MESSAGE_ID_COMPARATOR;
default:
diff --git a/mailbox/store/src/test/java/org/apache/james/mailbox/store/search/AbstractMessageSearchIndexTest.java b/mailbox/store/src/test/java/org/apache/james/mailbox/store/search/AbstractMessageSearchIndexTest.java
index 5cc5dba..30f1ac1 100644
--- a/mailbox/store/src/test/java/org/apache/james/mailbox/store/search/AbstractMessageSearchIndexTest.java
+++ b/mailbox/store/src/test/java/org/apache/james/mailbox/store/search/AbstractMessageSearchIndexTest.java
@@ -1268,38 +1268,6 @@ public abstract class AbstractMessageSearchIndexTest {
}
@Test
- protected void sortOnDisplayFromShouldWork() throws Exception {
- SearchQuery.UidRange[] numericRanges = {new SearchQuery.UidRange(m2.getUid(), m5.getUid())};
- SearchQuery searchQuery = SearchQuery.builder()
- .andCriteria(SearchQuery.uid(numericRanges))
- .sorts(new Sort(SortClause.DisplayFrom))
- .build();
-
- assertThat(messageSearchIndex.search(session, mailbox, searchQuery).toStream())
- .containsExactly(m4.getUid(), m3.getUid(), m5.getUid(), m2.getUid());
- // 2 : Tellier Benoit (JIRA)
- // 3 : efij
- // 4 : abcd
- // 5 : Eric Charles (JIRA)
- }
-
- @Test
- void sortOnDisplayToShouldWork() throws Exception {
- SearchQuery.UidRange[] numericRanges = {new SearchQuery.UidRange(m2.getUid(), m5.getUid())};
- SearchQuery searchQuery = SearchQuery.builder()
- .andCriteria(SearchQuery.uid(numericRanges))
- .sorts(new Sort(SortClause.DisplayTo))
- .build();
-
- assertThat(messageSearchIndex.search(session, mailbox, searchQuery).toStream())
- .containsExactly(m3.getUid(), m2.getUid(), m4.getUid(), m5.getUid());
- // 2 : abc
- // 3 : aaa
- // 4 : server
- // 5 : zzz
- }
-
- @Test
void sortOnSentDateShouldWork() throws Exception {
SearchQuery.UidRange[] numericRanges = {new SearchQuery.UidRange(m2.getUid(), m5.getUid())};
SearchQuery searchQuery = SearchQuery.builder()
diff --git a/mailbox/store/src/test/java/org/apache/james/mailbox/store/search/CombinedComparatorTest.java b/mailbox/store/src/test/java/org/apache/james/mailbox/store/search/CombinedComparatorTest.java
index 07f511f..79aade8 100644
--- a/mailbox/store/src/test/java/org/apache/james/mailbox/store/search/CombinedComparatorTest.java
+++ b/mailbox/store/src/test/java/org/apache/james/mailbox/store/search/CombinedComparatorTest.java
@@ -105,18 +105,6 @@ class CombinedComparatorTest {
}
@Test
- void createShouldConvertDisplayTo() {
- assertThat(CombinedComparator.create(ImmutableList.of(new Sort(SortClause.DisplayTo))).getComparators())
- .containsOnly(HeaderDisplayComparator.TO_COMPARATOR);
- }
-
- @Test
- void createShouldConvertDisplayFrom() {
- assertThat(CombinedComparator.create(ImmutableList.of(new Sort(SortClause.DisplayFrom))).getComparators())
- .containsOnly(HeaderDisplayComparator.FROM_COMPARATOR);
- }
-
- @Test
void createShouldConvertId() {
assertThat(CombinedComparator.create(ImmutableList.of(new Sort(SortClause.Id))).getComparators())
.containsOnly(MessageComparators.MESSAGE_ID_COMPARATOR);
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@james.apache.org
For additional commands, e-mail: notifications-help@james.apache.org