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 518e6b27a7fb4dc880ebd722e0c70454baaeb87d Author: Benoit Tellier <[email protected]> AuthorDate: Tue Oct 20 15:25:05 2020 +0700 JAMES-3430 Use CassandraMessageDAOV3 in mappers Fallback to CassandraMessageDAO --- .../CassandraMailboxSessionMapperFactory.java | 10 +++++--- .../mailbox/cassandra/DeleteMessageListener.java | 14 +++++++--- .../cassandra/mail/CassandraMessageDAOV3.java | 30 +++++++++++----------- .../cassandra/mail/CassandraMessageIdMapper.java | 9 ++++--- .../cassandra/mail/CassandraMessageMapper.java | 14 ++++++---- .../cassandra/CassandraMailboxManagerTest.java | 6 ++--- .../CassandraSubscriptionManagerTest.java | 3 +++ .../mail/CassandraMessageIdMapperTest.java | 2 +- .../cassandra/mail/CassandraMessageMapperTest.java | 4 +-- .../tools/indexer/CassandraReIndexerImplTest.java | 2 +- 10 files changed, 57 insertions(+), 37 deletions(-) diff --git a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/CassandraMailboxSessionMapperFactory.java b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/CassandraMailboxSessionMapperFactory.java index f0e5609..26a8a04 100644 --- a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/CassandraMailboxSessionMapperFactory.java +++ b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/CassandraMailboxSessionMapperFactory.java @@ -44,6 +44,7 @@ import org.apache.james.mailbox.cassandra.mail.CassandraMailboxPathV2DAO; import org.apache.james.mailbox.cassandra.mail.CassandraMailboxPathV3DAO; import org.apache.james.mailbox.cassandra.mail.CassandraMailboxRecentsDAO; import org.apache.james.mailbox.cassandra.mail.CassandraMessageDAO; +import org.apache.james.mailbox.cassandra.mail.CassandraMessageDAOV3; import org.apache.james.mailbox.cassandra.mail.CassandraMessageIdDAO; import org.apache.james.mailbox.cassandra.mail.CassandraMessageIdMapper; import org.apache.james.mailbox.cassandra.mail.CassandraMessageIdToImapUidDAO; @@ -75,6 +76,7 @@ public class CassandraMailboxSessionMapperFactory extends MailboxSessionMapperFa private final CassandraUidProvider uidProvider; private final CassandraModSeqProvider modSeqProvider; private final CassandraMessageDAO messageDAO; + private final CassandraMessageDAOV3 messageDAOV3; private final CassandraMessageIdDAO messageIdDAO; private final CassandraMessageIdToImapUidDAO imapUidDAO; private final CassandraMailboxCounterDAO mailboxCounterDAO; @@ -101,7 +103,7 @@ public class CassandraMailboxSessionMapperFactory extends MailboxSessionMapperFa @Inject public CassandraMailboxSessionMapperFactory(CassandraUidProvider uidProvider, CassandraModSeqProvider modSeqProvider, Session session, CassandraMessageDAO messageDAO, - CassandraMessageIdDAO messageIdDAO, CassandraMessageIdToImapUidDAO imapUidDAO, + CassandraMessageDAOV3 messageDAOV3, CassandraMessageIdDAO messageIdDAO, CassandraMessageIdToImapUidDAO imapUidDAO, CassandraMailboxCounterDAO mailboxCounterDAO, CassandraMailboxRecentsDAO mailboxRecentsDAO, CassandraMailboxDAO mailboxDAO, CassandraMailboxPathDAOImpl mailboxPathDAO, CassandraMailboxPathV2DAO mailboxPathV2DAO, CassandraMailboxPathV3DAO mailboxPathV3DAO, CassandraFirstUnseenDAO firstUnseenDAO, CassandraApplicableFlagDAO applicableFlagDAO, CassandraAttachmentDAOV2 attachmentDAOV2, CassandraDeletedMessageDAO deletedMessageDAO, @@ -115,6 +117,7 @@ public class CassandraMailboxSessionMapperFactory extends MailboxSessionMapperFa this.modSeqProvider = modSeqProvider; this.session = session; this.messageDAO = messageDAO; + this.messageDAOV3 = messageDAOV3; this.messageIdDAO = messageIdDAO; this.imapUidDAO = imapUidDAO; this.mailboxCounterDAO = mailboxCounterDAO; @@ -151,6 +154,7 @@ public class CassandraMailboxSessionMapperFactory extends MailboxSessionMapperFa modSeqProvider, createAttachmentMapper(mailboxSession), messageDAO, + messageDAOV3, messageIdDAO, imapUidDAO, mailboxCounterDAO, @@ -166,7 +170,7 @@ public class CassandraMailboxSessionMapperFactory extends MailboxSessionMapperFa public MessageIdMapper createMessageIdMapper(MailboxSession mailboxSession) { return new CassandraMessageIdMapper(getMailboxMapper(mailboxSession), mailboxDAO, createAttachmentMapper(mailboxSession), - imapUidDAO, messageIdDAO, messageDAO, indexTableHandler, modSeqProvider, + imapUidDAO, messageIdDAO, messageDAO, messageDAOV3, indexTableHandler, modSeqProvider, cassandraConfiguration); } @@ -211,7 +215,7 @@ public class CassandraMailboxSessionMapperFactory extends MailboxSessionMapperFa } public DeleteMessageListener deleteMessageListener() { - return new DeleteMessageListener(imapUidDAO, messageIdDAO, messageDAO, attachmentDAOV2, ownerDAO, + return new DeleteMessageListener(imapUidDAO, messageIdDAO, messageDAO, messageDAOV3, attachmentDAOV2, ownerDAO, attachmentMessageIdDAO, aclMapper, userMailboxRightsDAO, applicableFlagDAO, firstUnseenDAO, deletedMessageDAO, mailboxCounterDAO, mailboxRecentsDAO, blobStore); } diff --git a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/DeleteMessageListener.java b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/DeleteMessageListener.java index fa70727..fc37174 100644 --- a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/DeleteMessageListener.java +++ b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/DeleteMessageListener.java @@ -40,6 +40,7 @@ import org.apache.james.mailbox.cassandra.mail.CassandraFirstUnseenDAO; import org.apache.james.mailbox.cassandra.mail.CassandraMailboxCounterDAO; import org.apache.james.mailbox.cassandra.mail.CassandraMailboxRecentsDAO; import org.apache.james.mailbox.cassandra.mail.CassandraMessageDAO; +import org.apache.james.mailbox.cassandra.mail.CassandraMessageDAOV3; import org.apache.james.mailbox.cassandra.mail.CassandraMessageIdDAO; import org.apache.james.mailbox.cassandra.mail.CassandraMessageIdToImapUidDAO; import org.apache.james.mailbox.cassandra.mail.CassandraUserMailboxRightsDAO; @@ -79,6 +80,7 @@ public class DeleteMessageListener implements MailboxListener.GroupMailboxListen private final CassandraMessageIdToImapUidDAO imapUidDAO; private final CassandraMessageIdDAO messageIdDAO; private final CassandraMessageDAO messageDAO; + private final CassandraMessageDAOV3 messageDAOV3; private final CassandraAttachmentDAOV2 attachmentDAO; private final CassandraAttachmentOwnerDAO ownerDAO; private final CassandraAttachmentMessageIdDAO attachmentMessageIdDAO; @@ -93,13 +95,14 @@ public class DeleteMessageListener implements MailboxListener.GroupMailboxListen @Inject public DeleteMessageListener(CassandraMessageIdToImapUidDAO imapUidDAO, CassandraMessageIdDAO messageIdDAO, CassandraMessageDAO messageDAO, - CassandraAttachmentDAOV2 attachmentDAO, CassandraAttachmentOwnerDAO ownerDAO, + CassandraMessageDAOV3 messageDAOV3, CassandraAttachmentDAOV2 attachmentDAO, CassandraAttachmentOwnerDAO ownerDAO, CassandraAttachmentMessageIdDAO attachmentMessageIdDAO, CassandraACLMapper aclMapper, CassandraUserMailboxRightsDAO rightsDAO, CassandraApplicableFlagDAO applicableFlagDAO, CassandraFirstUnseenDAO firstUnseenDAO, CassandraDeletedMessageDAO deletedMessageDAO, CassandraMailboxCounterDAO counterDAO, CassandraMailboxRecentsDAO recentsDAO, BlobStore blobStore) { this.imapUidDAO = imapUidDAO; this.messageIdDAO = messageIdDAO; this.messageDAO = messageDAO; + this.messageDAOV3 = messageDAOV3; this.attachmentDAO = attachmentDAO; this.ownerDAO = ownerDAO; this.attachmentMessageIdDAO = attachmentMessageIdDAO; @@ -180,7 +183,8 @@ public class DeleteMessageListener implements MailboxListener.GroupMailboxListen .flatMap(message -> deleteUnreferencedAttachments(message).thenReturn(message)) .flatMap(this::deleteMessageBlobs) .flatMap(this::deleteAttachmentMessageIds) - .then(messageDAO.delete(messageId))); + .then(messageDAO.delete(messageId)) + .then(messageDAOV3.delete(messageId))); } private Mono<Void> handleMessageDeletionAsPartOfMailboxDeletion(CassandraMessageId messageId, CassandraId excludedId) { @@ -190,7 +194,8 @@ public class DeleteMessageListener implements MailboxListener.GroupMailboxListen .flatMap(message -> deleteUnreferencedAttachments(message).thenReturn(message)) .flatMap(this::deleteMessageBlobs) .flatMap(this::deleteAttachmentMessageIds) - .then(messageDAO.delete(messageId))); + .then(messageDAO.delete(messageId)) + .then(messageDAOV3.delete(messageId))); } private Mono<MessageRepresentation> deleteMessageBlobs(MessageRepresentation message) { @@ -202,7 +207,8 @@ public class DeleteMessageListener implements MailboxListener.GroupMailboxListen } private Mono<MessageRepresentation> readMessage(CassandraMessageId id) { - return messageDAO.retrieveMessage(id, MessageMapper.FetchType.Metadata); + return messageDAOV3.retrieveMessage(id, MessageMapper.FetchType.Metadata) + .switchIfEmpty(messageDAO.retrieveMessage(id, MessageMapper.FetchType.Metadata)); } private Mono<Void> deleteUnreferencedAttachments(MessageRepresentation message) { diff --git a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/CassandraMessageDAOV3.java b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/CassandraMessageDAOV3.java index dc1b1c0..2c6b5ae 100644 --- a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/CassandraMessageDAOV3.java +++ b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/CassandraMessageDAOV3.java @@ -70,6 +70,7 @@ import org.apache.james.mailbox.model.ComposedMessageIdWithMetaData; import org.apache.james.mailbox.model.MessageAttachmentMetadata; import org.apache.james.mailbox.store.mail.MessageMapper.FetchType; import org.apache.james.mailbox.store.mail.model.MailboxMessage; +import org.apache.james.mailbox.store.mail.model.impl.Properties; import org.apache.james.mailbox.store.mail.model.impl.PropertyBuilder; import com.datastax.driver.core.BoundStatement; @@ -174,7 +175,6 @@ public class CassandraMessageDAOV3 { private BoundStatement boundWriteStatement(MailboxMessage message, Tuple2<BlobId, BlobId> pair) { CassandraMessageId messageId = (CassandraMessageId) message.getMessageId(); - PropertyBuilder propertyBuilder = new PropertyBuilder(message.getProperties()); return insert.bind() .setUUID(MESSAGE_ID, messageId.get()) .setTimestamp(INTERNAL_DATE, message.getInternalDate()) @@ -184,17 +184,17 @@ public class CassandraMessageDAOV3 { .setString(BODY_CONTENT, pair.getT2().asString()) .setString(HEADER_CONTENT, pair.getT1().asString()) .setLong(TEXTUAL_LINE_COUNT, Optional.ofNullable(message.getTextualLineCount()).orElse(DEFAULT_LONG_VALUE)) - .setString(CONTENT_DESCRIPTION, propertyBuilder.getContentDescription()) - .setString(CONTENT_DISPOSITION_TYPE, propertyBuilder.getContentDispositionType()) - .setString(MEDIA_TYPE, propertyBuilder.getMediaType()) - .setString(SUB_TYPE, propertyBuilder.getSubType()) - .setString(CONTENT_ID, propertyBuilder.getContentID()) - .setString(CONTENT_MD5, propertyBuilder.getContentMD5()) - .setString(CONTENT_TRANSFER_ENCODING, propertyBuilder.getContentTransferEncoding()) - .setString(CONTENT_LOCATION, propertyBuilder.getContentLocation()) - .setList(CONTENT_LANGUAGE, propertyBuilder.getContentLanguage()) - .setMap(CONTENT_DISPOSITION_PARAMETERS, propertyBuilder.getContentDispositionParameters()) - .setMap(CONTENT_TYPE_PARAMETERS, propertyBuilder.getContentTypeParameters()) + .setString(CONTENT_DESCRIPTION, message.getProperties().getContentDescription()) + .setString(CONTENT_DISPOSITION_TYPE, message.getProperties().getContentDispositionType()) + .setString(MEDIA_TYPE, message.getProperties().getMediaType()) + .setString(SUB_TYPE, message.getProperties().getSubType()) + .setString(CONTENT_ID, message.getProperties().getContentID()) + .setString(CONTENT_MD5, message.getProperties().getContentMD5()) + .setString(CONTENT_TRANSFER_ENCODING, message.getProperties().getContentTransferEncoding()) + .setString(CONTENT_LOCATION, message.getProperties().getContentLocation()) + .setList(CONTENT_LANGUAGE, message.getProperties().getContentLanguage()) + .setMap(CONTENT_DISPOSITION_PARAMETERS, message.getProperties().getContentDispositionParameters()) + .setMap(CONTENT_TYPE_PARAMETERS, message.getProperties().getContentTypeParameters()) .setList(ATTACHMENTS, buildAttachmentUdt(message)); } @@ -251,13 +251,13 @@ public class CassandraMessageDAOV3 { row.getLong(FULL_CONTENT_OCTETS), row.getInt(BODY_START_OCTET), new SharedByteArrayInputStream(content), - getPropertyBuilder(row), + getProperties(row), getAttachments(row).collect(Guavate.toImmutableList()), headerId, bodyId)); } - private PropertyBuilder getPropertyBuilder(Row row) { + private Properties getProperties(Row row) { PropertyBuilder property = new PropertyBuilder(); property.setContentDescription(row.getString(CONTENT_DESCRIPTION)); property.setContentDispositionType(row.getString(CONTENT_DISPOSITION_TYPE)); @@ -271,7 +271,7 @@ public class CassandraMessageDAOV3 { property.setContentDispositionParameters(row.getMap(CONTENT_DISPOSITION_PARAMETERS, String.class, String.class)); property.setContentTypeParameters(row.getMap(CONTENT_TYPE_PARAMETERS, String.class, String.class)); property.setTextualLineCount(row.getLong(TEXTUAL_LINE_COUNT)); - return property; + return property.build(); } private Stream<MessageAttachmentRepresentation> getAttachments(Row row) { 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 7c09008..e9cc5eb 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 @@ -72,6 +72,7 @@ public class CassandraMessageIdMapper implements MessageIdMapper { private final CassandraMessageIdToImapUidDAO imapUidDAO; private final CassandraMessageIdDAO messageIdDAO; private final CassandraMessageDAO messageDAO; + private final CassandraMessageDAOV3 messageDAOV3; private final CassandraIndexTableHandler indexTableHandler; private final ModSeqProvider modSeqProvider; private final AttachmentLoader attachmentLoader; @@ -79,7 +80,7 @@ public class CassandraMessageIdMapper implements MessageIdMapper { public CassandraMessageIdMapper(MailboxMapper mailboxMapper, CassandraMailboxDAO mailboxDAO, CassandraAttachmentMapper attachmentMapper, CassandraMessageIdToImapUidDAO imapUidDAO, CassandraMessageIdDAO messageIdDAO, - CassandraMessageDAO messageDAO, CassandraIndexTableHandler indexTableHandler, + CassandraMessageDAO messageDAO, CassandraMessageDAOV3 messageDAOV3, CassandraIndexTableHandler indexTableHandler, ModSeqProvider modSeqProvider, CassandraConfiguration cassandraConfiguration) { this.mailboxMapper = mailboxMapper; @@ -87,6 +88,7 @@ public class CassandraMessageIdMapper implements MessageIdMapper { this.imapUidDAO = imapUidDAO; this.messageIdDAO = messageIdDAO; this.messageDAO = messageDAO; + this.messageDAOV3 = messageDAOV3; this.indexTableHandler = indexTableHandler; this.modSeqProvider = modSeqProvider; this.attachmentLoader = new AttachmentLoader(attachmentMapper); @@ -104,7 +106,8 @@ public class CassandraMessageIdMapper implements MessageIdMapper { public Flux<MailboxMessage> findReactive(Collection<MessageId> messageIds, FetchType fetchType) { return Flux.fromIterable(messageIds) .flatMap(messageId -> imapUidDAO.retrieve((CassandraMessageId) messageId, Optional.empty()), cassandraConfiguration.getMessageReadChunkSize()) - .flatMap(composedMessageId -> messageDAO.retrieveMessage(composedMessageId, fetchType) + .flatMap(composedMessageId -> messageDAOV3.retrieveMessage(composedMessageId, fetchType) + .switchIfEmpty(messageDAO.retrieveMessage(composedMessageId, fetchType)) .map(messageRepresentation -> Pair.of(composedMessageId, messageRepresentation)), cassandraConfiguration.getMessageReadChunkSize()) .flatMap(messageRepresentation -> attachmentLoader.addAttachmentToMessage(messageRepresentation, fetchType), cassandraConfiguration.getMessageReadChunkSize()) .groupBy(MailboxMessage::getMailboxId) @@ -142,7 +145,7 @@ public class CassandraMessageIdMapper implements MessageIdMapper { CassandraId mailboxId = (CassandraId) mailboxMessage.getMailboxId(); MailboxReactorUtils.block(mailboxMapper.findMailboxById(mailboxId) .switchIfEmpty(Mono.error(() -> new MailboxNotFoundException(mailboxId))) - .then(messageDAO.save(mailboxMessage)) + .then(messageDAOV3.save(mailboxMessage)) .thenEmpty(saveMessageMetadata(mailboxMessage, mailboxId))); } diff --git a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/CassandraMessageMapper.java b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/CassandraMessageMapper.java index df29d11..84841ac 100644 --- a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/CassandraMessageMapper.java +++ b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/CassandraMessageMapper.java @@ -78,6 +78,7 @@ public class CassandraMessageMapper implements MessageMapper { private final CassandraModSeqProvider modSeqProvider; private final CassandraUidProvider uidProvider; private final CassandraMessageDAO messageDAO; + private final CassandraMessageDAOV3 messageDAOV3; private final CassandraMessageIdDAO messageIdDAO; private final CassandraMessageIdToImapUidDAO imapUidDAO; private final CassandraMailboxCounterDAO mailboxCounterDAO; @@ -93,7 +94,7 @@ public class CassandraMessageMapper implements MessageMapper { public CassandraMessageMapper(CassandraUidProvider uidProvider, CassandraModSeqProvider modSeqProvider, CassandraAttachmentMapper attachmentMapper, - CassandraMessageDAO messageDAO, CassandraMessageIdDAO messageIdDAO, + CassandraMessageDAO messageDAO, CassandraMessageDAOV3 messageDAOV3, CassandraMessageIdDAO messageIdDAO, CassandraMessageIdToImapUidDAO imapUidDAO, CassandraMailboxCounterDAO mailboxCounterDAO, CassandraMailboxRecentsDAO mailboxRecentDAO, CassandraApplicableFlagDAO applicableFlagDAO, CassandraIndexTableHandler indexTableHandler, CassandraFirstUnseenDAO firstUnseenDAO, @@ -102,6 +103,7 @@ public class CassandraMessageMapper implements MessageMapper { this.uidProvider = uidProvider; this.modSeqProvider = modSeqProvider; this.messageDAO = messageDAO; + this.messageDAOV3 = messageDAOV3; this.messageIdDAO = messageIdDAO; this.imapUidDAO = imapUidDAO; this.mailboxCounterDAO = mailboxCounterDAO; @@ -229,7 +231,8 @@ public class CassandraMessageMapper implements MessageMapper { } private Mono<MailboxMessage> retrieveMessage(ComposedMessageIdWithMetaData messageId, FetchType fetchType) { - return messageDAO.retrieveMessage(messageId, fetchType) + return messageDAOV3.retrieveMessage(messageId, fetchType) + .switchIfEmpty(messageDAO.retrieveMessage(messageId, fetchType)) .flatMap(messageRepresentation -> attachmentLoader.addAttachmentToMessage(Pair.of(messageId, messageRepresentation), fetchType)); } @@ -274,8 +277,9 @@ public class CassandraMessageMapper implements MessageMapper { private Mono<SimpleMailboxMessage> expungeOne(ComposedMessageIdWithMetaData metaData) { return delete(metaData) - .then(messageDAO.retrieveMessage(metaData, FetchType.Metadata) - .map(pair -> pair.toMailboxMessage(metaData, ImmutableList.of()))); + .then(messageDAOV3.retrieveMessage(metaData, FetchType.Metadata) + .switchIfEmpty(messageDAO.retrieveMessage(metaData, FetchType.Metadata))) + .map(pair -> pair.toMailboxMessage(metaData, ImmutableList.of())); } @Override @@ -446,7 +450,7 @@ public class CassandraMessageMapper implements MessageMapper { private Mono<Void> save(Mailbox mailbox, MailboxMessage message) throws MailboxException { CassandraId mailboxId = (CassandraId) mailbox.getMailboxId(); - return messageDAO.save(message) + return messageDAOV3.save(message) .thenEmpty(insertIds(message, mailboxId)); } diff --git a/mailbox/cassandra/src/test/java/org/apache/james/mailbox/cassandra/CassandraMailboxManagerTest.java b/mailbox/cassandra/src/test/java/org/apache/james/mailbox/cassandra/CassandraMailboxManagerTest.java index 83e024e..5552bda 100644 --- a/mailbox/cassandra/src/test/java/org/apache/james/mailbox/cassandra/CassandraMailboxManagerTest.java +++ b/mailbox/cassandra/src/test/java/org/apache/james/mailbox/cassandra/CassandraMailboxManagerTest.java @@ -53,7 +53,7 @@ import org.apache.james.mailbox.cassandra.mail.CassandraDeletedMessageDAO; import org.apache.james.mailbox.cassandra.mail.CassandraFirstUnseenDAO; import org.apache.james.mailbox.cassandra.mail.CassandraMailboxCounterDAO; import org.apache.james.mailbox.cassandra.mail.CassandraMailboxRecentsDAO; -import org.apache.james.mailbox.cassandra.mail.CassandraMessageDAO; +import org.apache.james.mailbox.cassandra.mail.CassandraMessageDAOV3; import org.apache.james.mailbox.cassandra.mail.CassandraMessageIdDAO; import org.apache.james.mailbox.cassandra.mail.CassandraMessageIdToImapUidDAO; import org.apache.james.mailbox.cassandra.mail.CassandraUserMailboxRightsDAO; @@ -820,8 +820,8 @@ public class CassandraMailboxManagerTest extends MailboxManagerTest<CassandraMai new CassandraMessageId.Factory()); } - private CassandraMessageDAO messageDAO(CassandraCluster cassandraCluster) { - return new CassandraMessageDAO( + private CassandraMessageDAOV3 messageDAO(CassandraCluster cassandraCluster) { + return new CassandraMessageDAOV3( cassandraCluster.getConf(), cassandraCluster.getTypesProvider(), mock(BlobStore.class), diff --git a/mailbox/cassandra/src/test/java/org/apache/james/mailbox/cassandra/CassandraSubscriptionManagerTest.java b/mailbox/cassandra/src/test/java/org/apache/james/mailbox/cassandra/CassandraSubscriptionManagerTest.java index 9919308..d5dd72a 100644 --- a/mailbox/cassandra/src/test/java/org/apache/james/mailbox/cassandra/CassandraSubscriptionManagerTest.java +++ b/mailbox/cassandra/src/test/java/org/apache/james/mailbox/cassandra/CassandraSubscriptionManagerTest.java @@ -40,6 +40,7 @@ import org.apache.james.mailbox.cassandra.mail.CassandraMailboxPathV2DAO; import org.apache.james.mailbox.cassandra.mail.CassandraMailboxPathV3DAO; import org.apache.james.mailbox.cassandra.mail.CassandraMailboxRecentsDAO; import org.apache.james.mailbox.cassandra.mail.CassandraMessageDAO; +import org.apache.james.mailbox.cassandra.mail.CassandraMessageDAOV3; import org.apache.james.mailbox.cassandra.mail.CassandraMessageIdDAO; import org.apache.james.mailbox.cassandra.mail.CassandraMessageIdToImapUidDAO; import org.apache.james.mailbox.cassandra.mail.CassandraModSeqProvider; @@ -70,6 +71,7 @@ class CassandraSubscriptionManagerTest implements SubscriptionManagerContract { void setUp() { CassandraMessageIdToImapUidDAO imapUidDAO = null; CassandraMessageDAO messageDAO = null; + CassandraMessageDAOV3 messageDAOV3 = null; CassandraMessageIdDAO messageIdDAO = null; CassandraMailboxCounterDAO mailboxCounterDAO = null; CassandraMailboxRecentsDAO mailboxRecentsDAO = null; @@ -97,6 +99,7 @@ class CassandraSubscriptionManagerTest implements SubscriptionManagerContract { modSeqProvider, cassandraCluster.getCassandraCluster().getConf(), messageDAO, + messageDAOV3, messageIdDAO, imapUidDAO, mailboxCounterDAO, diff --git a/mailbox/cassandra/src/test/java/org/apache/james/mailbox/cassandra/mail/CassandraMessageIdMapperTest.java b/mailbox/cassandra/src/test/java/org/apache/james/mailbox/cassandra/mail/CassandraMessageIdMapperTest.java index fb69a32..d031a38 100644 --- a/mailbox/cassandra/src/test/java/org/apache/james/mailbox/cassandra/mail/CassandraMessageIdMapperTest.java +++ b/mailbox/cassandra/src/test/java/org/apache/james/mailbox/cassandra/mail/CassandraMessageIdMapperTest.java @@ -122,7 +122,7 @@ class CassandraMessageIdMapperTest extends MessageIdMapperTest { cassandra.getConf() .registerScenario(fail() .forever() - .whenQueryStartsWith("INSERT INTO messageV2 (messageId,internalDate,bodyStartOctet,fullContentOctets,bodyOctets,bodyContent,headerContent,properties,textualLineCount,attachments)")); + .whenQueryStartsWith("INSERT INTO messageV3")); try { message1.setUid(mapperProvider.generateMessageUid()); diff --git a/mailbox/cassandra/src/test/java/org/apache/james/mailbox/cassandra/mail/CassandraMessageMapperTest.java b/mailbox/cassandra/src/test/java/org/apache/james/mailbox/cassandra/mail/CassandraMessageMapperTest.java index 20de2e5..f7a5d7d 100644 --- a/mailbox/cassandra/src/test/java/org/apache/james/mailbox/cassandra/mail/CassandraMessageMapperTest.java +++ b/mailbox/cassandra/src/test/java/org/apache/james/mailbox/cassandra/mail/CassandraMessageMapperTest.java @@ -198,7 +198,7 @@ class CassandraMessageMapperTest extends MessageMapperTest { assertThat(statementRecorder.listExecutedStatements(Selector.preparedStatement( - "SELECT * FROM messageV2 WHERE messageId=:messageId;"))) + "SELECT * FROM messageV3 WHERE messageId=:messageId;"))) .hasSize(limit); } @@ -228,7 +228,7 @@ class CassandraMessageMapperTest extends MessageMapperTest { cassandra.getConf() .registerScenario(fail() .forever() - .whenQueryStartsWith("INSERT INTO messageV2 (messageId,internalDate,bodyStartOctet,fullContentOctets,bodyOctets,bodyContent,headerContent,properties,textualLineCount,attachments)")); + .whenQueryStartsWith("INSERT INTO messageV3")); try { messageMapper.add(benwaInboxMailbox, message1); diff --git a/mailbox/tools/indexer/src/test/java/org/apache/mailbox/tools/indexer/CassandraReIndexerImplTest.java b/mailbox/tools/indexer/src/test/java/org/apache/mailbox/tools/indexer/CassandraReIndexerImplTest.java index cbf263e..a2f0c08 100644 --- a/mailbox/tools/indexer/src/test/java/org/apache/mailbox/tools/indexer/CassandraReIndexerImplTest.java +++ b/mailbox/tools/indexer/src/test/java/org/apache/mailbox/tools/indexer/CassandraReIndexerImplTest.java @@ -318,7 +318,7 @@ public class CassandraReIndexerImplTest { cassandra.getConf() .registerScenario(fail() .forever() - .whenQueryStartsWith("SELECT * FROM messageV2 WHERE messageId=:messageId;")); + .whenQueryStartsWith("SELECT * FROM messageV3 WHERE messageId=:messageId;")); Task task = reIndexer.reIndex(ReIndexer.RunningOptions.DEFAULT); task.run(); --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
