aboutsummaryrefslogtreecommitdiffstats
path: root/indexinglanguage
diff options
context:
space:
mode:
authorGeir Storli <geirst@oath.com>2018-07-06 11:47:32 +0000
committerGeir Storli <geirst@oath.com>2018-07-06 11:47:32 +0000
commit6941144fcdeac8bf32b18098ea177c07ce13ac7d (patch)
treee1bb2b8a9fa9b232c051dbfb309d0b361fd5a475 /indexinglanguage
parent610112d4be0016793c9bd3b79e73625e018afcff (diff)
Use default long field value instead of null when position field is not complete.
This ensures the same handling as regular attribute fields when clearing a field with an "assign: null" json update operation.
Diffstat (limited to 'indexinglanguage')
-rw-r--r--indexinglanguage/src/main/java/com/yahoo/vespa/indexinglanguage/expressions/ZCurveExpression.java2
-rw-r--r--indexinglanguage/src/test/java/com/yahoo/vespa/indexinglanguage/expressions/ZCurveTestCase.java10
2 files changed, 8 insertions, 4 deletions
diff --git a/indexinglanguage/src/main/java/com/yahoo/vespa/indexinglanguage/expressions/ZCurveExpression.java b/indexinglanguage/src/main/java/com/yahoo/vespa/indexinglanguage/expressions/ZCurveExpression.java
index b14c4371e6f..14a049a946d 100644
--- a/indexinglanguage/src/main/java/com/yahoo/vespa/indexinglanguage/expressions/ZCurveExpression.java
+++ b/indexinglanguage/src/main/java/com/yahoo/vespa/indexinglanguage/expressions/ZCurveExpression.java
@@ -22,7 +22,7 @@ public class ZCurveExpression extends Expression {
if (x != null && y != null) {
ctx.setValue(new LongFieldValue(ZCurve.encode(x, y)));
} else {
- ctx.setValue(null);
+ ctx.setValue(DataType.LONG.createFieldValue());
}
}
diff --git a/indexinglanguage/src/test/java/com/yahoo/vespa/indexinglanguage/expressions/ZCurveTestCase.java b/indexinglanguage/src/test/java/com/yahoo/vespa/indexinglanguage/expressions/ZCurveTestCase.java
index 11ae27667ff..860a30db610 100644
--- a/indexinglanguage/src/test/java/com/yahoo/vespa/indexinglanguage/expressions/ZCurveTestCase.java
+++ b/indexinglanguage/src/test/java/com/yahoo/vespa/indexinglanguage/expressions/ZCurveTestCase.java
@@ -41,8 +41,12 @@ public class ZCurveTestCase {
}
@Test
- public void requireThatMissingFieldEvaluatesToNull() {
- assertNull(new ZCurveExpression().execute(PositionDataType.valueOf(null, 9)));
- assertNull(new ZCurveExpression().execute(PositionDataType.valueOf(6, null)));
+ public void requireThatMissingFieldEvaluatesToDefaultValue() {
+ assertEquals(DataType.LONG.createFieldValue(),
+ new ZCurveExpression().execute(PositionDataType.valueOf(null, 9)));
+ assertEquals(DataType.LONG.createFieldValue(),
+ new ZCurveExpression().execute(PositionDataType.valueOf(6, null)));
+ assertEquals(DataType.LONG.createFieldValue(),
+ new ZCurveExpression().execute(PositionDataType.valueOf(null, null)));
}
}