MAILBOX-335 Chuncks for CassandraMessageIdMapper::find

Project: http://git-wip-us.apache.org/repos/asf/james-project/repo
Commit: http://git-wip-us.apache.org/repos/asf/james-project/commit/6052de67
Tree: http://git-wip-us.apache.org/repos/asf/james-project/tree/6052de67
Diff: http://git-wip-us.apache.org/repos/asf/james-project/diff/6052de67

Branch: refs/heads/master
Commit: 6052de67601317f85e0ec5e282ec99fef42517c8
Parents: 92a1567
Author: benwa <btell...@linagora.com>
Authored: Wed May 16 12:47:04 2018 +0700
Committer: Matthieu Baechler <matth...@apache.org>
Committed: Tue May 22 10:04:13 2018 +0200

----------------------------------------------------------------------
 .../james/mailbox/cassandra/mail/CassandraMessageIdMapper.java  | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/james-project/blob/6052de67/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/CassandraMessageIdMapper.java
----------------------------------------------------------------------
diff --git 
a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/CassandraMessageIdMapper.java
 
b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/CassandraMessageIdMapper.java
index ef039c6..4db9185 100644
--- 
a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/CassandraMessageIdMapper.java
+++ 
b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/CassandraMessageIdMapper.java
@@ -50,6 +50,7 @@ import org.apache.james.mailbox.store.mail.ModSeqProvider;
 import org.apache.james.mailbox.store.mail.model.MailboxMessage;
 import org.apache.james.mailbox.store.mail.model.impl.SimpleMailboxMessage;
 import org.apache.james.util.FluentFutureStream;
+import org.apache.james.util.streams.JamesCollectors;
 import org.apache.james.util.streams.Limit;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -90,7 +91,9 @@ public class CassandraMessageIdMapper implements 
MessageIdMapper {
 
     @Override
     public List<MailboxMessage> find(Collection<MessageId> messageIds, 
FetchType fetchType) {
-        return findAsStream(messageIds, fetchType)
+        return messageIds.stream()
+            
.collect(JamesCollectors.chunker(cassandraConfiguration.getMessageReadChunkSize()))
+            .flatMap(chuckedIds -> findAsStream(messageIds, fetchType))
             .collect(Guavate.toImmutableList());
     }
 


---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org
For additional commands, e-mail: server-dev-h...@james.apache.org

Reply via email to