summaryrefslogtreecommitdiffstats
path: root/searchsummary
diff options
context:
space:
mode:
authorArne Juul <arnej@yahoo-inc.com>2018-10-23 07:59:58 +0000
committergjoranv <gv@oath.com>2019-01-21 15:09:24 +0100
commit1c466523888fa4c3b4aa73fc65c244dfe83bf0d9 (patch)
treedb744feebe4a0ab1c5b6a927c710aeb1231d958b /searchsummary
parent8e1b5c809fd961e422fef8092c254cecf7281ff4 (diff)
Revert "skip fields which are empty or only have the default value"
This reverts commit e7c9bc3b5d85c2eafef8cd06017304fe0ff3dc47.
Diffstat (limited to 'searchsummary')
-rw-r--r--searchsummary/src/vespa/searchsummary/docsummary/docsumwriter.cpp29
1 files changed, 8 insertions, 21 deletions
diff --git a/searchsummary/src/vespa/searchsummary/docsummary/docsumwriter.cpp b/searchsummary/src/vespa/searchsummary/docsummary/docsumwriter.cpp
index 6679c88e166..8ff45202a40 100644
--- a/searchsummary/src/vespa/searchsummary/docsummary/docsumwriter.cpp
+++ b/searchsummary/src/vespa/searchsummary/docsummary/docsumwriter.cpp
@@ -78,9 +78,6 @@ DynamicDocsumWriter::resolveInputClass(ResolveClassInfo &rci, uint32_t id) const
}
}
-constexpr uint32_t default_32bits_int = (uint32_t)std::numeric_limits<int32_t>::min();
-constexpr uint64_t default_64bits_int = (uint64_t)std::numeric_limits<int64_t>::min();
-
static void convertEntry(GetDocsumsState *state,
const ResConfigEntry *resCfg,
const ResEntry *entry,
@@ -96,40 +93,30 @@ static void convertEntry(GetDocsumsState *state,
case RES_INT:
case RES_SHORT:
case RES_BYTE:
- if (entry->_intval != default_32bits_int) {
- inserter.insertLong(entry->_intval);
- }
+ inserter.insertLong(entry->_intval);
break;
case RES_BOOL:
inserter.insertBool(entry->_intval != 0);
break;
case RES_FLOAT:
case RES_DOUBLE:
- if (! std::isnan(entry->_doubleval)) {
- inserter.insertDouble(entry->_doubleval);
- }
+ inserter.insertDouble(entry->_doubleval);
break;
case RES_INT64:
- if (entry->_int64val != default_64bits_int) {
- inserter.insertLong(entry->_int64val);
- }
+ inserter.insertLong(entry->_int64val);
break;
case RES_STRING:
case RES_LONG_STRING:
case RES_FEATUREDATA:
case RES_XMLSTRING:
entry->_resolve_field(&ptr, &len, &state->_docSumFieldSpace);
- if (len != 0) {
- inserter.insertString(Memory(ptr, len));
- }
+ inserter.insertString(Memory(ptr, len));
break;
case RES_DATA:
case RES_TENSOR:
case RES_LONG_DATA:
entry->_resolve_field(&ptr, &len, &state->_docSumFieldSpace);
- if (len != 0) {
- inserter.insertData(Memory(ptr, len));
- }
+ inserter.insertData(Memory(ptr, len));
break;
case RES_JSONSTRING:
entry->_resolve_field(&ptr, &len, &state->_docSumFieldSpace);
@@ -178,10 +165,10 @@ DynamicDocsumWriter::insertDocsum(const ResolveClassInfo & rci, uint32_t docid,
const Memory field_name(outCfg->_bindname.data(), outCfg->_bindname.size());
ObjectInserter inserter(docsum, field_name);
if (writer != nullptr) {
- if (! writer->isDefaultValue(docid, state)) {
- writer->insertField(docid, &gres, state, outCfg->_type, inserter);
- }
+ //TODO: Need to add test for writer->isDefaultValue
+ writer->insertField(docid, &gres, state, outCfg->_type, inserter);
} else {
+ //TODO: Need to add similar test as writer->isDefaultValue
if (rci.inputClass == rci.outputClass) {
convertEntry(state, outCfg, gres.GetEntry(i), inserter, slime);
} else {