Skip to content

Commit ae418d2

Browse files
committed
Avoid CompactionOptions parsing for every read by WithoutPurgeableTombstones
patch by Dmitry Konstantinov; reviewed by Francisco Guerrero for CASSANDRA-21294
1 parent 456590d commit ae418d2

3 files changed

Lines changed: 9 additions & 1 deletion

File tree

CHANGES.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
6.0-alpha2
2+
* Avoid CompactionOptions parsing for every read by WithoutPurgeableTombstones (CASSANDRA-21294)
23
* Ensure schema created before 2.1 without tableId in folder name can be loaded in SnapshotLoader (CASSANDRA-21246)
34
* Differentiate between legitimate cases where the first entry is the same as the last entry and empty bounds in SSTableCursorWriter#addIndexBlock() (CASSANDRA-21255)
45
* Introduce minimum_threshold for data resurrection startup check (CASSANDRA-21293)

src/java/org/apache/cassandra/db/compaction/CompactionStrategyManager.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1403,7 +1403,7 @@ public CompactionParams getCompactionParams()
14031403

14041404
public boolean onlyPurgeRepairedTombstones()
14051405
{
1406-
return Boolean.parseBoolean(params.options().get(AbstractCompactionStrategy.ONLY_PURGE_REPAIRED_TOMBSTONES));
1406+
return params.onlyPurgeRepairedTombstones();
14071407
}
14081408

14091409
public SSTableMultiWriter createSSTableMultiWriter(Descriptor descriptor,

src/java/org/apache/cassandra/schema/CompactionParams.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -112,13 +112,15 @@ public static Optional<TombstoneOption> forName(String name)
112112
private final ImmutableMap<String, String> options;
113113
private final boolean isEnabled;
114114
private final TombstoneOption tombstoneOption;
115+
private final boolean onlyPurgeRepairedTombstones;
115116

116117
private CompactionParams(Class<? extends AbstractCompactionStrategy> klass, Map<String, String> options, boolean isEnabled, TombstoneOption tombstoneOption)
117118
{
118119
this.klass = klass;
119120
this.options = ImmutableMap.copyOf(options);
120121
this.isEnabled = isEnabled;
121122
this.tombstoneOption = tombstoneOption;
123+
this.onlyPurgeRepairedTombstones = Boolean.parseBoolean(options.get(AbstractCompactionStrategy.ONLY_PURGE_REPAIRED_TOMBSTONES));
122124
}
123125

124126
public static CompactionParams create(Class<? extends AbstractCompactionStrategy> klass, Map<String, String> options)
@@ -279,6 +281,11 @@ public Map<String, String> options()
279281
return options;
280282
}
281283

284+
public boolean onlyPurgeRepairedTombstones()
285+
{
286+
return onlyPurgeRepairedTombstones;
287+
}
288+
282289
public boolean isEnabled()
283290
{
284291
return isEnabled;

0 commit comments

Comments
 (0)