/** * Returns the setting value (as size) associated with the setting key. Provided values can either be * absolute values (interpreted as a number of bytes), byte sizes (eg. 1mb) or percentage of the heap size * (eg. 12%). If it does not exists, parses the default value provided. */ public ByteSizeValue getAsMemory(String setting, String defaultValue) throws SettingsException { return MemorySizeValue.parseBytesSizeValueOrHeapRatio(get(setting, defaultValue), setting); }
/** * Creates a setting which specifies a memory size. This can either be * specified as an absolute bytes value or as a percentage of the heap * memory. * * @param key the key for the setting * @param defaultValue a function that supplies the default value for this setting * @param properties properties properties for this setting like scope, filtering... * @return the setting object */ public static Setting<ByteSizeValue> memorySizeSetting(String key, Function<Settings, String> defaultValue, Property... properties) { return new Setting<>(key, defaultValue, (s) -> MemorySizeValue.parseBytesSizeValueOrHeapRatio(s, key), properties); }
/** * Creates a setting which specifies a memory size. This can either be * specified as an absolute bytes value or as a percentage of the heap * memory. * * @param key the key for the setting * @param defaultPercentage the default value of this setting as a percentage of the heap memory * @param properties properties properties for this setting like scope, filtering... * @return the setting object */ public static Setting<ByteSizeValue> memorySizeSetting(String key, String defaultPercentage, Property... properties) { return new Setting<>(key, (s) -> defaultPercentage, (s) -> MemorySizeValue.parseBytesSizeValueOrHeapRatio(s, key), properties); }
/** * Returns the setting value (as size) associated with the setting key. Provided values can either be * absolute values (intepreted as a number of bytes), byte sizes (eg. 1mb) or percentage of the heap size * (eg. 12%). If it does not exists, parses the default value provided. */ public ByteSizeValue getAsMemory(String[] settings, String defaultValue) throws SettingsException { // NOTE: duplicated from get(String[]) so we can pass which setting name was actually used to parseBytesSizeValueOrHeapRatio for (String setting : settings) { String retVal = get(setting); if (retVal != null) { return MemorySizeValue.parseBytesSizeValueOrHeapRatio(retVal, setting); } } return MemorySizeValue.parseBytesSizeValueOrHeapRatio(defaultValue, settings[0]); }
/** * Returns the setting value (as size) associated with the setting key. Provided values can either be * absolute values (interpreted as a number of bytes), byte sizes (eg. 1mb) or percentage of the heap size * (eg. 12%). If it does not exists, parses the default value provided. */ public ByteSizeValue getAsMemory(String setting, String defaultValue) throws SettingsException { return MemorySizeValue.parseBytesSizeValueOrHeapRatio(get(setting, defaultValue), setting); }
/** * Returns the setting value (as size) associated with the setting key. Provided values can either be * absolute values (interpreted as a number of bytes), byte sizes (eg. 1mb) or percentage of the heap size * (eg. 12%). If it does not exists, parses the default value provided. */ public ByteSizeValue getAsMemory(String setting, String defaultValue) throws SettingsException { return MemorySizeValue.parseBytesSizeValueOrHeapRatio(get(setting, defaultValue), setting); }
@Override public String validate(String setting, String value, ClusterState clusterState) { try { parseBytesSizeValueOrHeapRatio(value, setting); } catch (ElasticsearchParseException ex) { return ex.getMessage(); } return null; } };
/** * Creates a setting which specifies a memory size. This can either be * specified as an absolute bytes value or as a percentage of the heap * memory. * * @param key the key for the setting * @param defaultValue a function that supplies the default value for this setting * @param properties properties properties for this setting like scope, filtering... * @return the setting object */ public static Setting<ByteSizeValue> memorySizeSetting(String key, Function<Settings, String> defaultValue, Property... properties) { return new Setting<>(key, defaultValue, (s) -> MemorySizeValue.parseBytesSizeValueOrHeapRatio(s, key), properties); }
/** * Creates a setting which specifies a memory size. This can either be * specified as an absolute bytes value or as a percentage of the heap * memory. * * @param key the key for the setting * @param defaultPercentage the default value of this setting as a percentage of the heap memory * @param properties properties properties for this setting like scope, filtering... * @return the setting object */ public static Setting<ByteSizeValue> memorySizeSetting(String key, String defaultPercentage, Property... properties) { return new Setting<>(key, (s) -> defaultPercentage, (s) -> MemorySizeValue.parseBytesSizeValueOrHeapRatio(s, key), properties); }
/** * Returns the setting value (as size) associated with the setting key. Provided values can either be * absolute values (interpreted as a number of bytes), byte sizes (eg. 1mb) or percentage of the heap size * (eg. 12%). If it does not exists, parses the default value provided. */ public ByteSizeValue getAsMemory(String setting, String defaultValue) throws SettingsException { return MemorySizeValue.parseBytesSizeValueOrHeapRatio(get(setting, defaultValue), setting); }
/** * Returns the setting value (as size) associated with the setting key. Provided values can either be * absolute values (intepreted as a number of bytes), byte sizes (eg. 1mb) or percentage of the heap size * (eg. 12%). If it does not exists, parses the default value provided. */ public ByteSizeValue getAsMemory(String setting, String defaultValue) throws SettingsException { return MemorySizeValue.parseBytesSizeValueOrHeapRatio(get(setting, defaultValue), setting); }
/** * Creates a setting which specifies a memory size. This can either be * specified as an absolute bytes value or as a percentage of the heap * memory. * * @param key the key for the setting * @param defaultPercentage the default value of this setting as a percentage of the heap memory * @param properties properties properties for this setting like scope, filtering... * @return the setting object */ public static Setting<ByteSizeValue> memorySizeSetting(String key, String defaultPercentage, Property... properties) { return new Setting<>(key, (s) -> defaultPercentage, (s) -> MemorySizeValue.parseBytesSizeValueOrHeapRatio(s, key), properties); }
/** * Creates a setting which specifies a memory size. This can either be * specified as an absolute bytes value or as a percentage of the heap * memory. * * @param key the key for the setting * @param defaultValue a function that supplies the default value for this setting * @param properties properties properties for this setting like scope, filtering... * @return the setting object */ public static Setting<ByteSizeValue> memorySizeSetting(String key, Function<Settings, String> defaultValue, Property... properties) { return new Setting<>(key, defaultValue, (s) -> MemorySizeValue.parseBytesSizeValueOrHeapRatio(s, key), properties); }
private void buildCache() { long sizeInBytes = MemorySizeValue.parseBytesSizeValueOrHeapRatio(size, INDICES_CACHE_QUERY_SIZE).bytes(); CacheBuilder<Key, Value> cacheBuilder = CacheBuilder.newBuilder() .maximumWeight(sizeInBytes).weigher(new QueryCacheWeigher()).removalListener(this); cacheBuilder.concurrencyLevel(concurrencyLevel); if (expire != null) { cacheBuilder.expireAfterAccess(expire.millis(), TimeUnit.MILLISECONDS); } cache = cacheBuilder.build(); }
sizeString = "10%"; final ByteSizeValue size = MemorySizeValue.parseBytesSizeValueOrHeapRatio(sizeString, INDICES_CACHE_QUERY_SIZE); final int count = settings.getAsInt(INDICES_CACHE_QUERY_COUNT, 1000); logger.debug("using [node] query cache with size [{}], actual_size [{}], max filter count [{}]",