aboutsummaryrefslogtreecommitdiffstats
path: root/searchcore
Commit message (Collapse)AuthorAgeFilesLines
* - Add is_search_multi_threaded to proton::matching::BlueprintBuilder for ↵Henning Baldersheim2024-05-291-2/+6
| | | | | | consistency and readability. - Fix CreateBlueprintVisitorHelper to actually detect singlethreaded usage.
* - Separate priority Q functionality into a separate base class ↵Henning Baldersheim2024-05-281-1/+2
| | | | | | | WeakAndPriorityQueue. - Keep thread safety in the SharedWeakAndpriorityQueue. - Only use thread safe variant if more than 1 thread in the search bundle.
* Integrate firstPhaseRank feature with match loop.Tor Egge2024-05-276-22/+114
|
* Remove proton rpc function die.Tor Egge2024-05-243-22/+0
|
* Merge pull request #31254 from ↵Henning Baldersheim2024-05-211-1/+2
|\ | | | | | | | | vespa-engine/toregge/use-std-exit-instead-of-std-quick-exit Use std::_Exit instead of std::quick_exit.
| * Use std::_Exit instead of std::quick_exit.Tor Egge2024-05-211-1/+2
| |
* | Use multiple shards for searchcore persistence conformance test.Tor Egge2024-05-214-10/+36
| |
* | Document searchcore unit test port number allocation.Tor Egge2024-05-217-10/+66
|/
* Use const auto* to indicate that variable is a pointer.Tor Egge2024-05-191-3/+3
|
* Use pointer to vespalib::eval::Value.Tor Egge2024-05-191-3/+3
|
* Remove vdstestlib moduleTor Brede Vekterli2024-05-161-1/+0
| | | | Was only used by `DirConfig`.
* Acknowledge death sentence and leave execution to the master.Henning Baldersheim2024-05-071-2/+8
|
* Adjust down the estimate when its unknown and avoid WhiteListBlueprint being ↵Geir Storli2024-05-061-1/+2
| | | | | | | strict. In cases where only attributes without fast-search are searched with e.g. an OR, this change avoids sorting the WhiteListBlueprint first under the root AND, which is very costly to evaluate.
* Expose imported attributes in state explorer.Tor Egge2024-05-025-22/+164
|
* Wire control of scoring range for weakand scorer from rank/query properties.Henning Baldersheim2024-04-292-3/+6
|
* Expose imported attributes in metrics.Tor Egge2024-04-262-27/+55
|
* Set docid limit early in blueprint subtree.Tor Egge2024-04-172-1/+4
| | | | Cap matching doc count to total doc count.
* Adjust strict cost of bitvector after benchmarking.Geir Storli2024-04-161-3/+7
| | | | A bitvector is used to track active lids and is always part of a query.
* Install Abseil failure signal handler in distributor/proton daemonsTor Brede Vekterli2024-04-102-0/+16
| | | | | | | | | | | | | | | This will attempt to dump a stack trace for the offending thread to stderr, which greatly improves visibility for everyone running Vespa on systems with core dumps disabled. Signal handler chaining is explicitly enabled to allow sanitizer handlers to be called as expected. Note that we install our own signal handlers _after_ the Abseil handlers to avoid noisy stack dumping on `SIGTERM`. It is considered a fatal signal by the failure handler, but the config sentinel uses it as a friendly "please shutdown now, or else" nudge in the common case.
* Allow forcing strict Blueprints when using the new query cost model.Geir Storli2024-04-081-2/+2
|
* Merge pull request #30695 from vespa-engine/havardpe/blueprint-strict-taggingHåvard Pettersen2024-03-2114-65/+83
|\ | | | | tag blueprints with strictness
| * tag blueprints with strictnessHåvard Pettersen2024-03-2014-65/+83
| | | | | | | | | | | | The strict-aware sort function is responsible for propagating and tagging strictness throughout the blueprint tree. Use pre-tagged strictness in fetchPostings, createSearch and createFilterSearch.
* | Reapply add virtual fields to index environment for streaming mode.Tor Egge2024-03-201-0/+2
|/
* Revert "Add virtual fields to index environment for streaming mode."Henning Baldersheim2024-03-191-2/+0
|
* Add virtual fields to index environment for streaming mode.Tor Egge2024-03-191-0/+2
|
* Merge pull request #30611 from ↵Tor Brede Vekterli2024-03-137-98/+166
|\ | | | | | | | | vespa-engine/vekterli/handle-imported-attributes-in-doc-select-fallback-path Use attributes when evaluating selection expression on full documents
| * Use attributes when evaluating selection expression on full documentsTor Brede Vekterli2024-03-127-98/+166
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | Merge pull request #30580 from ↵Geir Storli2024-03-122-69/+75
|\ \ | | | | | | | | | | | | vespa-engine/toregge/rewrite-searchcore-fusion-runner-unit-test-to-gtest Rewrite searchcore fusion runner unit test to gtest.
| * | Rewrite searchcore fusion runner unit test to gtest.Tor Egge2024-03-112-69/+75
| |/
* | Merge pull request #30579 from ↵Geir Storli2024-03-122-38/+35
|\ \ | | | | | | | | | | | | vespa-engine/toregge/rewrite-searchcore-disk-index-cleaner-unit-test-to-gtest Rewrite searchcore DiskIndexCleaner unit test to gtest.
| * | Rewrite searchcore DiskIndexCleaner unit test to gtest.Tor Egge2024-03-112-38/+35
| |/
* | Merge pull request #30578 from ↵Geir Storli2024-03-122-31/+9
|\ \ | | | | | | | | | | | | vespa-engine/toregge/rewrite-searchcore-feed-token-unit-test-to-gtest Rewrite searchcore FeedToken unit test to gtest.
| * | Rewrite searchcore FeedToken unit test to gtest.Tor Egge2024-03-112-31/+9
| |/
* | Merge pull request #30577 from ↵Geir Storli2024-03-121-42/+17
|\ \ | | | | | | | | | | | | vespa-engine/toregge/rewrite-searchcore-feed-and-search-unit-test-to-gtest Rewrite searchcore feed and search unit test to gtest.
| * | Rewrite searchcore feed and search unit test to gtest.Tor Egge2024-03-111-42/+17
| |/
* / Rewrite searchcore attribute flush unit test to gtest.Tor Egge2024-03-112-151/+78
|/
* Rename to reflect that is is a configid, not a search cluster.Henning Baldersheim2024-03-051-3/+3
|
* Cache the query stack if using ranking.queryCache and use it for proper ↵Henning Baldersheim2024-02-295-13/+33
| | | | summary handling
* c++11 for loopsHenning Baldersheim2024-02-291-10/+8
|
* know the in-flow when sorting blueprintsHåvard Pettersen2024-02-231-2/+4
| | | | | | also added the option and tagging mechanic needed to force selected blueprints to be strict even in a non-strict context as well as calculating how much time this saves you.
* - Hide recall terms from ranking.Henning Baldersheim2024-02-191-3/+3
| | | | - Add noexcept.
* vespa.summaryFeatures.cached is always 0.0 (false)Henning Baldersheim2024-02-121-1/+0
|
* Use smaller buffer for reading file headers. And GC some unused code.Henning Baldersheim2024-02-093-35/+18
|
* - Complete dumping of 1 index field before progressing to the next.Henning Baldersheim2024-02-083-19/+19
| | | | | - This prevents allocating memory buffers, and file descriptors for all fields concurrently. - It will reduce memory footprint during flush if there are many fields.
* Add low-level benchmark program for search iterators.Geir Storli2024-02-082-7/+7
| | | | | Currently, it can benchmark the following query operators over an attribute vector: Single term, In, WeightedSet, DotProduct, Or.
* Merge pull request #30199 from vespa-engine/havardpe/explicit-flow-defaultsGeir Storli2024-02-062-0/+6
|\ | | | | make default flow stats more explicit
| * make default flow stats more explicitHåvard Pettersen2024-02-062-0/+6
| | | | | | | | | | | | for both simple and complex leafs account for number of inner children in complex leafs account for seek nesting for complex leafs with children
* | Merge pull request #30186 from ↵Geir Storli2024-02-061-3/+15
|\ \ | |/ |/| | | | | vespa-engine/toregge/track-oldest-config-generation-used-for-streaming-search Track oldest config generation used for streaming search.
| * Track oldest config generation used for streaming search.Tor Egge2024-02-051-3/+15
| |
* | Align flow stats calculation for leaf blueprints.Geir Storli2024-02-051-5/+0
|/ | | | | A special case is added for attributes without a known hit estimate, instead of trying to deduce this based on the size of the (legacy) absolute hit estimate.