List of usage examples for org.apache.cassandra.db.compaction SizeTieredCompactionStrategyOptions validateOptions
public static Map<String, String> validateOptions(Map<String, String> options, Map<String, String> uncheckedOptions) throws ConfigurationException
From source file:com.jeffjirsa.cassandra.db.compaction.SizeTieredCompactionStrategy.java
License:Apache License
public static Map<String, String> validateOptions(Map<String, String> options) throws ConfigurationException { Map<String, String> uncheckedOptions = AbstractCompactionStrategy.validateOptions(options); uncheckedOptions = SizeTieredCompactionStrategyOptions.validateOptions(options, uncheckedOptions); uncheckedOptions.remove(CompactionParams.Option.MIN_THRESHOLD.toString()); uncheckedOptions.remove(CompactionParams.Option.MAX_THRESHOLD.toString()); return uncheckedOptions; }
From source file:com.jeffjirsa.cassandra.db.compaction.TimeWindowCompactionStrategyOptions.java
License:Apache License
public static Map<String, String> validateOptions(Map<String, String> options, Map<String, String> uncheckedOptions) throws ConfigurationException { String optionValue = options.get(TIMESTAMP_RESOLUTION_KEY); try {/*from w ww.ja v a 2s. c o m*/ if (optionValue != null) if (!validTimestampTimeUnits.contains(TimeUnit.valueOf(optionValue))) throw new ConfigurationException( String.format("%s is not valid for %s", optionValue, TIMESTAMP_RESOLUTION_KEY)); } catch (IllegalArgumentException e) { throw new ConfigurationException( String.format("%s is not valid for %s", optionValue, TIMESTAMP_RESOLUTION_KEY)); } optionValue = options.get(COMPACTION_WINDOW_UNIT_KEY); try { if (optionValue != null) if (!validWindowTimeUnits.contains(TimeUnit.valueOf(optionValue))) throw new ConfigurationException( String.format("%s is not valid for %s", optionValue, COMPACTION_WINDOW_UNIT_KEY)); } catch (IllegalArgumentException e) { throw new ConfigurationException( String.format("%s is not valid for %s", optionValue, COMPACTION_WINDOW_UNIT_KEY), e); } optionValue = options.get(COMPACTION_WINDOW_SIZE_KEY); try { int sstableWindowSize = optionValue == null ? DEFAULT_COMPACTION_WINDOW_SIZE : Integer.parseInt(optionValue); if (sstableWindowSize < 1) { throw new ConfigurationException(String.format("%s must be greater than 1", DEFAULT_COMPACTION_WINDOW_SIZE, sstableWindowSize)); } } catch (NumberFormatException e) { throw new ConfigurationException(String.format("%s is not a parsable int (base10) for %s", optionValue, DEFAULT_COMPACTION_WINDOW_SIZE), e); } optionValue = options.get(EXPIRED_SSTABLE_CHECK_FREQUENCY_SECONDS_KEY); try { long expiredCheckFrequency = optionValue == null ? DEFAULT_EXPIRED_SSTABLE_CHECK_FREQUENCY_SECONDS : Long.parseLong(optionValue); if (expiredCheckFrequency < 0) { throw new ConfigurationException(String.format("%s must not be negative, but was %d", EXPIRED_SSTABLE_CHECK_FREQUENCY_SECONDS_KEY, expiredCheckFrequency)); } } catch (NumberFormatException e) { throw new ConfigurationException(String.format("%s is not a parsable int (base10) for %s", optionValue, EXPIRED_SSTABLE_CHECK_FREQUENCY_SECONDS_KEY), e); } uncheckedOptions.remove(COMPACTION_WINDOW_SIZE_KEY); uncheckedOptions.remove(COMPACTION_WINDOW_UNIT_KEY); uncheckedOptions.remove(TIMESTAMP_RESOLUTION_KEY); uncheckedOptions.remove(EXPIRED_SSTABLE_CHECK_FREQUENCY_SECONDS_KEY); uncheckedOptions.remove(PERFORM_CLEANUP); uncheckedOptions = SizeTieredCompactionStrategyOptions.validateOptions(options, uncheckedOptions); return uncheckedOptions; }