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 2021/06/09 07:26:11 UTC
[james-project] 02/07: [PERFORMANCE] CassandraDeletedMessageDAO
should use CassandraAsyncExecutor::executeRows
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 814951c5fee19bf94b09f942482494fad3eda95b
Author: Benoit Tellier <bt...@linagora.com>
AuthorDate: Fri Jun 4 13:52:26 2021 +0700
[PERFORMANCE] CassandraDeletedMessageDAO should use CassandraAsyncExecutor::executeRows
---
.../cassandra/mail/CassandraDeletedMessageDAO.java | 23 ++++++++++------------
1 file changed, 10 insertions(+), 13 deletions(-)
diff --git a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/CassandraDeletedMessageDAO.java b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/CassandraDeletedMessageDAO.java
index 3e6d9db..69e301b 100644
--- a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/CassandraDeletedMessageDAO.java
+++ b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/CassandraDeletedMessageDAO.java
@@ -30,8 +30,6 @@ import static org.apache.james.mailbox.cassandra.table.CassandraDeletedMessageTa
import static org.apache.james.mailbox.cassandra.table.CassandraDeletedMessageTable.TABLE_NAME;
import static org.apache.james.mailbox.cassandra.table.CassandraDeletedMessageTable.UID;
-import java.util.function.Function;
-
import javax.inject.Inject;
import org.apache.james.backends.cassandra.utils.CassandraAsyncExecutor;
@@ -40,7 +38,7 @@ import org.apache.james.mailbox.cassandra.ids.CassandraId;
import org.apache.james.mailbox.model.MessageRange;
import com.datastax.driver.core.PreparedStatement;
-import com.datastax.driver.core.ResultSet;
+import com.datastax.driver.core.Row;
import com.datastax.driver.core.Session;
import reactor.core.publisher.Flux;
@@ -138,11 +136,10 @@ public class CassandraDeletedMessageDAO {
public Flux<MessageUid> retrieveDeletedMessage(CassandraId cassandraId, MessageRange range) {
return retrieveResultSetOfDeletedMessage(cassandraId, range)
- .flatMapIterable(Function.identity())
.map(row -> MessageUid.of(row.getLong(UID)));
}
- private Mono<ResultSet> retrieveResultSetOfDeletedMessage(CassandraId cassandraId, MessageRange range) {
+ private Flux<Row> retrieveResultSetOfDeletedMessage(CassandraId cassandraId, MessageRange range) {
switch (range.getType()) {
case ALL:
return retrieveAllDeleted(cassandraId);
@@ -157,29 +154,29 @@ public class CassandraDeletedMessageDAO {
throw new UnsupportedOperationException();
}
- private Mono<ResultSet> retrieveAllDeleted(CassandraId cassandraId) {
- return cassandraAsyncExecutor.execute(
+ private Flux<Row> retrieveAllDeleted(CassandraId cassandraId) {
+ return cassandraAsyncExecutor.executeRows(
selectAllUidStatement.bind()
.setUUID(MAILBOX_ID, cassandraId.asUuid()));
}
- private Mono<ResultSet> retrieveOneDeleted(CassandraId cassandraId, MessageUid uid) {
- return cassandraAsyncExecutor.execute(
+ private Flux<Row> retrieveOneDeleted(CassandraId cassandraId, MessageUid uid) {
+ return cassandraAsyncExecutor.executeRows(
selectOneUidStatement.bind()
.setUUID(MAILBOX_ID, cassandraId.asUuid())
.setLong(UID, uid.asLong()));
}
- private Mono<ResultSet> retrieveDeletedBetween(CassandraId cassandraId, MessageUid from, MessageUid to) {
- return cassandraAsyncExecutor.execute(
+ private Flux<Row> retrieveDeletedBetween(CassandraId cassandraId, MessageUid from, MessageUid to) {
+ return cassandraAsyncExecutor.executeRows(
selectBetweenUidStatement.bind()
.setUUID(MAILBOX_ID, cassandraId.asUuid())
.setLong(UID_FROM, from.asLong())
.setLong(UID_TO, to.asLong()));
}
- private Mono<ResultSet> retrieveDeletedAfter(CassandraId cassandraId, MessageUid from) {
- return cassandraAsyncExecutor.execute(
+ private Flux<Row> retrieveDeletedAfter(CassandraId cassandraId, MessageUid from) {
+ return cassandraAsyncExecutor.executeRows(
selectFromUidStatement.bind()
.setUUID(MAILBOX_ID, cassandraId.asUuid())
.setLong(UID_FROM, from.asLong()));
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@james.apache.org
For additional commands, e-mail: notifications-help@james.apache.org