diff options
author | Tor Egge <Tor.Egge@yahooinc.com> | 2022-09-08 14:53:23 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-09-08 14:53:23 +0200 |
commit | 69adaa32ce4e1d9c0698c8868ca3dc06acd4486e (patch) | |
tree | 462a69d6aeaf40af59a219e1453177eb0f39f4af /searchsummary | |
parent | 3936430fbc2838bba4fa37087b409361cd1442bc (diff) | |
parent | 215603d0ebcbd996130bfb37313c0b2de7533463 (diff) |
Merge pull request #23986 from vespa-engine/toregge/ignore-summary-field-type-for-abs-distance-dfw-and-positions-dfw
Ignore summary field type for AbsDistanceDFW and PositionsDFW.
Diffstat (limited to 'searchsummary')
-rw-r--r-- | searchsummary/src/vespa/searchsummary/docsummary/positionsdfw.cpp | 27 | ||||
-rw-r--r-- | searchsummary/src/vespa/searchsummary/docsummary/positionsdfw.h | 4 |
2 files changed, 5 insertions, 26 deletions
diff --git a/searchsummary/src/vespa/searchsummary/docsummary/positionsdfw.cpp b/searchsummary/src/vespa/searchsummary/docsummary/positionsdfw.cpp index 1000fee8423..2dd19d8d9ea 100644 --- a/searchsummary/src/vespa/searchsummary/docsummary/positionsdfw.cpp +++ b/searchsummary/src/vespa/searchsummary/docsummary/positionsdfw.cpp @@ -95,26 +95,14 @@ AbsDistanceDFW::findMinDistance(uint32_t docid, GetDocsumsState *state, } void -AbsDistanceDFW::insertField(uint32_t docid, GetDocsumsState *state, ResType type, vespalib::slime::Inserter &target) const +AbsDistanceDFW::insertField(uint32_t docid, GetDocsumsState *state, ResType, vespalib::slime::Inserter &target) const { const auto & all_locations = getAllLocations(state); if (all_locations.empty()) { return; } uint64_t absdist = findMinDistance(docid, state, all_locations.best()); - if (type == RES_INT) { - target.insertLong(absdist); - } else { - vespalib::string value = vespalib::stringify(absdist); - vespalib::Memory data(value.c_str(), value.size()); - - if (type == RES_STRING || type == RES_LONG_STRING) { - target.insertString(data); - } - if (type == RES_LONG_DATA || type == RES_DATA) { - target.insertData(data); - } - } + target.insertLong(absdist); } //-------------------------------------------------------------------------- @@ -181,14 +169,6 @@ insertFromAttr(const attribute::IAttributeVector &attribute, uint32_t docid, ves } } -void checkExpected(ResType type) { - static bool alreadyWarned = false; - if (type == RES_JSONSTRING) return; - if (alreadyWarned) return; - alreadyWarned = true; - LOG(error, "Unexpected summary field type %s", ResultConfig::GetResTypeName(type)); -} - void insertPosV8(int64_t docxy, vespalib::slime::Inserter &target) { int32_t docx = 0; int32_t docy = 0; @@ -240,9 +220,8 @@ void insertV8FromAttr(const attribute::IAttributeVector &attribute, uint32_t doc } // namespace void -PositionsDFW::insertField(uint32_t docid, GetDocsumsState * dsState, ResType type, vespalib::slime::Inserter &target) const +PositionsDFW::insertField(uint32_t docid, GetDocsumsState * dsState, ResType, vespalib::slime::Inserter &target) const { - checkExpected(type); if (_useV8geoPositions) { insertV8FromAttr(get_attribute(*dsState), docid, target); } else { diff --git a/searchsummary/src/vespa/searchsummary/docsummary/positionsdfw.h b/searchsummary/src/vespa/searchsummary/docsummary/positionsdfw.h index d0a38d1004e..67fe0bba5fe 100644 --- a/searchsummary/src/vespa/searchsummary/docsummary/positionsdfw.h +++ b/searchsummary/src/vespa/searchsummary/docsummary/positionsdfw.h @@ -44,7 +44,7 @@ public: bool IsGenerated() const override { return true; } void insertField(uint32_t docid, GetDocsumsState *state, - ResType type, vespalib::slime::Inserter &target) const override; + ResType, vespalib::slime::Inserter &target) const override; static std::unique_ptr<DocsumFieldWriter> create(const char *attribute_name, const IAttributeManager *index_man); @@ -60,7 +60,7 @@ public: typedef std::unique_ptr<PositionsDFW> UP; PositionsDFW(const vespalib::string & attrName, bool useV8geoPositions); bool IsGenerated() const override { return true; } - void insertField(uint32_t docid, GetDocsumsState *state, ResType type, vespalib::slime::Inserter &target) const override; + void insertField(uint32_t docid, GetDocsumsState *state, ResType, vespalib::slime::Inserter &target) const override; static UP create(const char *attribute_name, const IAttributeManager *index_man, bool useV8geoPositions); }; |