summaryrefslogtreecommitdiffstats
path: root/searchlib
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@oath.com>2018-02-06 15:47:27 +0100
committerHenning Baldersheim <balder@oath.com>2018-02-06 15:47:27 +0100
commit986ef1f516426128eb64e758d68796e78184f1e6 (patch)
tree691dcdc9e1315a0c0f289394e28c8dc8a852a4fd /searchlib
parente6ffa3f526005113e5dd59a9451dae6867260cc9 (diff)
Coverage and extended coverage has 'always' been present.
Diffstat (limited to 'searchlib')
-rw-r--r--searchlib/src/vespa/searchlib/common/packets.cpp37
-rw-r--r--searchlib/src/vespa/searchlib/engine/packetconverter.cpp5
2 files changed, 13 insertions, 29 deletions
diff --git a/searchlib/src/vespa/searchlib/common/packets.cpp b/searchlib/src/vespa/searchlib/common/packets.cpp
index 281d0c1541e..21ec6d66fae 100644
--- a/searchlib/src/vespa/searchlib/common/packets.cpp
+++ b/searchlib/src/vespa/searchlib/common/packets.cpp
@@ -952,11 +952,7 @@ FS4Packet_QUERYRESULTX::GetLength()
if ((_features & QRF_GROUPDATA) != 0)
plen += sizeof(uint32_t) + _groupDataLen;
- if ((_features & QRF_COVERAGE) != 0)
- plen += 2 * sizeof(uint64_t);
-
- if ((_features & QRF_EXTENDED_COVERAGE) != 0)
- plen += sizeof(uint64_t) + sizeof(uint32_t);
+ plen += 3 * sizeof(uint64_t) + sizeof(uint32_t);
if ((_features & QRF_PROPERTIES) != 0) {
plen += sizeof(uint32_t);
@@ -998,14 +994,11 @@ FS4Packet_QUERYRESULTX::Encode(FNET_DataBuffer *dst)
dst->WriteBytesFast(_groupData, _groupDataLen);
}
- if ((_features & QRF_COVERAGE) != 0) {
- dst->WriteInt64Fast(_coverageDocs);
- dst->WriteInt64Fast(_activeDocs);
- }
- if ((_features & QRF_EXTENDED_COVERAGE) != 0) {
- dst->WriteInt64Fast(_soonActiveDocs);
- dst->WriteInt32Fast(_coverageDegradeReason);
- }
+ dst->WriteInt64Fast(_coverageDocs);
+ dst->WriteInt64Fast(_activeDocs);
+ dst->WriteInt64Fast(_soonActiveDocs);
+ dst->WriteInt32Fast(_coverageDegradeReason);
+
for (uint32_t i = 0; i < _numDocs; i++) {
dst->WriteBytesFast(_hits[i]._gid.get(), document::GlobalId::LENGTH);
@@ -1079,19 +1072,13 @@ FS4Packet_QUERYRESULTX::Decode(FNET_DataBuffer *src, uint32_t len)
len -= _groupDataLen;
}
- if ((_features & QRF_COVERAGE) != 0) {
- if (len < 2 * sizeof(uint64_t)) goto error;
- _coverageDocs = src->ReadInt64();
- _activeDocs = src->ReadInt64();
- len -= 2 * sizeof(uint64_t);
- }
- if ((_features & QRF_EXTENDED_COVERAGE) != 0) {
- if (len < sizeof(uint64_t) + sizeof(uint32_t)) goto error;
- _soonActiveDocs = src->ReadInt64();
- _coverageDegradeReason = src->ReadInt32();
+ if (len < 3 * sizeof(uint64_t) + sizeof(uint32_t)) goto error;
+ _coverageDocs = src->ReadInt64();
+ _activeDocs = src->ReadInt64();
+ _soonActiveDocs = src->ReadInt64();
+ _coverageDegradeReason = src->ReadInt32();
- len -= sizeof(uint64_t) + sizeof(uint32_t);
- }
+ len -= 3*sizeof(uint64_t) + sizeof(uint32_t);
if ((_features & QRF_MLD) != 0) {
hitSize += 2 * sizeof(uint32_t);
diff --git a/searchlib/src/vespa/searchlib/engine/packetconverter.cpp b/searchlib/src/vespa/searchlib/engine/packetconverter.cpp
index 0697c4631ba..42a811d8948 100644
--- a/searchlib/src/vespa/searchlib/engine/packetconverter.cpp
+++ b/searchlib/src/vespa/searchlib/engine/packetconverter.cpp
@@ -117,14 +117,11 @@ PacketConverter::fromSearchReply(const SearchReply &reply, QUERYRESULTX &packet)
packet.AllocateGroupData(reply.groupResult.size());
memcpy(packet._groupData, &(reply.groupResult[0]), reply.groupResult.size());
}
- packet._features |= QRF_COVERAGE;
+ packet._features |= QRF_COVERAGE | QRF_EXTENDED_COVERAGE;
packet._coverageDocs = reply.coverage.getCovered();
packet._activeDocs = reply.coverage.getActive();
packet._soonActiveDocs = reply.coverage.getSoonActive();
packet._coverageDegradeReason = reply.coverage.getDegradeReason();
- if (reply.request && (reply.request->queryFlags & QFLAG_EXTENDED_COVERAGE)) {
- packet._features |= QRF_EXTENDED_COVERAGE;
- }
if (reply.useWideHits) {
packet._features |= QRF_MLD;
}