aboutsummaryrefslogtreecommitdiffstats
path: root/searchcore/src/tests/proton/common/cachedselect_test.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Single binary for proton common tests.Henning Baldersheim3 days1-7/+2
|
* remove TEST_APPHOOK, TEST_INIT, TEST_DONE and TestAppHåvard Pettersen4 days1-1/+1
|
* Use attributes when evaluating selection expression on full documentsTor Brede Vekterli2024-03-121-67/+106
| | | | | | | | | | | | | | | | | | | | | | | | | This addresses an unintended shortcoming in our handling of imported fields, as these are exposed _only_ through attributes. Document selection evaluation is automatically optimized in the backend by pre-filtering documents that can be fully evaluated by exclusively looking at attribute values (this goes for both selection matching and mismatching). This is done by cloning the selection AST and replacing all applicable field value nodes with corresponding attribute references. However, if a document _cannot_ be evaluated from attributes alone, we fall back to reading it fully from the doc store, after which the original selection is evaluated on it. This is the crux of the problem, and prior to this commit an expression using both an imported field and a non-attribute field would fail to be evaluated since the full document evaluation would not have any knowledge of the attribute. This commit makes it so that also the full document evaluation will use a "patched" AST with all possible field references replaced with attribute lookups. Since we reuse an existing patched AST that was not otherwise used in this code path, there is no added overhead with this approach.
* Update copyrightJon Bratseth2023-10-091-1/+1
|
* Modernize C++ code.Geir Storli2023-08-291-1/+1
|
* Use explicit instantiations of SingleValueNumericPostingAttributeTor Egge2023-03-241-1/+0
| | | | and SingleValueStringPostingAttributeT.
* Reduce creation of Document instances without DocumentTypeRepo.Geir Storli2023-03-131-2/+2
|
* Change from typedef to using in searchcore.Geir Storli2022-12-211-4/+4
|
* Remove 'attribute: huge' from config def file and C++ code.Geir Storli2022-06-081-1/+1
|
* Remove unneeded include statements in searchlib.Tor Egge2022-04-071-2/+0
|
* Remove inlining warnings (searchcore).Tor Egge2022-02-261-0/+2
|
* more descriptive name for header fileArne H Juul2021-12-021-1/+1
|
* track namespace move in documenttypes.defArne H Juul2021-12-021-0/+1
| | | | | | | * For C++ code this introduces a "document::config" namespace, which will sometimes conflict with the global "config" namespace. * Move all forward-declarations of the types DocumenttypesConfig and DocumenttypesConfigBuilder to a common header file.
* Update 2017 copyright notices.gjoranv2021-10-071-1/+1
|
* Explicitly instantiate common attribute update member functions.Tor Egge2020-10-051-1/+1
|
* Revert "Revert "Balder/remove steadytimestamp 2""Henning Baldersheim2019-12-161-3/+3
|
* Revert "Balder/remove steadytimestamp 2"Henning Baldersheim2019-12-161-3/+3
|
* Use std::chrono.Henning Baldersheim2019-12-091-3/+3
|
* Address comment by specifying timeunit in the type.Henning Baldersheim2019-11-201-6/+3
|
* Add typesafe SteadyTimeStamp.Henning Baldersheim2019-11-151-1/+0
|
* Use a steady_clock for the stop watch.Henning Baldersheim2019-11-151-1/+1
|
* doc: -> id:Henning Baldersheim2019-08-161-11/+11
|
* Make tests less verbose when verifying stats.Geir Storli2018-05-151-110/+16
|
* Add pre-document selection than can disqualify a document without retrieving ↵Geir Storli2018-05-151-38/+134
| | | | | | | it from the document store. This selection can be used when expression references at least one single value attribute field and we can disqualify the document if the selection evaluates to false.
* Make member variables in CachedSelect private.Geir Storli2018-05-111-133/+133
|
* Change AttributeContext to use makeReadGuard method on attribute vectors.Tor Egge2018-04-201-1/+0
|
* Remove DocumentTypeRepo::UP typedef.Tor Egge2018-04-051-4/+4
| | | | Remove unneeded includes.
* Update copyright headersJon Bratseth2017-06-141-1/+1
|
* Revert "Update copyright headers"Jon Bratseth2017-06-141-1/+1
|
* Update copyright headersJon Bratseth2017-06-141-1/+1
|
* Revert "Copyright header"Jon Bratseth2017-06-131-1/+1
|
* Copyright headerJon Bratseth2017-06-131-1/+1
|
* Forward declare DocumentType.Henning Baldersheim2017-06-061-0/+1
|
* C++ style fix: Use foo() instead of foo(void)Tor Egge2017-05-241-6/+6
|
* Merge pull request #2177 from yahoo/toregge/add-index-aspect-inspectorGeir Storli2017-04-191-24/+11
|\ | | | | Toregge/add index aspect inspector
| * Stop passing schema to CachedSelect, passing attribute manager is sufficient.Tor Egge2017-04-181-24/+11
| |
* | add override in searchcore moduleArne H Juul2017-04-121-1/+1
|/
* Change schema::DataType and schema::CollectionType to enum class.Geir Storli2017-04-051-25/+26
|
* Make ComponentGuard::get() return a pointer, not a referenceTor Brede Vekterli2017-02-271-1/+1
| | | | With this change, ComponentGuard behaves like other smart handles
* Add mock implementation of attribute manager.Geir Storli2017-02-201-61/+13
|
* Decouple includes.Henning Baldersheim2016-12-161-3/+3
|
* Use schema::DataTypeHenning Baldersheim2016-12-121-8/+6
|
* PublishJon Bratseth2016-06-151-0/+710