diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2018-01-30 23:26:55 +0100 |
---|---|---|
committer | Henning Baldersheim <balder@yahoo-inc.com> | 2018-01-30 23:26:55 +0100 |
commit | 6f1c947bbbbc8f4b0c6b63d564ac2d9294cf13a8 (patch) | |
tree | dfdebb3580c95af2576d49f7cdd6624db478a2e7 /config-model/src/main | |
parent | 7923c31a91388782f6f6b169358a6cecdf63d2fc (diff) |
Use maxsize-percent for giving percentage.
Diffstat (limited to 'config-model/src/main')
3 files changed, 6 insertions, 0 deletions
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/DomSearchTuningBuilder.java b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/DomSearchTuningBuilder.java index 06f4e1cb2e9..d7d9517a98b 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/DomSearchTuningBuilder.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/DomSearchTuningBuilder.java @@ -220,6 +220,8 @@ public class DomSearchTuningBuilder extends VespaDomBuilder.DomConfigProducerBui for (Element e : XML.getChildren(spec)) { if (equals("maxsize", e)) { c.maxSize = asLong(e); + } else if (equals("maxsize-percent", e)) { + c.maxSizePercent = asDouble(e); } else if (equals("maxentries", e)) { parent.deployLogger().log(Level.WARNING, "Element 'maxentries is deprecated and ignored. Will only limit by size."); } else if (equals("initialentries", e)) { diff --git a/config-model/src/main/java/com/yahoo/vespa/model/search/Tuning.java b/config-model/src/main/java/com/yahoo/vespa/model/search/Tuning.java index 2c1c5cd83ce..f29c7ade816 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/search/Tuning.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/search/Tuning.java @@ -243,6 +243,7 @@ public class Tuning extends AbstractConfigProducer implements PartitionsConfig.P public static class Component { public Long maxSize = null; + public Double maxSizePercent = null; public Long initialEntries = null; public Compression compression = null; private final boolean outputInt; @@ -257,9 +258,11 @@ public class Tuning extends AbstractConfigProducer implements PartitionsConfig.P public void getConfig(ProtonConfig.Summary.Cache.Builder cache) { if (outputInt) { + if (maxSizePercent !=null) cache.maxbytes(-maxSizePercent.longValue()); if (maxSize!=null) cache.maxbytes(maxSize.intValue()); if (initialEntries!=null) cache.initialentries(initialEntries.intValue()); } else { + if (maxSizePercent !=null) cache.maxbytes(-maxSizePercent.longValue()); if (maxSize!=null) cache.maxbytes(maxSize); if (initialEntries!=null) cache.initialentries(initialEntries); } diff --git a/config-model/src/main/resources/schema/content.rnc b/config-model/src/main/resources/schema/content.rnc index ffbf1a929bc..a5c75bc0150 100644 --- a/config-model/src/main/resources/schema/content.rnc +++ b/config-model/src/main/resources/schema/content.rnc @@ -337,6 +337,7 @@ Tuning = element tuning { element store { element cache { element maxsize { xsd:nonNegativeInteger }? & + element maxsize-percent { xsd:double { minInclusive = "0.0" maxInclusive = "50.0" } }? & element initialentries { xsd:nonNegativeInteger }? & element maxentries { xsd:nonNegativeInteger }? & TuningCompression? |