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 fa8dfd93196f0274818f2d9cc569034b16f2fcf7 Author: Gautier DI FOLCO <[email protected]> AuthorDate: Thu Mar 19 10:45:54 2020 +0100 JAMES-3121 Use SizeTieredCompationStrategy for Cassandra tables According to https://docs.datastax.com/en/dse/5.1/dse-dev/datastax_enterprise/config/configChooseCompactStrategy.html Migrating some tables to SizeTieredCompationStrategy will be more efficient when data is not to frequent upsert or immutable. --- .../mailbox/cassandra/modules/CassandraApplicableFlagsModule.java | 2 +- .../james/mailbox/cassandra/modules/CassandraAttachmentModule.java | 4 ++-- .../mailbox/cassandra/modules/CassandraDeletedMessageModule.java | 2 +- .../james/mailbox/cassandra/modules/CassandraFirstUnseenModule.java | 2 +- .../mailbox/cassandra/modules/CassandraMailboxCounterModule.java | 2 +- .../mailbox/cassandra/modules/CassandraMailboxRecentsModule.java | 2 +- .../james/mailbox/cassandra/modules/CassandraMessageModule.java | 4 ++-- .../apache/james/mailbox/cassandra/modules/CassandraModSeqModule.java | 2 +- .../apache/james/mailbox/cassandra/modules/CassandraUidModule.java | 2 +- 9 files changed, 11 insertions(+), 11 deletions(-) diff --git a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/modules/CassandraApplicableFlagsModule.java b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/modules/CassandraApplicableFlagsModule.java index afc7470..cbddba7 100644 --- a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/modules/CassandraApplicableFlagsModule.java +++ b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/modules/CassandraApplicableFlagsModule.java @@ -35,7 +35,7 @@ public interface CassandraApplicableFlagsModule { .comment("Holds flags being used on specific mailboxes. As system flags are implicit, this table " + "stores user flags.") .options(options -> options - .compactionOptions(SchemaBuilder.leveledStrategy()) + .compactionOptions(SchemaBuilder.sizedTieredStategy()) .caching(SchemaBuilder.KeyCaching.ALL, SchemaBuilder.rows(CassandraConstants.DEFAULT_CACHED_ROW_PER_PARTITION))) .statement(statement -> statement diff --git a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/modules/CassandraAttachmentModule.java b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/modules/CassandraAttachmentModule.java index 4699cae..bb2604e 100644 --- a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/modules/CassandraAttachmentModule.java +++ b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/modules/CassandraAttachmentModule.java @@ -46,7 +46,7 @@ public interface CassandraAttachmentModule { .comment("Holds attachment for fast attachment retrieval. Content of messages is stored" + "in `blobs` and `blobparts` tables.") .options(options -> options - .compactionOptions(SchemaBuilder.leveledStrategy()) + .compactionOptions(SchemaBuilder.sizedTieredStategy()) .caching(SchemaBuilder.KeyCaching.ALL, SchemaBuilder.rows(CassandraConstants.DEFAULT_CACHED_ROW_PER_PARTITION))) .statement(statement -> statement @@ -58,7 +58,7 @@ public interface CassandraAttachmentModule { .table(CassandraAttachmentMessageIdTable.TABLE_NAME) .comment("Holds ids of messages owning the attachment") .options(options -> options - .compactionOptions(SchemaBuilder.leveledStrategy()) + .compactionOptions(SchemaBuilder.sizedTieredStategy()) .caching(SchemaBuilder.KeyCaching.ALL, SchemaBuilder.rows(CassandraConstants.DEFAULT_CACHED_ROW_PER_PARTITION))) .statement(statement -> statement diff --git a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/modules/CassandraDeletedMessageModule.java b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/modules/CassandraDeletedMessageModule.java index 2bd334b..aa7647d 100644 --- a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/modules/CassandraDeletedMessageModule.java +++ b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/modules/CassandraDeletedMessageModule.java @@ -33,7 +33,7 @@ public interface CassandraDeletedMessageModule { CassandraModule MODULE = CassandraModule.table(TABLE_NAME) .comment("Denormalisation table. Allows to retrieve UID marked as DELETED in specific mailboxes.") .options(options -> options - .compactionOptions(SchemaBuilder.leveledStrategy()) + .compactionOptions(SchemaBuilder.sizedTieredStategy()) .caching(SchemaBuilder.KeyCaching.ALL, SchemaBuilder.rows(CassandraConstants.DEFAULT_CACHED_ROW_PER_PARTITION))) .statement(statement -> statement diff --git a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/modules/CassandraFirstUnseenModule.java b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/modules/CassandraFirstUnseenModule.java index ec4a844..c7713a0 100644 --- a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/modules/CassandraFirstUnseenModule.java +++ b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/modules/CassandraFirstUnseenModule.java @@ -30,7 +30,7 @@ public interface CassandraFirstUnseenModule { CassandraModule MODULE = CassandraModule.table(CassandraFirstUnseenTable.TABLE_NAME) .comment("Denormalisation table. Allow to quickly retrieve the first UNSEEN UID of a specific mailbox.") .options(options -> options - .compactionOptions(SchemaBuilder.leveledStrategy()) + .compactionOptions(SchemaBuilder.sizedTieredStategy()) .caching(SchemaBuilder.KeyCaching.ALL, SchemaBuilder.rows(CassandraConstants.DEFAULT_CACHED_ROW_PER_PARTITION)) .clusteringOrder(CassandraFirstUnseenTable.UID, SchemaBuilder.Direction.ASC)) diff --git a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/modules/CassandraMailboxCounterModule.java b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/modules/CassandraMailboxCounterModule.java index 74661c2..71dbff9 100644 --- a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/modules/CassandraMailboxCounterModule.java +++ b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/modules/CassandraMailboxCounterModule.java @@ -32,7 +32,7 @@ public interface CassandraMailboxCounterModule { CassandraModule MODULE = CassandraModule.table(CassandraMailboxCountersTable.TABLE_NAME) .comment("Holds messages count and unseen message count for each mailbox.") .options(options -> options - .compactionOptions(SchemaBuilder.leveledStrategy()) + .compactionOptions(SchemaBuilder.sizedTieredStategy()) .caching(SchemaBuilder.KeyCaching.ALL, SchemaBuilder.rows(CassandraConstants.DEFAULT_CACHED_ROW_PER_PARTITION))) .statement(statement -> statement diff --git a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/modules/CassandraMailboxRecentsModule.java b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/modules/CassandraMailboxRecentsModule.java index c81f4d0..16eb511 100644 --- a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/modules/CassandraMailboxRecentsModule.java +++ b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/modules/CassandraMailboxRecentsModule.java @@ -33,7 +33,7 @@ public interface CassandraMailboxRecentsModule { .comment("Denormalisation table. This table holds for each mailbox the messages marked as RECENT. This" + " is a SELECT optimisation.") .options(options -> options - .compactionOptions(SchemaBuilder.leveledStrategy()) + .compactionOptions(SchemaBuilder.sizedTieredStategy()) .caching(SchemaBuilder.KeyCaching.ALL, SchemaBuilder.rows(CassandraConstants.DEFAULT_CACHED_ROW_PER_PARTITION))) .statement(statement -> statement diff --git a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/modules/CassandraMessageModule.java b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/modules/CassandraMessageModule.java index f3193f5..280eee0 100644 --- a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/modules/CassandraMessageModule.java +++ b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/modules/CassandraMessageModule.java @@ -45,7 +45,7 @@ public interface CassandraMessageModule { .table(CassandraMessageIdTable.TABLE_NAME) .comment("Holds mailbox and flags for each message, lookup by mailbox ID + UID") .options(options -> options - .compactionOptions(SchemaBuilder.leveledStrategy()) + .compactionOptions(SchemaBuilder.sizedTieredStategy()) .caching(SchemaBuilder.KeyCaching.ALL, SchemaBuilder.rows(CACHED_MESSAGE_ID_ROWS))) .statement(statement -> statement @@ -64,7 +64,7 @@ public interface CassandraMessageModule { .table(MessageIdToImapUid.TABLE_NAME) .comment("Holds mailbox and flags for each message, lookup by message ID") .options(options -> options - .compactionOptions(SchemaBuilder.leveledStrategy()) + .compactionOptions(SchemaBuilder.sizedTieredStategy()) .caching(SchemaBuilder.KeyCaching.ALL, SchemaBuilder.rows(CACHED_IMAP_UID_ROWS))) .statement(statement -> statement diff --git a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/modules/CassandraModSeqModule.java b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/modules/CassandraModSeqModule.java index 459a03a..cf5c35b 100644 --- a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/modules/CassandraModSeqModule.java +++ b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/modules/CassandraModSeqModule.java @@ -32,7 +32,7 @@ public interface CassandraModSeqModule { CassandraModule MODULE = CassandraModule.table(CassandraMessageModseqTable.TABLE_NAME) .comment("Holds and is used to generate MODSEQ. A monotic counter is implemented on top of this table.") .options(options -> options - .compactionOptions(SchemaBuilder.leveledStrategy()) + .compactionOptions(SchemaBuilder.sizedTieredStategy()) .caching(SchemaBuilder.KeyCaching.ALL, SchemaBuilder.rows(CassandraConstants.DEFAULT_CACHED_ROW_PER_PARTITION))) .statement(statement -> statement diff --git a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/modules/CassandraUidModule.java b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/modules/CassandraUidModule.java index 614f10d..5df1451 100644 --- a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/modules/CassandraUidModule.java +++ b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/modules/CassandraUidModule.java @@ -32,7 +32,7 @@ public interface CassandraUidModule { CassandraModule MODULE = CassandraModule.table(CassandraMessageUidTable.TABLE_NAME) .comment("Holds and is used to generate UID. A monotic counter is implemented on top of this table.") .options(options -> options - .compactionOptions(SchemaBuilder.leveledStrategy()) + .compactionOptions(SchemaBuilder.sizedTieredStategy()) .caching(SchemaBuilder.KeyCaching.ALL, SchemaBuilder.rows(CassandraConstants.DEFAULT_CACHED_ROW_PER_PARTITION))) .statement(statement -> statement --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
