aboutsummaryrefslogtreecommitdiffstats
path: root/container-search/src/test/java/com/yahoo/search/result
diff options
context:
space:
mode:
authorJon Bratseth <bratseth@gmail.com>2020-09-02 18:04:23 +0200
committerJon Bratseth <bratseth@gmail.com>2020-09-02 18:04:23 +0200
commite6f3bc58eb76d38ec80857c5d96f68a91eb115ec (patch)
treed69290f1344c1ae6cb27058f74d44268848bf66b /container-search/src/test/java/com/yahoo/search/result
parented218c46326f21ff78a03bffe425c4b0284dcb22 (diff)
Optimize for looking up values that are present
At the cost of always attempting to decode a nonexisting value we can skip the containsKey lookup, making double lookups in FeatureData about 50% faster and on par with HashMap.
Diffstat (limited to 'container-search/src/test/java/com/yahoo/search/result')
-rw-r--r--container-search/src/test/java/com/yahoo/search/result/FeatureDataTestCase.java6
1 files changed, 6 insertions, 0 deletions
diff --git a/container-search/src/test/java/com/yahoo/search/result/FeatureDataTestCase.java b/container-search/src/test/java/com/yahoo/search/result/FeatureDataTestCase.java
index f9b89b64e5b..d68d13a40ba 100644
--- a/container-search/src/test/java/com/yahoo/search/result/FeatureDataTestCase.java
+++ b/container-search/src/test/java/com/yahoo/search/result/FeatureDataTestCase.java
@@ -11,6 +11,7 @@ import org.junit.Test;
import java.util.stream.Collectors;
import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNull;
/**
* @author bratseth
@@ -35,11 +36,16 @@ public class FeatureDataTestCase {
assertEquals(1.5, featureData.getDouble("scalar1"), delta);
assertEquals(2.5, featureData.getDouble("scalar2"), delta);
assertEquals("Cached lookup", 2.5, featureData.getDouble("scalar2"), delta);
+ assertNull(featureData.getDouble("nosuch"));
+ assertNull(featureData.getDouble("nosuch"));
+
assertEquals(Tensor.from(1.5), featureData.getTensor("scalar1"));
assertEquals(Tensor.from(2.5), featureData.getTensor("scalar2"));
assertEquals(tensor1, featureData.getTensor("tensor1"));
assertEquals(tensor2, featureData.getTensor("tensor2"));
assertEquals("Cached lookup", tensor2, featureData.getTensor("tensor2"));
+ assertNull(featureData.getTensor("nosuch"));
+ assertNull(featureData.getTensor("nosuch"));
String expectedJson =
"{" +