summaryrefslogtreecommitdiffstats
path: root/config-model
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2021-08-12 16:08:42 +0200
committerGitHub <noreply@github.com>2021-08-12 16:08:42 +0200
commit07446ba73633a2cf392b844f5bb02aac032fb397 (patch)
treeab4a6f62ee25b3fe4148c91fe528dae72dc79277 /config-model
parent906f75648e6f0a596c791d71812a6636884adf13 (diff)
parent3efc9cfdde773167f3a8385dc7ccf9b7235d3acb (diff)
Merge pull request #18723 from vespa-engine/balder/add-swapable-attribute-option
Balder/add swapable attribute option
Diffstat (limited to 'config-model')
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/derived/AttributeFields.java3
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/document/Attribute.java32
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/fieldoperation/AttributeOperation.java9
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/application/validation/change/search/AttributeChangeValidator.java1
-rw-r--r--config-model/src/main/javacc/SDParser.jj15
-rw-r--r--config-model/src/test/derived/advanced/attributes.cfg1
-rw-r--r--config-model/src/test/derived/array_of_struct_attribute/attributes.cfg2
-rw-r--r--config-model/src/test/derived/attributeprefetch/attributes.cfg18
-rw-r--r--config-model/src/test/derived/attributes/attributes.cfg18
-rw-r--r--config-model/src/test/derived/complex/attributes.cfg9
-rw-r--r--config-model/src/test/derived/hnsw_index/attributes.cfg2
-rw-r--r--config-model/src/test/derived/imported_fields_inherited_reference/attributes.cfg4
-rw-r--r--config-model/src/test/derived/imported_position_field/attributes.cfg2
-rw-r--r--config-model/src/test/derived/imported_struct_fields/attributes.cfg8
-rw-r--r--config-model/src/test/derived/importedfields/attributes.cfg8
-rw-r--r--config-model/src/test/derived/inheritance/attributes.cfg3
-rw-r--r--config-model/src/test/derived/inheritfromparent/attributes.cfg1
-rw-r--r--config-model/src/test/derived/map_attribute/attributes.cfg3
-rw-r--r--config-model/src/test/derived/map_of_struct_attribute/attributes.cfg5
-rw-r--r--config-model/src/test/derived/music/attributes.cfg11
-rw-r--r--config-model/src/test/derived/newrank/attributes.cfg10
-rw-r--r--config-model/src/test/derived/predicate_attribute/attributes.cfg1
-rw-r--r--config-model/src/test/derived/prefixexactattribute/attributes.cfg2
-rw-r--r--config-model/src/test/derived/reference_fields/attributes.cfg3
-rw-r--r--config-model/src/test/derived/sorting/attributes.cfg3
-rw-r--r--config-model/src/test/derived/tensor/attributes.cfg5
-rw-r--r--config-model/src/test/derived/types/attributes.cfg13
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/AttributeSettingsTestCase.java39
28 files changed, 206 insertions, 25 deletions
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/derived/AttributeFields.java b/config-model/src/main/java/com/yahoo/searchdefinition/derived/AttributeFields.java
index 125b0cf2763..2ec725b46fc 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/derived/AttributeFields.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/derived/AttributeFields.java
@@ -222,6 +222,9 @@ public class AttributeFields extends Derived implements AttributesConfig.Produce
if (attribute.isHuge()) {
aaB.huge(true);
}
+ if (attribute.isPaged()) {
+ aaB.paged(true);
+ }
if (attribute.getSorting().isDescending()) {
aaB.sortascending(false);
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/document/Attribute.java b/config-model/src/main/java/com/yahoo/searchdefinition/document/Attribute.java
index 0cf7a031dbc..d0b8719a1ea 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/document/Attribute.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/document/Attribute.java
@@ -57,6 +57,7 @@ public final class Attribute implements Cloneable, Serializable {
private boolean fastAccess = false;
private boolean huge = false;
private boolean mutable = false;
+ private boolean paged = false;
private int arity = BooleanIndexDefinition.DEFAULT_ARITY;
private long lowerBound = BooleanIndexDefinition.DEFAULT_LOWER_BOUND;
private long upperBound = BooleanIndexDefinition.DEFAULT_UPPER_BOUND;
@@ -187,21 +188,22 @@ public final class Attribute implements Cloneable, Serializable {
/** Returns the prefetch value of this, null if the default is used. */
public Boolean getPrefetchValue() { return prefetch; }
- public boolean isRemoveIfZero() { return removeIfZero; }
- public boolean isCreateIfNonExistent(){ return createIfNonExistent; }
- public boolean isEnabledBitVectors() { return enableBitVectors; }
+ public boolean isRemoveIfZero() { return removeIfZero; }
+ public boolean isCreateIfNonExistent() { return createIfNonExistent; }
+ public boolean isEnabledBitVectors() { return enableBitVectors; }
public boolean isEnabledOnlyBitVector() { return enableOnlyBitVector; }
- public boolean isFastSearch() { return fastSearch; }
- public boolean isFastAccess() { return fastAccess; }
- public boolean isHuge() { return huge; }
- public boolean isPosition() { return isPosition; }
- public boolean isMutable() { return mutable; }
-
- public int arity() { return arity; }
+ public boolean isFastSearch() { return fastSearch; }
+ public boolean isFastAccess() { return fastAccess; }
+ public boolean isHuge() { return huge; }
+ public boolean isPaged() { return paged; }
+ public boolean isPosition() { return isPosition; }
+ public boolean isMutable() { return mutable; }
+
+ public int arity() { return arity; }
public long lowerBound() { return lowerBound; }
public long upperBound() { return upperBound; }
public double densePostingListThreshold() { return densePostingListThreshold; }
- public Optional<TensorType> tensorType() { return tensorType; }
+ public Optional<TensorType> tensorType() { return tensorType; }
public Optional<StructuredDataType> referenceDocumentType() { return referenceDocumentType; }
public static final DistanceMetric DEFAULT_DISTANCE_METRIC = DistanceMetric.EUCLIDEAN;
@@ -226,6 +228,7 @@ public final class Attribute implements Cloneable, Serializable {
public void setEnableOnlyBitVector(boolean enableOnlyBitVector) { this.enableOnlyBitVector = enableOnlyBitVector; }
public void setFastSearch(boolean fastSearch) { this.fastSearch = fastSearch; }
public void setHuge(boolean huge) { this.huge = huge; }
+ public void setPaged(boolean paged) { this.paged = paged; }
public void setFastAccess(boolean fastAccess) { this.fastAccess = fastAccess; }
public void setPosition(boolean position) { this.isPosition = position; }
public void setMutable(boolean mutable) { this.mutable = mutable; }
@@ -355,8 +358,9 @@ public final class Attribute implements Cloneable, Serializable {
@Override
public int hashCode() {
return Objects.hash(
- name, type, collectionType, sorting, dictionary, isPrefetch(), fastAccess, removeIfZero, createIfNonExistent,
- isPosition, huge, enableBitVectors, enableOnlyBitVector, tensorType, referenceDocumentType, distanceMetric, hnswIndexParams);
+ name, type, collectionType, sorting, dictionary, isPrefetch(), fastAccess, removeIfZero,
+ createIfNonExistent, isPosition, huge, mutable, paged, enableBitVectors, enableOnlyBitVector,
+ tensorType, referenceDocumentType, distanceMetric, hnswIndexParams);
}
@Override
@@ -379,6 +383,8 @@ public final class Attribute implements Cloneable, Serializable {
if (this.enableOnlyBitVector != other.enableOnlyBitVector) return false;
if (this.fastSearch != other.fastSearch) return false;
if (this.huge != other.huge) return false;
+ if (this.mutable != other.mutable) return false;
+ if (this.paged != other.paged) return false;
if (! this.sorting.equals(other.sorting)) return false;
if (! Objects.equals(dictionary, other.dictionary)) return false;
if (! Objects.equals(tensorType, other.tensorType)) return false;
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/fieldoperation/AttributeOperation.java b/config-model/src/main/java/com/yahoo/searchdefinition/fieldoperation/AttributeOperation.java
index 56e241adb8e..1126c1cab87 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/fieldoperation/AttributeOperation.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/fieldoperation/AttributeOperation.java
@@ -18,9 +18,10 @@ public class AttributeOperation implements FieldOperation, FieldOperationContain
private Boolean fastSearch;
private Boolean fastAccess;
private Boolean mutable;
+ private Boolean paged;
private Boolean enableBitVectors;
private Boolean enableOnlyBitVector;
- //TODO: Husk sorting!!
+ //TODO: Remember sorting!!
private boolean doAlias = false;
private String alias;
private String aliasedName;
@@ -73,6 +74,9 @@ public class AttributeOperation implements FieldOperation, FieldOperationContain
public void setMutable(Boolean mutable) {
this.mutable = mutable;
}
+ public void setPaged(Boolean paged) {
+ this.paged = paged;
+ }
public Boolean getEnableBitVectors() {
return enableBitVectors;
@@ -131,6 +135,9 @@ public class AttributeOperation implements FieldOperation, FieldOperationContain
if (huge != null) {
attribute.setHuge(huge);
}
+ if (paged != null) {
+ attribute.setPaged(paged);
+ }
if (fastSearch != null) {
attribute.setFastSearch(fastSearch);
}
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/application/validation/change/search/AttributeChangeValidator.java b/config-model/src/main/java/com/yahoo/vespa/model/application/validation/change/search/AttributeChangeValidator.java
index 7a17fe5e80a..50eabdb2a1a 100644
--- a/config-model/src/main/java/com/yahoo/vespa/model/application/validation/change/search/AttributeChangeValidator.java
+++ b/config-model/src/main/java/com/yahoo/vespa/model/application/validation/change/search/AttributeChangeValidator.java
@@ -105,6 +105,7 @@ public class AttributeChangeValidator {
validateAttributeSetting(id, currAttr, nextAttr, AttributeChangeValidator::extractDictionaryType, "dictionary: btree/hash", result);
validateAttributeSetting(id, currAttr, nextAttr, AttributeChangeValidator::extractDictionaryCase, "dictionary: cased/uncased", result);
validateAttributeSetting(id, currAttr, nextAttr, Attribute::isHuge, "huge", result);
+ validateAttributeSetting(id, currAttr, nextAttr, Attribute::isPaged, "paged", result);
validateAttributeSetting(id, currAttr, nextAttr, Attribute::densePostingListThreshold, "dense-posting-list-threshold", result);
validateAttributeSetting(id, currAttr, nextAttr, Attribute::isEnabledOnlyBitVector, "rank: filter", result);
validateAttributeSetting(id, currAttr, nextAttr, Attribute::distanceMetric, "distance-metric", result);
diff --git a/config-model/src/main/javacc/SDParser.jj b/config-model/src/main/javacc/SDParser.jj
index fb24b50aa99..229c139e9a8 100644
--- a/config-model/src/main/javacc/SDParser.jj
+++ b/config-model/src/main/javacc/SDParser.jj
@@ -299,6 +299,7 @@ TOKEN :
| < ENABLEONLYBITVECTOR: "enable-only-bit-vector" >
| < FASTACCESS: "fast-access" >
| < MUTABLE: "mutable" >
+| < PAGED: "paged" >
| < FASTSEARCH: "fast-search" >
| < HUGE: "huge" >
| < TENSOR_TYPE: "tensor" ("<" (~["<",">"])+ ">")? "(" (~["(",")"])+ ")" >
@@ -1229,12 +1230,13 @@ Object attributeSetting(FieldOperationContainer field, AttributeOperation attrib
}
{
(
- <HUGE> { attribute.setHuge(true); }
- | <FASTSEARCH> { attribute.setFastSearch(true); }
- | <FASTACCESS> { attribute.setFastAccess(true); }
- | <MUTABLE> { attribute.setMutable(true); }
- | <ENABLEBITVECTORS> { attribute.setEnableBitVectors(true); }
- | <ENABLEONLYBITVECTOR> { attribute.setEnableOnlyBitVector(true); }
+ <HUGE> { attribute.setHuge(true); }
+ | <FASTSEARCH> { attribute.setFastSearch(true); }
+ | <FASTACCESS> { attribute.setFastAccess(true); }
+ | <MUTABLE> { attribute.setMutable(true); }
+ | <PAGED> { attribute.setPaged(true); }
+ | <ENABLEBITVECTORS> { attribute.setEnableBitVectors(true); }
+ | <ENABLEONLYBITVECTOR> { attribute.setEnableOnlyBitVector(true); }
| sorting(field, attributeName)
| <ALIAS> { String alias; String aliasedName=attributeName; } [aliasedName = identifier()] <COLON> alias = identifierWithDash() {
attribute.setDoAlias(true);
@@ -2736,6 +2738,7 @@ String identifier() : { }
| <SECONDPHASE>
| <SORTING>
| <SOURCE>
+ | <PAGED>
| <SSCONTEXTUAL>
| <SSOVERRIDE>
| <SSTITLE>
diff --git a/config-model/src/test/derived/advanced/attributes.cfg b/config-model/src/test/derived/advanced/attributes.cfg
index 63bd7d980a6..f6dc8415f2b 100644
--- a/config-model/src/test/derived/advanced/attributes.cfg
+++ b/config-model/src/test/derived/advanced/attributes.cfg
@@ -8,6 +8,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch true
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
diff --git a/config-model/src/test/derived/array_of_struct_attribute/attributes.cfg b/config-model/src/test/derived/array_of_struct_attribute/attributes.cfg
index eff0f7bd7a1..95d7e5e9299 100644
--- a/config-model/src/test/derived/array_of_struct_attribute/attributes.cfg
+++ b/config-model/src/test/derived/array_of_struct_attribute/attributes.cfg
@@ -8,6 +8,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch true
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -38,6 +39,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
diff --git a/config-model/src/test/derived/attributeprefetch/attributes.cfg b/config-model/src/test/derived/attributeprefetch/attributes.cfg
index 43f8b813139..fecc0d9a7a0 100644
--- a/config-model/src/test/derived/attributeprefetch/attributes.cfg
+++ b/config-model/src/test/derived/attributeprefetch/attributes.cfg
@@ -8,6 +8,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -38,6 +39,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -68,6 +70,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -98,6 +101,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -128,6 +132,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -158,6 +163,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -188,6 +194,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -218,6 +225,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -248,6 +256,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -278,6 +287,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -308,6 +318,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -338,6 +349,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -368,6 +380,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -398,6 +411,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -428,6 +442,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -458,6 +473,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -488,6 +504,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -518,6 +535,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
diff --git a/config-model/src/test/derived/attributes/attributes.cfg b/config-model/src/test/derived/attributes/attributes.cfg
index 82d1f7c99dc..051b8a11248 100644
--- a/config-model/src/test/derived/attributes/attributes.cfg
+++ b/config-model/src/test/derived/attributes/attributes.cfg
@@ -8,6 +8,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -38,6 +39,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -68,6 +70,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -98,6 +101,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -128,6 +132,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -158,6 +163,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -188,6 +194,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -218,6 +225,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -248,6 +256,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -278,6 +287,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -308,6 +318,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -338,6 +349,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -368,6 +380,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -398,6 +411,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch true
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -428,6 +442,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -458,6 +473,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -488,6 +504,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -518,6 +535,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
diff --git a/config-model/src/test/derived/complex/attributes.cfg b/config-model/src/test/derived/complex/attributes.cfg
index 3c0f10722de..dc71d841d25 100644
--- a/config-model/src/test/derived/complex/attributes.cfg
+++ b/config-model/src/test/derived/complex/attributes.cfg
@@ -8,6 +8,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge true
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -38,6 +39,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -68,6 +70,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -98,6 +101,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -128,6 +132,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -158,6 +163,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -188,6 +194,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -218,6 +225,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -248,6 +256,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
diff --git a/config-model/src/test/derived/hnsw_index/attributes.cfg b/config-model/src/test/derived/hnsw_index/attributes.cfg
index f7f040bf182..b25f30d0462 100644
--- a/config-model/src/test/derived/hnsw_index/attributes.cfg
+++ b/config-model/src/test/derived/hnsw_index/attributes.cfg
@@ -8,6 +8,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -38,6 +39,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
diff --git a/config-model/src/test/derived/imported_fields_inherited_reference/attributes.cfg b/config-model/src/test/derived/imported_fields_inherited_reference/attributes.cfg
index 26019842732..c74b850eeac 100644
--- a/config-model/src/test/derived/imported_fields_inherited_reference/attributes.cfg
+++ b/config-model/src/test/derived/imported_fields_inherited_reference/attributes.cfg
@@ -8,6 +8,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -38,6 +39,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -68,6 +70,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -98,6 +101,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
diff --git a/config-model/src/test/derived/imported_position_field/attributes.cfg b/config-model/src/test/derived/imported_position_field/attributes.cfg
index 70b6ed14c55..b82d4828793 100644
--- a/config-model/src/test/derived/imported_position_field/attributes.cfg
+++ b/config-model/src/test/derived/imported_position_field/attributes.cfg
@@ -8,6 +8,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -38,6 +39,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch true
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
diff --git a/config-model/src/test/derived/imported_struct_fields/attributes.cfg b/config-model/src/test/derived/imported_struct_fields/attributes.cfg
index e06d0f1a220..6cc4b807566 100644
--- a/config-model/src/test/derived/imported_struct_fields/attributes.cfg
+++ b/config-model/src/test/derived/imported_struct_fields/attributes.cfg
@@ -8,6 +8,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -38,6 +39,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch true
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -68,6 +70,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -98,6 +101,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch true
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -128,6 +132,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch true
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -158,6 +163,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -188,6 +194,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch true
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -218,6 +225,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
diff --git a/config-model/src/test/derived/importedfields/attributes.cfg b/config-model/src/test/derived/importedfields/attributes.cfg
index 57dd2408869..b70481a3c10 100644
--- a/config-model/src/test/derived/importedfields/attributes.cfg
+++ b/config-model/src/test/derived/importedfields/attributes.cfg
@@ -8,6 +8,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -38,6 +39,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -68,6 +70,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -98,6 +101,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -128,6 +132,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -158,6 +163,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -188,6 +194,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -218,6 +225,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
diff --git a/config-model/src/test/derived/inheritance/attributes.cfg b/config-model/src/test/derived/inheritance/attributes.cfg
index 9f5588b0000..09663615a3d 100644
--- a/config-model/src/test/derived/inheritance/attributes.cfg
+++ b/config-model/src/test/derived/inheritance/attributes.cfg
@@ -8,6 +8,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -38,6 +39,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -68,6 +70,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
diff --git a/config-model/src/test/derived/inheritfromparent/attributes.cfg b/config-model/src/test/derived/inheritfromparent/attributes.cfg
index 0a1cf0b9f0e..7ce3940897f 100644
--- a/config-model/src/test/derived/inheritfromparent/attributes.cfg
+++ b/config-model/src/test/derived/inheritfromparent/attributes.cfg
@@ -8,6 +8,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
diff --git a/config-model/src/test/derived/map_attribute/attributes.cfg b/config-model/src/test/derived/map_attribute/attributes.cfg
index ebcca4fde78..5db23544775 100644
--- a/config-model/src/test/derived/map_attribute/attributes.cfg
+++ b/config-model/src/test/derived/map_attribute/attributes.cfg
@@ -8,6 +8,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch true
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -38,6 +39,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -68,6 +70,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
diff --git a/config-model/src/test/derived/map_of_struct_attribute/attributes.cfg b/config-model/src/test/derived/map_of_struct_attribute/attributes.cfg
index bc7a17ebd62..2f4a1c2975e 100644
--- a/config-model/src/test/derived/map_of_struct_attribute/attributes.cfg
+++ b/config-model/src/test/derived/map_of_struct_attribute/attributes.cfg
@@ -8,6 +8,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch true
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -38,6 +39,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -68,6 +70,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -98,6 +101,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -128,6 +132,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch true
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
diff --git a/config-model/src/test/derived/music/attributes.cfg b/config-model/src/test/derived/music/attributes.cfg
index bbe95047caa..ce3509b2519 100644
--- a/config-model/src/test/derived/music/attributes.cfg
+++ b/config-model/src/test/derived/music/attributes.cfg
@@ -8,6 +8,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -38,6 +39,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -68,6 +70,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -98,6 +101,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -128,6 +132,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -158,6 +163,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -188,6 +194,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -218,6 +225,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -248,6 +256,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -278,6 +287,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -308,6 +318,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
diff --git a/config-model/src/test/derived/newrank/attributes.cfg b/config-model/src/test/derived/newrank/attributes.cfg
index a690b075f22..dc445cde09f 100644
--- a/config-model/src/test/derived/newrank/attributes.cfg
+++ b/config-model/src/test/derived/newrank/attributes.cfg
@@ -8,6 +8,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -38,6 +39,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -68,6 +70,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -98,6 +101,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -128,6 +132,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -158,6 +163,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -188,6 +194,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -218,6 +225,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -248,6 +256,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -278,6 +287,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
diff --git a/config-model/src/test/derived/predicate_attribute/attributes.cfg b/config-model/src/test/derived/predicate_attribute/attributes.cfg
index 1d6e0c9de32..0d84a1e102e 100644
--- a/config-model/src/test/derived/predicate_attribute/attributes.cfg
+++ b/config-model/src/test/derived/predicate_attribute/attributes.cfg
@@ -8,6 +8,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
diff --git a/config-model/src/test/derived/prefixexactattribute/attributes.cfg b/config-model/src/test/derived/prefixexactattribute/attributes.cfg
index bb6f61a6f04..35671069fda 100644
--- a/config-model/src/test/derived/prefixexactattribute/attributes.cfg
+++ b/config-model/src/test/derived/prefixexactattribute/attributes.cfg
@@ -8,6 +8,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -38,6 +39,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
diff --git a/config-model/src/test/derived/reference_fields/attributes.cfg b/config-model/src/test/derived/reference_fields/attributes.cfg
index cc10e657011..8fa0da9aace 100644
--- a/config-model/src/test/derived/reference_fields/attributes.cfg
+++ b/config-model/src/test/derived/reference_fields/attributes.cfg
@@ -8,6 +8,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -38,6 +39,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -68,6 +70,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
diff --git a/config-model/src/test/derived/sorting/attributes.cfg b/config-model/src/test/derived/sorting/attributes.cfg
index 5ee9d323041..da23c247a28 100644
--- a/config-model/src/test/derived/sorting/attributes.cfg
+++ b/config-model/src/test/derived/sorting/attributes.cfg
@@ -8,6 +8,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending false
attribute[].sortfunction LOWERCASE
@@ -38,6 +39,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending false
attribute[].sortfunction LOWERCASE
@@ -68,6 +70,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending false
attribute[].sortfunction LOWERCASE
diff --git a/config-model/src/test/derived/tensor/attributes.cfg b/config-model/src/test/derived/tensor/attributes.cfg
index 79f4d2a8a69..5acc99aa640 100644
--- a/config-model/src/test/derived/tensor/attributes.cfg
+++ b/config-model/src/test/derived/tensor/attributes.cfg
@@ -8,6 +8,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -38,6 +39,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -68,6 +70,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -98,6 +101,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -128,6 +132,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
diff --git a/config-model/src/test/derived/types/attributes.cfg b/config-model/src/test/derived/types/attributes.cfg
index 175dd083f60..ed23b285b3b 100644
--- a/config-model/src/test/derived/types/attributes.cfg
+++ b/config-model/src/test/derived/types/attributes.cfg
@@ -8,6 +8,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -38,6 +39,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -68,6 +70,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -98,6 +101,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -128,6 +132,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -158,6 +163,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -188,6 +194,7 @@ attribute[].removeifzero true
attribute[].createifnonexistent true
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -218,6 +225,7 @@ attribute[].removeifzero true
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -248,6 +256,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent true
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -278,6 +287,7 @@ attribute[].removeifzero true
attribute[].createifnonexistent true
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -308,6 +318,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch true
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -338,6 +349,7 @@ attribute[].removeifzero true
attribute[].createifnonexistent true
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
@@ -368,6 +380,7 @@ attribute[].removeifzero false
attribute[].createifnonexistent false
attribute[].fastsearch false
attribute[].huge false
+attribute[].paged false
attribute[].ismutable false
attribute[].sortascending true
attribute[].sortfunction UCA
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/AttributeSettingsTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/AttributeSettingsTestCase.java
index 83cad4cf266..87a0e6cfb3d 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/AttributeSettingsTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/AttributeSettingsTestCase.java
@@ -35,7 +35,7 @@ public class AttributeSettingsTestCase extends SchemaTestCase {
Search search = SearchBuilder.buildFromFile("src/test/examples/attributesettings.sd");
SDField f1=(SDField) search.getDocument().getField("f1");
- assertTrue(f1.getAttributes().size() == 1);
+ assertEquals(1, f1.getAttributes().size());
Attribute a1 = f1.getAttributes().get(f1.getName());
assertThat(a1.getType(), is(Attribute.Type.LONG));
assertThat(a1.getCollectionType(), is(Attribute.CollectionType.SINGLE));
@@ -46,7 +46,7 @@ public class AttributeSettingsTestCase extends SchemaTestCase {
assertFalse(a1.isCreateIfNonExistent());
SDField f2=(SDField) search.getDocument().getField("f2");
- assertTrue(f2.getAttributes().size() == 1);
+ assertEquals(1, f2.getAttributes().size());
Attribute a2 = f2.getAttributes().get(f2.getName());
assertThat(a2.getType(), is(Attribute.Type.LONG));
assertThat(a2.getCollectionType(), is(Attribute.CollectionType.SINGLE));
@@ -57,7 +57,7 @@ public class AttributeSettingsTestCase extends SchemaTestCase {
assertFalse(a2.isCreateIfNonExistent());
assertThat(f2.getAliasToName().get("f2alias"), is("f2"));
SDField f3=(SDField) search.getDocument().getField("f3");
- assertTrue(f3.getAttributes().size() == 1);
+ assertEquals(1, f3.getAttributes().size());
assertThat(f3.getAliasToName().get("f3alias"), is("f3"));
Attribute a3 = f3.getAttributes().get(f3.getName());
@@ -80,7 +80,7 @@ public class AttributeSettingsTestCase extends SchemaTestCase {
private void assertWeightedSet(Search search, String name, boolean createIfNonExistent, boolean removeIfZero) {
SDField f4 = (SDField) search.getDocument().getField(name);
- assertTrue(f4.getAttributes().size() == 1);
+ assertEquals(1, f4.getAttributes().size());
Attribute a4 = f4.getAttributes().get(f4.getName());
assertThat(a4.getType(), is(Attribute.Type.STRING));
assertThat(a4.getCollectionType(), is(Attribute.CollectionType.WEIGHTEDSET));
@@ -95,7 +95,7 @@ public class AttributeSettingsTestCase extends SchemaTestCase {
public void requireThatFastAccessCanBeSet() throws IOException, ParseException {
Search search = SearchBuilder.buildFromFile("src/test/examples/attributesettings.sd");
SDField field = (SDField) search.getDocument().getField("fast_access");
- assertTrue(field.getAttributes().size() == 1);
+ assertEquals(1, field.getAttributes().size());
Attribute attr = field.getAttributes().get(field.getName());
assertTrue(attr.isFastAccess());
}
@@ -112,6 +112,33 @@ public class AttributeSettingsTestCase extends SchemaTestCase {
SDField field = (SDField) search.getDocument().getField("f");
return field.getAttributes().get(field.getName());
}
+
+ @Test
+ public void requireThatSwappableIsDefaultOff() throws ParseException {
+ Attribute attr = getAttributeF(
+ "search test {\n" +
+ " document test { \n" +
+ " field f type int { \n" +
+ " indexing: attribute \n" +
+ " }\n" +
+ " }\n" +
+ "}\n");
+ assertFalse(attr.isPaged());
+ }
+ @Test
+ public void requireThatSwappableCanBeSet() throws ParseException {
+ Attribute attr = getAttributeF(
+ "search test {\n" +
+ " document test { \n" +
+ " field f type int { \n" +
+ " indexing: attribute \n" +
+ " attribute: paged \n" +
+ " }\n" +
+ " }\n" +
+ "}\n");
+ assertTrue(attr.isPaged());
+ }
+
@Test
public void requireThatMutableIsDefaultOff() throws ParseException {
Attribute attr = getAttributeF(
@@ -219,6 +246,7 @@ public class AttributeSettingsTestCase extends SchemaTestCase {
single.setEnableOnlyBitVector(true);
single.setFastSearch(true);
single.setHuge(true);
+ single.setPaged(true);
single.setFastAccess(true);
single.setPosition(true);
single.setArity(5);
@@ -241,6 +269,7 @@ public class AttributeSettingsTestCase extends SchemaTestCase {
assertTrue(array.isEnabledOnlyBitVector());
assertTrue(array.isFastSearch());
assertTrue(array.isHuge());
+ assertTrue(array.isPaged());
assertTrue(array.isFastAccess());
assertTrue(array.isPosition());
assertEquals(5, array.arity());