#6081: set IO throttling back to 20 MB/sec now that #6018 is fixed

This commit is contained in:
mikemccand 2014-05-12 14:42:26 -04:00
parent b6ae7fbadb
commit 00fcf4d560
5 changed files with 9 additions and 9 deletions

View file

@ -40,7 +40,7 @@ second. It can be set by setting `indices.store.throttle.type` to
`merge`, and setting `indices.store.throttle.max_bytes_per_sec` to `merge`, and setting `indices.store.throttle.max_bytes_per_sec` to
something like `5mb`. The node level settings can be changed dynamically something like `5mb`. The node level settings can be changed dynamically
using the cluster update settings API. The default is set using the cluster update settings API. The default is set
to `50mb` with type `merge`. to `20mb` with type `merge`.
If specific index level configuration is needed, regardless of the node If specific index level configuration is needed, regardless of the node
level settings, it can be set as well using the level settings, it can be set as well using the

View file

@ -59,7 +59,7 @@ The following settings can be set to manage the recovery policy:
defaults to `true`. defaults to `true`.
`indices.recovery.max_bytes_per_sec`:: `indices.recovery.max_bytes_per_sec`::
defaults to `50mb`. defaults to `20mb`.
[float] [float]
[[throttling]] [[throttling]]
@ -72,5 +72,5 @@ The following settings can be set to control the store throttling:
could be `merge` (default), `none` or `all`. See <<index-modules-store>>. could be `merge` (default), `none` or `all`. See <<index-modules-store>>.
`indices.store.throttle.max_bytes_per_sec`:: `indices.store.throttle.max_bytes_per_sec`::
defaults to `50mb`. defaults to `20mb`.

View file

@ -81,7 +81,7 @@ public class RecoverySettings extends AbstractComponent {
this.concurrentSmallFileStreams = componentSettings.getAsInt("concurrent_small_file_streams", settings.getAsInt("index.shard.recovery.concurrent_small_file_streams", 2)); this.concurrentSmallFileStreams = componentSettings.getAsInt("concurrent_small_file_streams", settings.getAsInt("index.shard.recovery.concurrent_small_file_streams", 2));
this.concurrentSmallFileStreamPool = EsExecutors.newScaling(0, concurrentSmallFileStreams, 60, TimeUnit.SECONDS, EsExecutors.daemonThreadFactory(settings, "[small_file_recovery_stream]")); this.concurrentSmallFileStreamPool = EsExecutors.newScaling(0, concurrentSmallFileStreams, 60, TimeUnit.SECONDS, EsExecutors.daemonThreadFactory(settings, "[small_file_recovery_stream]"));
this.maxBytesPerSec = componentSettings.getAsBytesSize("max_bytes_per_sec", componentSettings.getAsBytesSize("max_size_per_sec", new ByteSizeValue(50, ByteSizeUnit.MB))); this.maxBytesPerSec = componentSettings.getAsBytesSize("max_bytes_per_sec", componentSettings.getAsBytesSize("max_size_per_sec", new ByteSizeValue(20, ByteSizeUnit.MB)));
if (maxBytesPerSec.bytes() <= 0) { if (maxBytesPerSec.bytes() <= 0) {
rateLimiter = null; rateLimiter = null;
} else { } else {

View file

@ -95,7 +95,7 @@ public class IndicesStore extends AbstractComponent implements ClusterStateListe
// we limit with 20MB / sec by default with a default type set to merge sice 0.90.1 // we limit with 20MB / sec by default with a default type set to merge sice 0.90.1
this.rateLimitingType = componentSettings.get("throttle.type", StoreRateLimiting.Type.MERGE.name()); this.rateLimitingType = componentSettings.get("throttle.type", StoreRateLimiting.Type.MERGE.name());
rateLimiting.setType(rateLimitingType); rateLimiting.setType(rateLimitingType);
this.rateLimitingThrottle = componentSettings.getAsBytesSize("throttle.max_bytes_per_sec", new ByteSizeValue(50, ByteSizeUnit.MB)); this.rateLimitingThrottle = componentSettings.getAsBytesSize("throttle.max_bytes_per_sec", new ByteSizeValue(20, ByteSizeUnit.MB));
rateLimiting.setMaxRate(rateLimitingThrottle); rateLimiting.setMaxRate(rateLimitingThrottle);
logger.debug("using indices.store.throttle.type [{}], with index.store.throttle.max_bytes_per_sec [{}]", rateLimitingType, rateLimitingThrottle); logger.debug("using indices.store.throttle.type [{}], with index.store.throttle.max_bytes_per_sec [{}]", rateLimitingType, rateLimitingThrottle);

View file

@ -59,7 +59,7 @@ public class SimpleDistributorTests extends ElasticsearchIntegrationTest {
if (dataPaths.length > 1) { if (dataPaths.length > 1) {
assertThat(storeString.toLowerCase(Locale.ROOT), containsString("), rate_limited(niofs(" + dataPaths[1].getAbsolutePath().toLowerCase(Locale.ROOT))); assertThat(storeString.toLowerCase(Locale.ROOT), containsString("), rate_limited(niofs(" + dataPaths[1].getAbsolutePath().toLowerCase(Locale.ROOT)));
} }
assertThat(storeString, endsWith(", type=MERGE, rate=50.0)])")); assertThat(storeString, endsWith(", type=MERGE, rate=20.0)])"));
createIndexWithStoreType("test", "niofs", "random"); createIndexWithStoreType("test", "niofs", "random");
storeString = getStoreDirectory("test", 0).toString(); storeString = getStoreDirectory("test", 0).toString();
@ -69,7 +69,7 @@ public class SimpleDistributorTests extends ElasticsearchIntegrationTest {
if (dataPaths.length > 1) { if (dataPaths.length > 1) {
assertThat(storeString.toLowerCase(Locale.ROOT), containsString("), rate_limited(niofs(" + dataPaths[1].getAbsolutePath().toLowerCase(Locale.ROOT))); assertThat(storeString.toLowerCase(Locale.ROOT), containsString("), rate_limited(niofs(" + dataPaths[1].getAbsolutePath().toLowerCase(Locale.ROOT)));
} }
assertThat(storeString, endsWith(", type=MERGE, rate=50.0)])")); assertThat(storeString, endsWith(", type=MERGE, rate=20.0)])"));
createIndexWithStoreType("test", "mmapfs", "least_used"); createIndexWithStoreType("test", "mmapfs", "least_used");
storeString = getStoreDirectory("test", 0).toString(); storeString = getStoreDirectory("test", 0).toString();
@ -79,7 +79,7 @@ public class SimpleDistributorTests extends ElasticsearchIntegrationTest {
if (dataPaths.length > 1) { if (dataPaths.length > 1) {
assertThat(storeString.toLowerCase(Locale.ROOT), containsString("), rate_limited(mmapfs(" + dataPaths[1].getAbsolutePath().toLowerCase(Locale.ROOT))); assertThat(storeString.toLowerCase(Locale.ROOT), containsString("), rate_limited(mmapfs(" + dataPaths[1].getAbsolutePath().toLowerCase(Locale.ROOT)));
} }
assertThat(storeString, endsWith(", type=MERGE, rate=50.0)])")); assertThat(storeString, endsWith(", type=MERGE, rate=20.0)])"));
createIndexWithStoreType("test", "simplefs", "least_used"); createIndexWithStoreType("test", "simplefs", "least_used");
storeString = getStoreDirectory("test", 0).toString(); storeString = getStoreDirectory("test", 0).toString();
@ -89,7 +89,7 @@ public class SimpleDistributorTests extends ElasticsearchIntegrationTest {
if (dataPaths.length > 1) { if (dataPaths.length > 1) {
assertThat(storeString.toLowerCase(Locale.ROOT), containsString("), rate_limited(simplefs(" + dataPaths[1].getAbsolutePath().toLowerCase(Locale.ROOT))); assertThat(storeString.toLowerCase(Locale.ROOT), containsString("), rate_limited(simplefs(" + dataPaths[1].getAbsolutePath().toLowerCase(Locale.ROOT)));
} }
assertThat(storeString, endsWith(", type=MERGE, rate=50.0)])")); assertThat(storeString, endsWith(", type=MERGE, rate=20.0)])"));
createIndexWithStoreType("test", "memory", "least_used"); createIndexWithStoreType("test", "memory", "least_used");
storeString = getStoreDirectory("test", 0).toString(); storeString = getStoreDirectory("test", 0).toString();