diff options
author | Tor Egge <Tor.Egge@online.no> | 2022-08-16 12:33:51 +0200 |
---|---|---|
committer | Tor Egge <Tor.Egge@online.no> | 2022-08-16 12:33:51 +0200 |
commit | 6175529d752ee709e56fdf12cf1f6ff876647798 (patch) | |
tree | 8e44e8c5af846b293ccd1ae9d8b8aa514a61c794 /searchsummary/src | |
parent | cf579cd8d957b1bb2992d7a86830fbca3a64f82b (diff) |
Don't cache dynamic teaser.
Diffstat (limited to 'searchsummary/src')
-rw-r--r-- | searchsummary/src/vespa/searchsummary/docsummary/dynamicteaserdfw.cpp | 59 |
1 files changed, 27 insertions, 32 deletions
diff --git a/searchsummary/src/vespa/searchsummary/docsummary/dynamicteaserdfw.cpp b/searchsummary/src/vespa/searchsummary/docsummary/dynamicteaserdfw.cpp index 024046b679b..d9878cd2057 100644 --- a/searchsummary/src/vespa/searchsummary/docsummary/dynamicteaserdfw.cpp +++ b/searchsummary/src/vespa/searchsummary/docsummary/dynamicteaserdfw.cpp @@ -375,40 +375,35 @@ DynamicTeaserDFW::makeDynamicTeaser(uint32_t docid, vespalib::stringref input, G state->_dynteaser._query = _juniper->CreateQueryHandle(iq, nullptr); } - if (docid != state->_dynteaser._docid || - _inputFieldEnumValue != state->_dynteaser._input || - _langFieldEnumValue != state->_dynteaser._lang || - !juniper::AnalyseCompatible(_juniperConfig.get(), state->_dynteaser._config)) { - LOG(debug, "makeDynamicTeaser: docid (%d,%d), fieldenum (%d,%d), lang (%d,%d) analyse %s", - docid, state->_dynteaser._docid, - _inputFieldEnumValue, state->_dynteaser._input, - _langFieldEnumValue, state->_dynteaser._lang, - (juniper::AnalyseCompatible(_juniperConfig.get(), state->_dynteaser._config) ? "no" : "yes")); - - if (state->_dynteaser._result != nullptr) - juniper::ReleaseResult(state->_dynteaser._result); - - state->_dynteaser._docid = docid; - state->_dynteaser._input = _inputFieldEnumValue; - state->_dynteaser._lang = _langFieldEnumValue; - state->_dynteaser._config = _juniperConfig.get(); - state->_dynteaser._result = nullptr; - - if (state->_dynteaser._query != nullptr) { - - if (LOG_WOULD_LOG(spam)) { - std::ostringstream hexDump; - hexDump << vespalib::HexDump(input.data(), input.length()); - LOG(spam, "makeDynamicTeaser: docid=%d, input='%s', hexdump:\n%s", - docid, std::string(input.data(), input.length()).c_str(), hexDump.str().c_str()); - } + LOG(debug, "makeDynamicTeaser: docid (%d,%d), fieldenum (%d,%d), lang (%d,%d) analyse %s", + docid, state->_dynteaser._docid, + _inputFieldEnumValue, state->_dynteaser._input, + _langFieldEnumValue, state->_dynteaser._lang, + (juniper::AnalyseCompatible(_juniperConfig.get(), state->_dynteaser._config) ? "no" : "yes")); + + if (state->_dynteaser._result != nullptr) + juniper::ReleaseResult(state->_dynteaser._result); + + state->_dynteaser._docid = docid; + state->_dynteaser._input = _inputFieldEnumValue; + state->_dynteaser._lang = _langFieldEnumValue; + state->_dynteaser._config = _juniperConfig.get(); + state->_dynteaser._result = nullptr; + + if (state->_dynteaser._query != nullptr) { + + if (LOG_WOULD_LOG(spam)) { + std::ostringstream hexDump; + hexDump << vespalib::HexDump(input.data(), input.length()); + LOG(spam, "makeDynamicTeaser: docid=%d, input='%s', hexdump:\n%s", + docid, std::string(input.data(), input.length()).c_str(), hexDump.str().c_str()); + } - auto langid = static_cast<uint32_t>(-1); + auto langid = static_cast<uint32_t>(-1); - state->_dynteaser._result = - juniper::Analyse(_juniperConfig.get(), state->_dynteaser._query, - input.data(), input.length(), docid, _inputFieldEnumValue, langid); - } + state->_dynteaser._result = + juniper::Analyse(_juniperConfig.get(), state->_dynteaser._query, + input.data(), input.length(), docid, _inputFieldEnumValue, langid); } juniper::Summary *teaser = (state->_dynteaser._result != nullptr) |