You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by ma...@apache.org on 2018/05/25 09:09:01 UTC
[4/7] james-project git commit: MAILBOX-337 Chuncks for
CassandraMessageIdMapper::delete
MAILBOX-337 Chuncks for CassandraMessageIdMapper::delete
Project: http://git-wip-us.apache.org/repos/asf/james-project/repo
Commit: http://git-wip-us.apache.org/repos/asf/james-project/commit/de07900d
Tree: http://git-wip-us.apache.org/repos/asf/james-project/tree/de07900d
Diff: http://git-wip-us.apache.org/repos/asf/james-project/diff/de07900d
Branch: refs/heads/master
Commit: de07900dea0cffa9ee2260654f5f8b561808fe23
Parents: fe3e39d
Author: benwa <bt...@linagora.com>
Authored: Wed May 16 12:50:13 2018 +0700
Committer: Matthieu Baechler <ma...@apache.org>
Committed: Fri May 25 11:07:39 2018 +0200
----------------------------------------------------------------------
.../cassandra/mail/CassandraMessageIdMapper.java | 14 ++++++++------
1 file changed, 8 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/james-project/blob/de07900d/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 52ab41f..c1ab8af 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
@@ -194,12 +194,14 @@ public class CassandraMessageIdMapper implements MessageIdMapper {
@Override
public void delete(Multimap<MessageId, MailboxId> ids) {
- FluentFutureStream.of(
- ids.asMap()
- .entrySet()
- .stream()
- .map(entry -> deleteAsFuture(entry.getKey(), entry.getValue())))
- .join();
+ ids.asMap()
+ .entrySet()
+ .stream()
+ .collect(JamesCollectors.chunker(cassandraConfiguration.getExpungeChunkSize()))
+ .forEach(chunk ->
+ FluentFutureStream.of(chunk.stream()
+ .map(entry -> deleteAsFuture(entry.getKey(), entry.getValue())))
+ .join());
}
private CompletableFuture<Void> retrieveAndDeleteIndices(CassandraMessageId messageId, Optional<CassandraId> mailboxId) {
---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org