summaryrefslogtreecommitdiffstats
path: root/container-search/src/main
diff options
context:
space:
mode:
authorJon Bratseth <bratseth@oath.com>2018-05-10 23:40:43 +0200
committerJon Bratseth <bratseth@oath.com>2018-05-10 23:40:43 +0200
commit837e33533ba3c109aeb48f2cfcc10d0b28a8a1b8 (patch)
tree8d675b966ea8b7461f484a400ac7d9d8adf7d0cd /container-search/src/main
parente9bc22ad954be93f431cd261a203f520b2d2318c (diff)
Remove some dead code
Diffstat (limited to 'container-search/src/main')
-rw-r--r--container-search/src/main/java/com/yahoo/prelude/fastsearch/ByteField.java22
-rw-r--r--container-search/src/main/java/com/yahoo/prelude/fastsearch/DataField.java31
-rw-r--r--container-search/src/main/java/com/yahoo/prelude/fastsearch/Docsum.java68
-rw-r--r--container-search/src/main/java/com/yahoo/prelude/fastsearch/DocsumField.java21
-rw-r--r--container-search/src/main/java/com/yahoo/prelude/fastsearch/DocsumPacketKey.java8
-rw-r--r--container-search/src/main/java/com/yahoo/prelude/fastsearch/DoubleField.java22
-rw-r--r--container-search/src/main/java/com/yahoo/prelude/fastsearch/FeatureDataField.java2
-rw-r--r--container-search/src/main/java/com/yahoo/prelude/fastsearch/FloatField.java18
-rw-r--r--container-search/src/main/java/com/yahoo/prelude/fastsearch/Int64Field.java23
-rw-r--r--container-search/src/main/java/com/yahoo/prelude/fastsearch/IntegerField.java20
-rw-r--r--container-search/src/main/java/com/yahoo/prelude/fastsearch/JSONField.java64
-rw-r--r--container-search/src/main/java/com/yahoo/prelude/fastsearch/LongdataField.java59
-rw-r--r--container-search/src/main/java/com/yahoo/prelude/fastsearch/LongstringField.java62
-rw-r--r--container-search/src/main/java/com/yahoo/prelude/fastsearch/PacketCache.java4
-rw-r--r--container-search/src/main/java/com/yahoo/prelude/fastsearch/PacketWrapper.java7
-rw-r--r--container-search/src/main/java/com/yahoo/prelude/fastsearch/ShortField.java20
-rw-r--r--container-search/src/main/java/com/yahoo/prelude/fastsearch/StringField.java32
-rw-r--r--container-search/src/main/java/com/yahoo/prelude/fastsearch/StructDataField.java1
-rw-r--r--container-search/src/main/java/com/yahoo/prelude/fastsearch/SummaryParameters.java2
-rw-r--r--container-search/src/main/java/com/yahoo/prelude/fastsearch/TensorField.java32
-rw-r--r--container-search/src/main/java/com/yahoo/prelude/fastsearch/VariableLengthField.java15
-rw-r--r--container-search/src/main/java/com/yahoo/prelude/fastsearch/XMLField.java61
-rw-r--r--container-search/src/main/java/com/yahoo/search/rendering/DefaultRenderer.java4
-rw-r--r--container-search/src/main/java/com/yahoo/search/searchchain/AsyncExecution.java2
24 files changed, 48 insertions, 552 deletions
diff --git a/container-search/src/main/java/com/yahoo/prelude/fastsearch/ByteField.java b/container-search/src/main/java/com/yahoo/prelude/fastsearch/ByteField.java
index adc8190d325..256edc66793 100644
--- a/container-search/src/main/java/com/yahoo/prelude/fastsearch/ByteField.java
+++ b/container-search/src/main/java/com/yahoo/prelude/fastsearch/ByteField.java
@@ -13,9 +13,10 @@ import com.yahoo.search.result.NanNumber;
import com.yahoo.data.access.Inspector;
/**
- * @author <a href="mailto:borud@yahoo-inc.com">Bj\u00f8rn Borud</a>
+ * @author Bjørn Borud
*/
public class ByteField extends DocsumField {
+
static final byte EMPTY_VALUE = Byte.MIN_VALUE;
public ByteField(String name) {
@@ -30,24 +31,9 @@ public class ByteField extends DocsumField {
}
}
- public Object decode(ByteBuffer b) {
- return convert(b.get());
- }
-
- public Object decode(ByteBuffer b, FastHit hit) {
- Object field = decode(b);
- hit.setField(name, field);
- return field;
- }
-
- public int getLength(ByteBuffer b) {
- int offset = b.position();
- final int bytelength = Byte.SIZE >> 3;
- b.position(offset + bytelength);
- return bytelength;
- }
-
+ @Override
public Object convert(Inspector value) {
return convert((byte)value.asLong(EMPTY_VALUE));
}
+
}
diff --git a/container-search/src/main/java/com/yahoo/prelude/fastsearch/DataField.java b/container-search/src/main/java/com/yahoo/prelude/fastsearch/DataField.java
index 5f6eb9d3631..524e842eacd 100644
--- a/container-search/src/main/java/com/yahoo/prelude/fastsearch/DataField.java
+++ b/container-search/src/main/java/com/yahoo/prelude/fastsearch/DataField.java
@@ -19,7 +19,7 @@ import com.yahoo.data.access.Inspector;
/**
* @author Bjørn Borud
*/
-public class DataField extends DocsumField implements VariableLengthField {
+public class DataField extends DocsumField {
public DataField(String name) {
super(name);
@@ -30,40 +30,11 @@ public class DataField extends DocsumField implements VariableLengthField {
}
@Override
- public Object decode(ByteBuffer b) {
- int len = ((int) b.getShort()) & 0xffff;
-
- byte[] tmp = new byte[len];
- b.get(tmp);
- return convert(tmp);
- }
-
- @Override
- public Object decode(ByteBuffer b, FastHit hit) {
- Object field = decode(b);
- hit.setField(name, field);
- return field;
- }
-
- @Override
public String toString() {
return "field " + getName() + " type data";
}
@Override
- public int getLength(ByteBuffer b) {
- int offset = b.position();
- int len = ((int) b.getShort()) & 0xffff;
- b.position(offset + len + (Short.SIZE >> 3));
- return len + (Short.SIZE >> 3);
- }
-
- @Override
- public int sizeOfLength() {
- return Short.SIZE >> 3;
- }
-
- @Override
public Object convert(Inspector value) {
return convert(value.asData(Value.empty().asData()));
}
diff --git a/container-search/src/main/java/com/yahoo/prelude/fastsearch/Docsum.java b/container-search/src/main/java/com/yahoo/prelude/fastsearch/Docsum.java
deleted file mode 100644
index f5cec631734..00000000000
--- a/container-search/src/main/java/com/yahoo/prelude/fastsearch/Docsum.java
+++ /dev/null
@@ -1,68 +0,0 @@
-// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-package com.yahoo.prelude.fastsearch;
-
-import java.nio.ByteBuffer;
-import java.nio.ByteOrder;
-
-
-/**
- * An instance of a document summary, backed by binary data, which decodes and returns fields on request,
- * using the (shared) definition of this docsum.
- *
- * @author Steinar Knutsen
- */
-public final class Docsum {
-
- private final DocsumDefinition definition;
- private final byte[] packet;
- /** The offsets into the packet data of each field, given the fields index, computed lazily */
- private final int[] fieldOffsets;
- /** The largest stored offset */
- private int largestStoredOffset = -1;
-
- public Docsum(DocsumDefinition definition, byte[] packet) {
- this.definition = definition;
- this.packet = packet;
- fieldOffsets=new int[definition.getFieldCount()];
- }
-
- public DocsumDefinition getDefinition() { return definition; }
-
- public Object decode(int fieldIndex) {
- ByteBuffer b=packetAsBuffer();
- setAndReturnOffsetToField(b, fieldIndex);
- return definition.getField(fieldIndex).decode(b);
- }
-
- public ByteBuffer packetAsBuffer() {
- ByteBuffer buffer = ByteBuffer.wrap(packet);
- buffer.order(ByteOrder.LITTLE_ENDIAN);
- buffer.getInt(); // Skip class id
- return buffer;
- }
-
- /** Returns the offset of a given field in the buffer, and sets the position of the buffer to that field start */
- private int setAndReturnOffsetToField(ByteBuffer b, int fieldIndex) {
- // find and store missing offsets up to fieldIndex
- if (largestStoredOffset<0) { // initial case
- fieldOffsets[0]=b.position();
- largestStoredOffset++;
- }
- while (largestStoredOffset < fieldIndex) { // induction
- int offsetOfLargest=fieldOffsets[largestStoredOffset];
- b.position(offsetOfLargest);
- fieldOffsets[largestStoredOffset+1]=offsetOfLargest+definition.getField(largestStoredOffset).getLength(b);
- largestStoredOffset++;
- }
-
- // return the stored offset
- int offset=fieldOffsets[fieldIndex];
- b.position(offset);
- return offset;
- }
-
- public String toString() {
- return "docsum [definition: " + definition + "]";
- }
-
-}
diff --git a/container-search/src/main/java/com/yahoo/prelude/fastsearch/DocsumField.java b/container-search/src/main/java/com/yahoo/prelude/fastsearch/DocsumField.java
index d5e4eb75931..a5f83021bee 100644
--- a/container-search/src/main/java/com/yahoo/prelude/fastsearch/DocsumField.java
+++ b/container-search/src/main/java/com/yahoo/prelude/fastsearch/DocsumField.java
@@ -90,27 +90,6 @@ public abstract class DocsumField {
return name;
}
- public boolean isCompressed(ByteBuffer b) {
- return false;
- }
-
- /**
- * Decode the field at the current buffer position into the fast hit.
- */
- public abstract Object decode(ByteBuffer b, FastHit hit);
-
- /**
- * Decode the field at the current buffer position and simply return the
- * value.
- */
- public abstract Object decode(ByteBuffer b);
-
- /**
- * Get the number of bytes this field occupies in the given buffer
- * AND SET(!) the position to the first byte after this field.
- */
- public abstract int getLength(ByteBuffer b);
-
/**
* Convert a generic value into an object of the appropriate type
* for this field.
diff --git a/container-search/src/main/java/com/yahoo/prelude/fastsearch/DocsumPacketKey.java b/container-search/src/main/java/com/yahoo/prelude/fastsearch/DocsumPacketKey.java
index 46cbf244abe..a3b5a6f57b6 100644
--- a/container-search/src/main/java/com/yahoo/prelude/fastsearch/DocsumPacketKey.java
+++ b/container-search/src/main/java/com/yahoo/prelude/fastsearch/DocsumPacketKey.java
@@ -5,14 +5,14 @@ import com.yahoo.document.GlobalId;
/**
- * Key for each entry in the packetcache.
+ * Key for each entry in the packet cache.
*
- * @author <a href="mailto:mathiasm@yahoo-inc.com">Mathias M\u00f8lster Lidal</a>
+ * @author Mathias Mølster Lidal
*/
public class DocsumPacketKey {
+
private GlobalId globalId;
private int partid;
- private int docstamp;
private String summaryClass;
private static boolean strEquals(String a, String b) {
@@ -43,6 +43,7 @@ public class DocsumPacketKey {
return partid;
}
+ @Override
public boolean equals(Object o) {
if (o instanceof DocsumPacketKey) {
DocsumPacketKey other = (DocsumPacketKey) o;
@@ -57,6 +58,7 @@ public class DocsumPacketKey {
return false;
}
+ @Override
public int hashCode() {
return globalId.hashCode() + 10 * partid + strHashCode(summaryClass);
}
diff --git a/container-search/src/main/java/com/yahoo/prelude/fastsearch/DoubleField.java b/container-search/src/main/java/com/yahoo/prelude/fastsearch/DoubleField.java
index 474e84bdc0b..6b1445229ec 100644
--- a/container-search/src/main/java/com/yahoo/prelude/fastsearch/DoubleField.java
+++ b/container-search/src/main/java/com/yahoo/prelude/fastsearch/DoubleField.java
@@ -8,9 +8,10 @@ import com.yahoo.search.result.NanNumber;
import com.yahoo.data.access.Inspector;
/**
- * @author <a href="mailto:mathiasm@yahoo-inc.com">Mathias M\u00f8lster Lidal</a>
+ * @author Mathias Mølster Lidal
*/
public class DoubleField extends DocsumField {
+
static final double EMPTY_VALUE = Double.NaN;
public DoubleField(String name) {
@@ -25,24 +26,9 @@ public class DoubleField extends DocsumField {
}
}
- public Object decode(ByteBuffer b) {
- return convert(b.getDouble());
- }
-
- public Object decode(ByteBuffer b, FastHit hit) {
- Object field = decode(b);
- hit.setField(name, field);
- return field;
- }
-
- public int getLength(ByteBuffer b) {
- int offset = b.position();
- final int byteLength = Double.SIZE >> 3;
- b.position(offset + byteLength);
- return byteLength;
- }
-
+ @Override
public Object convert(Inspector value) {
return convert(value.asDouble(EMPTY_VALUE));
}
+
}
diff --git a/container-search/src/main/java/com/yahoo/prelude/fastsearch/FeatureDataField.java b/container-search/src/main/java/com/yahoo/prelude/fastsearch/FeatureDataField.java
index df681a6ed11..28c63aa2d3a 100644
--- a/container-search/src/main/java/com/yahoo/prelude/fastsearch/FeatureDataField.java
+++ b/container-search/src/main/java/com/yahoo/prelude/fastsearch/FeatureDataField.java
@@ -22,6 +22,7 @@ public class FeatureDataField extends LongstringField {
return "field " + getName() + " type FeatureDataField";
}
+ @Override
public Object convert(Inspector value) {
if (! value.valid()) {
if (getEmulConfig().stringBackedFeatureData()) {
@@ -42,4 +43,5 @@ public class FeatureDataField extends LongstringField {
return obj;
}
}
+
}
diff --git a/container-search/src/main/java/com/yahoo/prelude/fastsearch/FloatField.java b/container-search/src/main/java/com/yahoo/prelude/fastsearch/FloatField.java
index 6c73167b162..7330f0bde3c 100644
--- a/container-search/src/main/java/com/yahoo/prelude/fastsearch/FloatField.java
+++ b/container-search/src/main/java/com/yahoo/prelude/fastsearch/FloatField.java
@@ -28,24 +28,6 @@ public class FloatField extends DocsumField {
}
@Override
- public Object decode(ByteBuffer b) {
- return convert(b.getFloat());
- }
-
- @Override
- public Object decode(ByteBuffer b, FastHit hit) {
- Object field = decode(b);
- hit.setField(name, field);
- return field;
- }
-
- public int getLength(ByteBuffer b) {
- int offset = b.position();
- final int bytelength = Float.SIZE >> 3;
- b.position(offset + bytelength);
- return bytelength;
- }
-
public Object convert(Inspector value) {
return convert((float)value.asDouble(EMPTY_VALUE));
}
diff --git a/container-search/src/main/java/com/yahoo/prelude/fastsearch/Int64Field.java b/container-search/src/main/java/com/yahoo/prelude/fastsearch/Int64Field.java
index 5d422f5611c..f690d9d4da4 100644
--- a/container-search/src/main/java/com/yahoo/prelude/fastsearch/Int64Field.java
+++ b/container-search/src/main/java/com/yahoo/prelude/fastsearch/Int64Field.java
@@ -13,9 +13,10 @@ import com.yahoo.data.access.Inspector;
/**
- * @author <a href="mailto:borud@yahoo-inc.com">Bj\u00f8rn Borud</a>
+ * @author Bjørn Borud
*/
public class Int64Field extends DocsumField {
+
static final long EMPTY_VALUE = Long.MIN_VALUE;
public Int64Field(String name) {
@@ -30,28 +31,14 @@ public class Int64Field extends DocsumField {
}
}
- public Object decode(ByteBuffer b) {
- return convert(b.getLong());
- }
-
- public Object decode(ByteBuffer b, FastHit hit) {
- Object field = decode(b);
- hit.setField(name, field);
- return field;
- }
-
+ @Override
public String toString() {
return "field " + getName() + " type int64";
}
- public int getLength(ByteBuffer b) {
- int offset = b.position();
- final int bytelength = Long.SIZE >> 3;
- b.position(offset + bytelength);
- return bytelength;
- }
-
+ @Override
public Object convert(Inspector value) {
return convert(value.asLong(EMPTY_VALUE));
}
+
}
diff --git a/container-search/src/main/java/com/yahoo/prelude/fastsearch/IntegerField.java b/container-search/src/main/java/com/yahoo/prelude/fastsearch/IntegerField.java
index eef6fc73294..a02d9813793 100644
--- a/container-search/src/main/java/com/yahoo/prelude/fastsearch/IntegerField.java
+++ b/container-search/src/main/java/com/yahoo/prelude/fastsearch/IntegerField.java
@@ -31,29 +31,11 @@ public class IntegerField extends DocsumField {
}
@Override
- public Object decode(ByteBuffer b) {
- return convert(b.getInt());
- }
-
- @Override
- public Object decode(ByteBuffer b, FastHit hit) {
- Object field = decode(b);
- hit.setField(name, field);
- return field;
- }
-
- @Override
public String toString() {
return "field " + getName() + " type int";
}
- public int getLength(ByteBuffer b) {
- int offset = b.position();
- final int bytelength = Integer.SIZE >> 3;
- b.position(offset + bytelength);
- return bytelength;
- }
-
+ @Override
public Object convert(Inspector value) {
return convert((int)value.asLong(EMPTY_VALUE));
}
diff --git a/container-search/src/main/java/com/yahoo/prelude/fastsearch/JSONField.java b/container-search/src/main/java/com/yahoo/prelude/fastsearch/JSONField.java
index d39d541f7a0..bf9cc02b766 100644
--- a/container-search/src/main/java/com/yahoo/prelude/fastsearch/JSONField.java
+++ b/container-search/src/main/java/com/yahoo/prelude/fastsearch/JSONField.java
@@ -14,77 +14,17 @@ import com.yahoo.data.access.simple.Value;
*
* @author Steinar Knutsen
*/
-public class JSONField extends DocsumField implements VariableLengthField {
+public class JSONField extends DocsumField {
public JSONField(String name) {
super(name);
}
@Override
- public Object decode(ByteBuffer b) {
- long dataLen = 0;
- long len = ((long) b.getInt()) & 0xffffffffL;
- boolean compressed;
- JSONString field;
-
- // if MSB is set this is a compressed field. set the compressed
- // flag accordingly and decompress the data
- compressed = ((len & 0x80000000) != 0);
- if (compressed) {
- len &= 0x7fffffff;
- dataLen = b.getInt();
- len -= 4;
- }
-
- byte[] tmp = new byte[(int) len];
-
- b.get(tmp);
-
- if (compressed) {
- SlowInflate inf = new SlowInflate();
-
- tmp = inf.unpack(tmp, (int) dataLen);
- }
-
- field = new JSONString(Utf8.toString(tmp));
- return field;
- }
-
- @Override
- public Object decode(ByteBuffer b, FastHit hit) {
- Object field = decode(b);
- hit.setField(name, field);
- return field;
- }
-
- @Override
public String toString() {
return "field " + getName() + " type JSONString";
}
- @Override
- public int getLength(ByteBuffer b) {
- int offset = b.position();
- // MSB = compression flag, re decode
- int len = b.getInt() & 0x7fffffff;
- b.position(offset + len + (Integer.SIZE >> 3));
- return len + (Integer.SIZE >> 3);
- }
-
- @Override
- public boolean isCompressed(ByteBuffer b) {
- int offset = b.position();
- // MSB = compression flag, re decode
- int compressed = b.getInt() & 0x80000000;
- b.position(offset);
- return compressed != 0;
- }
-
- @Override
- public int sizeOfLength() {
- return Integer.SIZE >> 3;
- }
-
private static class CompatibilityConverter {
Value.ArrayValue target = new Value.ArrayValue();
@@ -167,6 +107,7 @@ public class JSONField extends DocsumField implements VariableLengthField {
return value;
}
+ @Override
public Object convert(Inspector value) {
if (value.valid()) {
return new JSONString(convertTop(value));
@@ -174,4 +115,5 @@ public class JSONField extends DocsumField implements VariableLengthField {
return new JSONString("");
}
}
+
}
diff --git a/container-search/src/main/java/com/yahoo/prelude/fastsearch/LongdataField.java b/container-search/src/main/java/com/yahoo/prelude/fastsearch/LongdataField.java
index 9d22168485c..bf77c517d50 100644
--- a/container-search/src/main/java/com/yahoo/prelude/fastsearch/LongdataField.java
+++ b/container-search/src/main/java/com/yahoo/prelude/fastsearch/LongdataField.java
@@ -15,7 +15,7 @@ import com.yahoo.data.access.Inspector;
/**
* @author Bjørn Borud
*/
-public class LongdataField extends DocsumField implements VariableLengthField {
+public class LongdataField extends DocsumField {
public LongdataField(String name) {
super(name);
@@ -26,63 +26,6 @@ public class LongdataField extends DocsumField implements VariableLengthField {
}
@Override
- public Object decode(ByteBuffer b) {
- long dataLen = 0;
- long len = ((long) b.getInt()) & 0xffffffffL;
- boolean compressed;
-
- // if MSB is set this is a compressed field. set the compressed
- // flag accordingly and decompress the data
- compressed = ((len & 0x80000000) != 0);
- if (compressed) {
- len &= 0x7fffffff;
- dataLen = b.getInt();
- len -= 4;
- }
-
- byte[] tmp = new byte[(int) len];
-
- b.get(tmp);
-
- if (compressed) {
- SlowInflate inf = new SlowInflate();
-
- tmp = inf.unpack(tmp, (int) dataLen);
- }
- return convert(tmp);
- }
-
- @Override
- public Object decode(ByteBuffer b, FastHit hit) {
- Object field = decode(b);
- hit.setField(name, field);
- return field;
- }
-
- @Override
- public int getLength(ByteBuffer b) {
- int offset = b.position();
- // MSB = compression flag, re decode
- int len = b.getInt() & 0x7fffffff;
- b.position(offset + len + (Integer.SIZE >> 3));
- return len + (Integer.SIZE >> 3);
- }
-
- @Override
- public boolean isCompressed(ByteBuffer b) {
- int offset = b.position();
- // MSB = compression flag, re decode
- int compressed = b.getInt() & 0x80000000;
- b.position(offset);
- return compressed != 0;
- }
-
- @Override
- public int sizeOfLength() {
- return Integer.SIZE >> 3;
- }
-
- @Override
public Object convert(Inspector value) {
return convert(value.asData(Value.empty().asData()));
}
diff --git a/container-search/src/main/java/com/yahoo/prelude/fastsearch/LongstringField.java b/container-search/src/main/java/com/yahoo/prelude/fastsearch/LongstringField.java
index 9914bedd0db..2f9c6d5b325 100644
--- a/container-search/src/main/java/com/yahoo/prelude/fastsearch/LongstringField.java
+++ b/container-search/src/main/java/com/yahoo/prelude/fastsearch/LongstringField.java
@@ -14,73 +14,15 @@ import com.yahoo.data.access.Inspector;
/**
* @author Bjørn Borud
*/
-public class LongstringField extends DocsumField implements VariableLengthField {
+public class LongstringField extends DocsumField {
public LongstringField(String name) {
super(name);
}
@Override
- public Object decode(ByteBuffer b) {
- long dataLen = 0;
- long len = ((long) b.getInt()) & 0xffffffffL;
- boolean compressed;
- String field;
-
- // if MSB is set this is a compressed field. set the compressed
- // flag accordingly and decompress the data
- compressed = ((len & 0x80000000) != 0);
- if (compressed) {
- len &= 0x7fffffff;
- dataLen = b.getInt();
- len -= 4;
- }
-
- byte[] tmp = new byte[(int) len];
-
- b.get(tmp);
-
- if (compressed) {
- SlowInflate inf = new SlowInflate();
-
- tmp = inf.unpack(tmp, (int) dataLen);
- }
- field = Utf8.toString(tmp);
- return field;
- }
-
- @Override
- public Object decode(ByteBuffer b, FastHit hit) {
- Object field = decode(b);
- hit.setField(name, field);
- return field;
- }
-
- @Override
- public int getLength(ByteBuffer b) {
- int offset = b.position();
- // MSB = compression flag, re decode
- int len = b.getInt() & 0x7fffffff;
- b.position(offset + len + (Integer.SIZE >> 3));
- return len + (Integer.SIZE >> 3);
- }
-
- @Override
- public boolean isCompressed(ByteBuffer b) {
- int offset = b.position();
- // MSB = compression flag, re decode
- int compressed = b.getInt() & 0x80000000;
- b.position(offset);
- return compressed != 0;
- }
-
- @Override
- public int sizeOfLength() {
- return Integer.SIZE >> 3;
- }
-
- @Override
public Object convert(Inspector value) {
return value.asString("");
}
+
}
diff --git a/container-search/src/main/java/com/yahoo/prelude/fastsearch/PacketCache.java b/container-search/src/main/java/com/yahoo/prelude/fastsearch/PacketCache.java
index 8e93f57ef34..ce3ccb1d1b8 100644
--- a/container-search/src/main/java/com/yahoo/prelude/fastsearch/PacketCache.java
+++ b/container-search/src/main/java/com/yahoo/prelude/fastsearch/PacketCache.java
@@ -13,8 +13,8 @@ import com.yahoo.log.LogLevel;
* An LRU cache using number of hits cached inside the results as
* size limiting factor. Directly modelled after com.yahoo.collections.Cache.
*
- * @author <a href="mailto:steinar@yahoo-inc.com">Steinar Knutsen</a>
- * @author bratseth
+ * @author Steinar Knutsen
+ * @author bratseth
*/
// TODO: Remove packet cache as it timed out a long time ago.
// 1 - It does not work with grouping, 2 the packet protocol is eroding away.
diff --git a/container-search/src/main/java/com/yahoo/prelude/fastsearch/PacketWrapper.java b/container-search/src/main/java/com/yahoo/prelude/fastsearch/PacketWrapper.java
index a6abe05334a..2b1b7dd24cc 100644
--- a/container-search/src/main/java/com/yahoo/prelude/fastsearch/PacketWrapper.java
+++ b/container-search/src/main/java/com/yahoo/prelude/fastsearch/PacketWrapper.java
@@ -22,12 +22,13 @@ import com.yahoo.document.DocumentId;
* A wrapper for cache entries to make it possible to check whether the
* hits are truly correct.
*
- * @author <a href="mailto:steinar@yahoo-inc.com">Steinar Knutsen</a>
- * @author <a href="mailto:mathiasm@yahoo-inc.com">Mathias Lidal</a>
+ * @author Steinar Knutsen
+ * @author Mathias Lidal
*/
// TODO: Remove packet cache as it timed out a long time ago.
// 1 - It does not work with grouping, 2 the packet protocol is eroding away.
public class PacketWrapper implements Cloneable {
+
private static Logger log = Logger.getLogger(PacketWrapper.class.getName());
final int keySize;
@@ -288,6 +289,7 @@ public class PacketWrapper implements Cloneable {
* Straightforward shallow copy.
*/
@SuppressWarnings("unchecked")
+ @Override
public Object clone() {
try {
PacketWrapper other = (PacketWrapper) super.clone();
@@ -301,4 +303,5 @@ public class PacketWrapper implements Cloneable {
e);
}
}
+
}
diff --git a/container-search/src/main/java/com/yahoo/prelude/fastsearch/ShortField.java b/container-search/src/main/java/com/yahoo/prelude/fastsearch/ShortField.java
index be4dd3e20a5..5e3d0babe98 100644
--- a/container-search/src/main/java/com/yahoo/prelude/fastsearch/ShortField.java
+++ b/container-search/src/main/java/com/yahoo/prelude/fastsearch/ShortField.java
@@ -15,6 +15,7 @@ import com.yahoo.data.access.Inspector;
* @author Bjørn Borud
*/
public class ShortField extends DocsumField {
+
static final short EMPTY_VALUE = Short.MIN_VALUE;
public ShortField(String name) {
@@ -29,24 +30,9 @@ public class ShortField extends DocsumField {
}
}
- public Object decode(ByteBuffer b) {
- return convert(b.getShort());
- }
-
- public Object decode(ByteBuffer b, FastHit hit) {
- Object field = decode(b);
- hit.setField(name, field);
- return field;
- }
-
- public int getLength(ByteBuffer b) {
- int offset = b.position();
- final int bytelength = Short.SIZE >> 3;
- b.position(offset + bytelength);
- return bytelength;
- }
-
+ @Override
public Object convert(Inspector value) {
return convert((short)value.asLong(EMPTY_VALUE));
}
+
}
diff --git a/container-search/src/main/java/com/yahoo/prelude/fastsearch/StringField.java b/container-search/src/main/java/com/yahoo/prelude/fastsearch/StringField.java
index 92ea7efee25..0fa4b7ee342 100644
--- a/container-search/src/main/java/com/yahoo/prelude/fastsearch/StringField.java
+++ b/container-search/src/main/java/com/yahoo/prelude/fastsearch/StringField.java
@@ -15,48 +15,18 @@ import com.yahoo.data.access.Inspector;
/**
* @author Bjørn Borud
*/
-public class StringField extends DocsumField implements VariableLengthField {
+public class StringField extends DocsumField {
public StringField(String name) {
super(name);
}
@Override
- public Object decode(ByteBuffer b) {
- int length = ((int) b.getShort()) & 0xffff;
- Object field;
-
- field = Utf8.toString(b.array(), b.arrayOffset() + b.position(), length);
- b.position(b.position() + length);
- return field;
- }
-
- @Override
- public Object decode(ByteBuffer b, FastHit hit) {
- Object field = decode(b);
- hit.setField(name, field);
- return field;
- }
-
- @Override
public String toString() {
return "field " + getName() + " type string";
}
@Override
- public int getLength(ByteBuffer b) {
- int offset = b.position();
- int len = ((int) b.getShort()) & 0xffff;
- b.position(offset + len + (Short.SIZE >> 3));
- return len + (Short.SIZE >> 3);
- }
-
- @Override
- public int sizeOfLength() {
- return Short.SIZE >> 3;
- }
-
- @Override
public Object convert(Inspector value) {
return value.asString("");
}
diff --git a/container-search/src/main/java/com/yahoo/prelude/fastsearch/StructDataField.java b/container-search/src/main/java/com/yahoo/prelude/fastsearch/StructDataField.java
index 7f96cbf77e1..9521854477a 100644
--- a/container-search/src/main/java/com/yahoo/prelude/fastsearch/StructDataField.java
+++ b/container-search/src/main/java/com/yahoo/prelude/fastsearch/StructDataField.java
@@ -21,6 +21,7 @@ public class StructDataField extends JSONField {
return "field " + getName() + " type StructDataField";
}
+ @Override
public Object convert(Inspector value) {
if (getEmulConfig().stringBackedStructuredData() || value.type() == Type.STRING) {
return super.convert(value);
diff --git a/container-search/src/main/java/com/yahoo/prelude/fastsearch/SummaryParameters.java b/container-search/src/main/java/com/yahoo/prelude/fastsearch/SummaryParameters.java
index 98d7da2cad5..603d576ddb5 100644
--- a/container-search/src/main/java/com/yahoo/prelude/fastsearch/SummaryParameters.java
+++ b/container-search/src/main/java/com/yahoo/prelude/fastsearch/SummaryParameters.java
@@ -5,7 +5,7 @@ package com.yahoo.prelude.fastsearch;
/**
* Wrapper for document summary parameters and configuration.
*
- * @author <a href="mailto:steinar@yahoo-inc.com">Steinar Knutsen</a>
+ * @author Steinar Knutsen
*/
public class SummaryParameters {
diff --git a/container-search/src/main/java/com/yahoo/prelude/fastsearch/TensorField.java b/container-search/src/main/java/com/yahoo/prelude/fastsearch/TensorField.java
index d8b38667224..1b91a66aef6 100644
--- a/container-search/src/main/java/com/yahoo/prelude/fastsearch/TensorField.java
+++ b/container-search/src/main/java/com/yahoo/prelude/fastsearch/TensorField.java
@@ -16,48 +16,18 @@ import java.util.Optional;
*
* @author bratseth
*/
-public class TensorField extends DocsumField implements VariableLengthField {
+public class TensorField extends DocsumField {
public TensorField(String name) {
super(name);
}
@Override
- public Tensor decode(ByteBuffer buffer) {
- int length = buffer.getInt();
- if (length == 0) return null;
- ByteBuffer contentBuffer = ByteBuffer.wrap(buffer.array(), buffer.arrayOffset() + buffer.position(), length);
- Tensor tensor = TypedBinaryFormat.decode(Optional.empty(), new GrowableByteBuffer(contentBuffer));
- buffer.position(buffer.position() + length);
- return tensor;
- }
-
- @Override
- public Tensor decode(ByteBuffer b, FastHit hit) {
- Tensor tensor = decode(b);
- hit.setField(name, tensor);
- return tensor;
- }
-
- @Override
public String toString() {
return "field " + getName() + " type tensor";
}
@Override
- public int getLength(ByteBuffer b) {
- int offset = b.position();
- int length = b.getInt();
- b.position(offset + length);
- return length;
- }
-
- @Override
- public int sizeOfLength() {
- return 4;
- }
-
- @Override
public Object convert(Inspector value) {
byte[] content = value.asData(Value.empty().asData());
if (content.length == 0) return null;
diff --git a/container-search/src/main/java/com/yahoo/prelude/fastsearch/VariableLengthField.java b/container-search/src/main/java/com/yahoo/prelude/fastsearch/VariableLengthField.java
deleted file mode 100644
index 53dad510761..00000000000
--- a/container-search/src/main/java/com/yahoo/prelude/fastsearch/VariableLengthField.java
+++ /dev/null
@@ -1,15 +0,0 @@
-// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-package com.yahoo.prelude.fastsearch;
-
-/**
- * Interface to easier find the start of the actual data for variable length
- * fields.
- *
- * @author Steinar Knutsen
- */
-public interface VariableLengthField {
-
- /** Returns the size of the length preceeding the data of this field, in bytes */
- int sizeOfLength();
-
-}
diff --git a/container-search/src/main/java/com/yahoo/prelude/fastsearch/XMLField.java b/container-search/src/main/java/com/yahoo/prelude/fastsearch/XMLField.java
index 366c4e1bb51..5c85c3641cf 100644
--- a/container-search/src/main/java/com/yahoo/prelude/fastsearch/XMLField.java
+++ b/container-search/src/main/java/com/yahoo/prelude/fastsearch/XMLField.java
@@ -15,9 +15,10 @@ import com.yahoo.data.access.Inspector;
/**
- * @author <a href="mailto:steinar@yahoo-inc.com">Steinar Knutsen</a>
+ * @author Steinar Knutsen
*/
-public class XMLField extends DocsumField implements VariableLengthField {
+public class XMLField extends DocsumField {
+
public XMLField(String name) {
super(name);
}
@@ -27,67 +28,11 @@ public class XMLField extends DocsumField implements VariableLengthField {
}
@Override
- public Object decode(ByteBuffer b) {
- long dataLen = 0;
- long len = ((long) b.getInt()) & 0xffffffffL;
- boolean compressed;
-
- // if MSB is set this is a compressed field. set the compressed
- // flag accordingly and decompress the data
- compressed = ((len & 0x80000000) != 0);
- if (compressed) {
- len &= 0x7fffffff;
- dataLen = b.getInt();
- len -= 4;
- }
-
- byte[] tmp = new byte[(int) len];
-
- b.get(tmp);
-
- if (compressed) {
- SlowInflate inf = new SlowInflate();
-
- tmp = inf.unpack(tmp, (int) dataLen);
- }
- return convert(Utf8.toString(tmp));
- }
-
- @Override
- public Object decode(ByteBuffer b, FastHit hit) {
- Object field = decode(b);
- hit.setField(name, field);
- return field;
- }
-
- @Override
public String toString() {
return "field " + getName() + " type XMLString";
}
@Override
- public int getLength(ByteBuffer b) {
- int offset = b.position();
- // MSB = compression flag, re decode
- int len = b.getInt() & 0x7fffffff;
- b.position(offset + len + (Integer.SIZE >> 3));
- return len + (Integer.SIZE >> 3);
- }
-
- @Override
- public boolean isCompressed(ByteBuffer b) {
- int offset = b.position();
- // MSB = compression flag, re decode
- int compressed = b.getInt() & 0x80000000;
- b.position(offset);
- return compressed != 0;
- }
-
- @Override
- public int sizeOfLength() {
- return Integer.SIZE >> 3;
- }
-
public Object convert(Inspector value) {
return convert(value.asString(""));
}
diff --git a/container-search/src/main/java/com/yahoo/search/rendering/DefaultRenderer.java b/container-search/src/main/java/com/yahoo/search/rendering/DefaultRenderer.java
index f0c7b1a183f..bae1185d6a9 100644
--- a/container-search/src/main/java/com/yahoo/search/rendering/DefaultRenderer.java
+++ b/container-search/src/main/java/com/yahoo/search/rendering/DefaultRenderer.java
@@ -221,8 +221,8 @@ public final class DefaultRenderer extends AsynchronousSectionedRenderer<Result>
}
private void renderSyntheticRelevanceField(XMLWriter writer, Hit hit) {
- final String relevancyFieldName = "relevancy";
- final Relevance relevance = hit.getRelevance();
+ String relevancyFieldName = "relevancy";
+ Relevance relevance = hit.getRelevance();
// skip depending on hit type
if (relevance != null) {
diff --git a/container-search/src/main/java/com/yahoo/search/searchchain/AsyncExecution.java b/container-search/src/main/java/com/yahoo/search/searchchain/AsyncExecution.java
index daa1499389a..d74f29a3b77 100644
--- a/container-search/src/main/java/com/yahoo/search/searchchain/AsyncExecution.java
+++ b/container-search/src/main/java/com/yahoo/search/searchchain/AsyncExecution.java
@@ -181,7 +181,7 @@ public class AsyncExecution {
for (FutureResult task : workingTasks)
task.get();
}).get(timeoutMs, TimeUnit.MILLISECONDS);
- }catch (TimeoutException | InterruptedException | ExecutionException e) {
+ } catch (TimeoutException | InterruptedException | ExecutionException e) {
// Handle timeouts below
}