aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Add feature flag for controlling max feed operation batch sizeTor Brede Vekterli2024-04-127-1/+42
| | | | Currently defaults to 1, which disables batching.
* Merge pull request #30881 from vespa-engine/olaa/stop-writing-suggestionMartin Polden2024-04-111-3/+0
|\ | | | | Stop writing cluster suggestion
| * Stop writing cluster suggestionOla Aunronning2024-04-111-3/+0
| |
* | Merge pull request #30877 from vespa-engine/balder/map-dot-ofHenning Baldersheim2024-04-1166-334/+201
|\ \ | |/ |/| Unify on Map.of
| * Neither keys, nor values can be null.Henning Baldersheim2024-04-111-4/+4
| |
| * Use Set.of() gives a set where contains check if argument is nullHenning Baldersheim2024-04-111-2/+4
| |
| * Fix failing annotator test and singletonMap => Map.ofHenning Baldersheim2024-04-1114-85/+80
| |
| * Unify on Map.ofHenning Baldersheim2024-04-1153-251/+121
| |
* | Merge pull request #30880 from vespa-engine/hmusum/guard-against-null-urlHarald Musum2024-04-111-0/+2
|\ \ | | | | | | Require url to be non-null
| * | Require url to be non-nullHarald Musum2024-04-111-0/+2
| |/
* | Merge pull request #30878 from vespa-engine/hmusum/validate-model-urlHarald Musum2024-04-115-5/+50
|\ \ | |/ |/| Validate url for models
| * Update ↵Bjørn Christian Seime2024-04-111-3/+3
| | | | | | | | config-model/src/test/java/com/yahoo/vespa/model/container/component/ModelTest.java
| * Use assertThrowsHarald Musum2024-04-111-9/+6
| |
| * Use valid url in testsHarald Musum2024-04-112-2/+2
| |
| * Validate url for modelsHarald Musum2024-04-113-3/+51
|/
* Merge pull request #30876 from vespa-engine/balder/use-list-dot-ofHarald Musum2024-04-1192-347/+247
|\ | | | | Balder/use list dot of
| * Arrays.asList => List.ofHenning Baldersheim2024-04-1150-176/+117
| |
| * Collections.emptyXXX + Collections.singletonXXX => List/Set/Map.ofHenning Baldersheim2024-04-1048-177/+136
|/
* Merge pull request #30874 from ↵Henning Baldersheim2024-04-102-10/+1
|\ | | | | | | | | vespa-engine/toregge/remove-settings-for-debian-10-and-amzn-2-from-cmake-setup Remove settings for Debian 10 and Amazon Linux 2 from cmake setup.
| * Remove settings for Debian 10 and Amazon Linux 2 from cmake setup.Tor Egge2024-04-102-10/+1
|/
* Merge pull request #30873 from ↵v8.329.17Tor Brede Vekterli2024-04-104-0/+25
|\ | | | | | | | | vespa-engine/vekterli/install-abseil-failure-handler Install Abseil failure signal handler in distributor/proton daemons
| * Install Abseil failure signal handler in distributor/proton daemonsTor Brede Vekterli2024-04-104-0/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | Merge pull request #30869 from ↵Tor Egge2024-04-1030-63/+125
|\ \ | | | | | | | | | | | | vespa-engine/toregge/improve-error-message-when-field-cannot-have-attribute-aspect Improve error message when field cannot have attribute aspect.
| * | Drop improved error message for single value struct field.Tor Egge2024-04-102-8/+0
| | |
| * | Improve error message when field cannot have attribute aspect.Tor Egge2024-04-1030-63/+133
| | |
* | | Merge pull request #30868 from vespa-engine/vekterli/unsigned-trace-levelHenning Baldersheim2024-04-102-10/+10
|\ \ \ | | | | | | | | Pass trace level as `uint32_t`, which is the underlying type
| * | | Pass trace level as `uint32_t`, which is the underlying typeTor Brede Vekterli2024-04-102-10/+10
| | |/ | |/|
* | | Merge pull request #30870 from ↵Geir Storli2024-04-102-86/+18
|\ \ \ | | | | | | | | | | | | | | | | vespa-engine/havardpe/consolidate-sorting-strategies consolidate solutions into a single heuristic algorithm
| * | | consolidate solutions into a single heuristic algorithmHåvard Pettersen2024-04-102-86/+18
|/ / / | | | | | | | | | use error relative to minimal cost rather than error potential
* | | Merge pull request #30867 from vespa-engine/havardpe/require-less-exact-numbersHåvard Pettersen2024-04-101-7/+7
|\ \ \ | |/ / |/| | add some comparison slack to improve robustness
| * | add some comparison slack to improve robustnessHåvard Pettersen2024-04-101-7/+7
| |/
* | Merge pull request #30860 from ↵Tor Brede Vekterli2024-04-1022-136/+800
|\ \ | |/ |/| | | | | vespa-engine/vekterli/persistence-locking-feed-op-batching Support pipelining (batching) of mutating ops to same bucket
| * Ensure parameter evaluation order does not have side effectsTor Brede Vekterli2024-04-103-4/+7
| |
| * Ensure SetUp/TearDown symmetry with test superclassTor Brede Vekterli2024-04-101-2/+18
| | | | | | | | | | Can't initialize members in constructor that depend on objects that are subsequently reset by the superclass' `SetUp()` method.
| * Low-level message fetch routine must not implicitly unlock mutexTor Brede Vekterli2024-04-091-1/+1
| | | | | | | | | | | | | | Implicitly unlocking messes up higher level assumptions about when locks are held and thus cannot be safely done. Lock will be unlocked immediately after anyway, so this does not seem like a useful optimization.
| * Ensure all async reply processing executor tasks have completedTor Brede Vekterli2024-04-091-0/+1
| |
| * Use `static_cast` instead of `dynamic_cast`Tor Brede Vekterli2024-04-091-3/+3
| | | | | | | | | | Downcast-safe type invariant shall be maintained by the message's own type ID tracking. If it's not, we have bigger problems.
| * Rewrite test to manually start single persistence threadTor Brede Vekterli2024-04-091-21/+11
| | | | | | | | Avoids the need for barriers to avoid stepping on the thread's toes
| * Add Abseil failure signal handler to test runner to get stack dumps for crashesTor Brede Vekterli2024-04-092-1/+11
| |
| * Ensure visibility of max batch size reconfiguration in persistence threadTor Brede Vekterli2024-04-091-1/+10
| |
| * Support pipelining (batching) of mutating ops to same bucketTor Brede Vekterli2024-04-0920-132/+767
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bucket operations require either exclusive (single writer) or shared (multiple readers) access. Prior to this commit, this means that many enqueued feed operations to the same bucket introduce pipeline stalls due to each operation having to wait for all prior operations to the bucket to complete entirely (including fsync of WAL append). This is a likely scenario when feeding a document set that was previously acquired through visiting, as such documents will inherently be output in bucket-order. With this commit, a configurable number of feed operations (put, remove and update) bound for the exact same bucket may be sent asynchronously to the persistence provider in the context of the _same_ write lock. This mirrors how merge operations work for puts and removes. Batching is fairly conservative, and will _not_ batch across further messages when any of the following holds: * A non-feed operation is encountered * More than one mutating operation is encountered for the same document ID * No more persistence throttler tokens can be acquired * Max batch size has been reached Updating the bucket DB, assigning bucket info and sending replies is deferred until _all_ batched operations complete. Max batch size is (re-)configurable live and defaults to a batch size of 1, which shall have the exact same semantics as the legacy behavior. Additionally, clock sampling for persistence threads have been abstracted away to allow for mocking in tests (no need for sleep!).
* | Merge pull request #30723 from vespa-engine/renovate/questdb.vespa.versionHenning Baldersheim2024-04-102-5/+10
|\ \ | | | | | | Update dependency org.questdb:questdb to v7.4.0
| * | Follow api changeHenning Baldersheim2024-04-101-4/+9
| | |
| * | Update dependency org.questdb:questdb to v7.4.0renovate[bot]2024-04-101-1/+1
| | |
* | | Merge pull request #30866 from vespa-engine/renovate/aws-java-sdk-monorepoHenning Baldersheim2024-04-101-1/+1
|\ \ \ | | | | | | | | Update aws-java-sdk monorepo to v1.12.698
| * | | Update aws-java-sdk monorepo to v1.12.698renovate[bot]2024-04-101-1/+1
| |/ /
* | | Merge pull request #30809 from vespa-engine/jobergum/add-context-cachingJo Kristian Bergum2024-04-107-149/+304
|\ \ \ | |/ / |/| | Add onnx output caching to embedder (allow different post-processing of model outputs)
| * | cache more and re-factorJo Kristian Bergum2024-04-082-68/+109
| | |
| * | Key by embedder id and don't recompute inputsJon Bratseth2024-04-075-78/+87
| | |
| * | Add equivalent to `Map.computeIfAbsent()` to simplify typical usage of the cacheBjørn Christian Seime2024-04-044-22/+12
| | | | | | | | | | | | Current interface requires a lot of boilerplate code.