You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by ma...@apache.org on 2022/12/23 14:03:54 UTC

[cassandra] branch cassandra-4.0 updated: Avoid ConcurrentModificationException in STCS/DTCS/TWCS.getSSTables

This is an automated email from the ASF dual-hosted git repository.

marcuse pushed a commit to branch cassandra-4.0
in repository https://gitbox.apache.org/repos/asf/cassandra.git


The following commit(s) were added to refs/heads/cassandra-4.0 by this push:
     new ee266d283e Avoid ConcurrentModificationException in STCS/DTCS/TWCS.getSSTables
ee266d283e is described below

commit ee266d283e740785817d7cb6749e6c135f4aacbb
Author: Marcus Eriksson <ma...@apache.org>
AuthorDate: Thu Oct 20 08:18:06 2022 +0200

    Avoid ConcurrentModificationException in STCS/DTCS/TWCS.getSSTables
    
    Patch by marcuse; reviewed by Aleksey Yeschenko for CASSANDRA-17977
---
 CHANGES.txt                                                             | 1 +
 .../apache/cassandra/db/compaction/DateTieredCompactionStrategy.java    | 2 +-
 .../apache/cassandra/db/compaction/SizeTieredCompactionStrategy.java    | 2 +-
 .../apache/cassandra/db/compaction/TimeWindowCompactionStrategy.java    | 2 +-
 4 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/CHANGES.txt b/CHANGES.txt
index f7dddd37b1..b9ab8981ec 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
 4.0.8
+ * Avoid ConcurrentModificationException in STCS/DTCS/TWCS.getSSTables (CASSANDRA-17977)
  * Restore internode custom tracing on 4.0's new messaging system (CASSANDRA-17981)
  * Harden parsing of boolean values in CQL in PropertyDefinitions (CASSANDRA-17878)
  * Fix error message about type hints (CASSANDRA-17915)
diff --git a/src/java/org/apache/cassandra/db/compaction/DateTieredCompactionStrategy.java b/src/java/org/apache/cassandra/db/compaction/DateTieredCompactionStrategy.java
index ab2b6ae328..a94bcfa59e 100644
--- a/src/java/org/apache/cassandra/db/compaction/DateTieredCompactionStrategy.java
+++ b/src/java/org/apache/cassandra/db/compaction/DateTieredCompactionStrategy.java
@@ -236,7 +236,7 @@ public class DateTieredCompactionStrategy extends AbstractCompactionStrategy
     }
 
     @Override
-    protected Set<SSTableReader> getSSTables()
+    protected synchronized Set<SSTableReader> getSSTables()
     {
         return ImmutableSet.copyOf(sstables);
     }
diff --git a/src/java/org/apache/cassandra/db/compaction/SizeTieredCompactionStrategy.java b/src/java/org/apache/cassandra/db/compaction/SizeTieredCompactionStrategy.java
index 8d1d8dac2e..7a63a1e8e5 100644
--- a/src/java/org/apache/cassandra/db/compaction/SizeTieredCompactionStrategy.java
+++ b/src/java/org/apache/cassandra/db/compaction/SizeTieredCompactionStrategy.java
@@ -336,7 +336,7 @@ public class SizeTieredCompactionStrategy extends AbstractCompactionStrategy
     }
 
     @Override
-    protected Set<SSTableReader> getSSTables()
+    protected synchronized Set<SSTableReader> getSSTables()
     {
         return ImmutableSet.copyOf(sstables);
     }
diff --git a/src/java/org/apache/cassandra/db/compaction/TimeWindowCompactionStrategy.java b/src/java/org/apache/cassandra/db/compaction/TimeWindowCompactionStrategy.java
index eb547db587..4b499ce478 100644
--- a/src/java/org/apache/cassandra/db/compaction/TimeWindowCompactionStrategy.java
+++ b/src/java/org/apache/cassandra/db/compaction/TimeWindowCompactionStrategy.java
@@ -196,7 +196,7 @@ public class TimeWindowCompactionStrategy extends AbstractCompactionStrategy
     }
 
     @Override
-    protected Set<SSTableReader> getSSTables()
+    protected synchronized Set<SSTableReader> getSSTables()
     {
         return ImmutableSet.copyOf(sstables);
     }


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cassandra.apache.org
For additional commands, e-mail: commits-help@cassandra.apache.org