diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2021-03-04 12:45:47 +0000 |
---|---|---|
committer | Henning Baldersheim <balder@yahoo-inc.com> | 2021-03-04 12:45:47 +0000 |
commit | 3d202f545780ee00f3e471a4dea5de7d8faf9ecc (patch) | |
tree | d9461955307d64adee81a12594022e1742dab8cd /searchlib/src/tests/attribute/searchable | |
parent | 65b1933e6b2c1b5a2b2c678490590c2ad1af3cc2 (diff) |
The default implementation of SearchContext::onFind was danegrous and not thread safe.
However it was luckily only used in test. Rewrote test and removed code.
Diffstat (limited to 'searchlib/src/tests/attribute/searchable')
-rw-r--r-- | searchlib/src/tests/attribute/searchable/attribute_searchable_adapter_test.cpp | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/searchlib/src/tests/attribute/searchable/attribute_searchable_adapter_test.cpp b/searchlib/src/tests/attribute/searchable/attribute_searchable_adapter_test.cpp index 659d7da2fe0..1491f41aeb9 100644 --- a/searchlib/src/tests/attribute/searchable/attribute_searchable_adapter_test.cpp +++ b/searchlib/src/tests/attribute/searchable/attribute_searchable_adapter_test.cpp @@ -8,7 +8,7 @@ #include <vespa/searchlib/attribute/attributeguard.h> #include <vespa/searchlib/attribute/attributevector.h> #include <vespa/searchlib/attribute/attribute_read_guard.h> -#include <vespa/searchlib/attribute/extendableattributes.h> +#include <vespa/searchlib/attribute/singlestringattribute.h> #include <vespa/searchlib/attribute/iattributemanager.h> #include <vespa/searchlib/attribute/predicate_attribute.h> #include <vespa/searchlib/attribute/singlenumericattribute.h> @@ -35,7 +35,6 @@ using search::AttributeGuard; using search::AttributeVector; using search::IAttributeManager; using search::IntegerAttribute; -using search::SingleStringExtAttribute; using search::attribute::IAttributeContext; using search::fef::MatchData; using search::fef::MatchDataLayout; @@ -266,9 +265,11 @@ bool search(const string &term, IAttributeManager &attribute_manager, } template <typename T> struct AttributeVectorTypeFinder { - //typedef search::SingleValueStringAttribute Type; - typedef SingleStringExtAttribute Type; - static void add(Type & a, const T & v) { a.add(v, weight); } + typedef search::SingleValueStringAttribute Type; + static void add(Type & a, const T & v) { + a.update(a.getNumDocs()-1, v); + a.commit(); + } }; template <> struct AttributeVectorTypeFinder<int64_t> { typedef search::SingleValueNumericAttribute<search::IntegerAttributeTemplate<int64_t> > Type; |