summaryrefslogtreecommitdiffstats
path: root/storage
Commit message (Collapse)AuthorAgeFilesLines
...
* Revert "Ensure internal messages are flushed before shutting down RPC subsystem"Tor Brede Vekterli2023-10-109-164/+87
|
* Merge pull request #28825 from ↵Henning Baldersheim2023-10-109-87/+164
|\ | | | | | | | | vespa-engine/vekterli/ensure-internal-messages-flushed-prior-to-rpc-shutdown Ensure internal messages are flushed before shutting down RPC subsystem
| * Move async message queue signal notification inside lockTor Brede Vekterli2023-10-061-4/+3
| |
| * Ensure internal messages are flushed before shutting down RPC subsystemTor Brede Vekterli2023-10-068-83/+161
| | | | | | | | | | | | | | | | | | | | This moves RPC shutdown from being the _first_ thing that happens to being the _last_ thing that happens during storage chain shutdown. To avoid concurrent client requests from the outside reaching internal components during the flushing phases, the Bouncer component will now explicitly and immediately reject incoming RPCs after closing and all replies will be silently swallowed (no one is listening for them at that point anyway).
* | Correct copyright headersJon Bratseth2023-10-096-6/+6
| |
* | Update copyrightJon Bratseth2023-10-09775-777/+777
|/
* Remove unused message dispatcher functionalityTor Brede Vekterli2023-10-043-77/+24
| | | | | | | Only the reply dispatcher functionality is ever used. Also rename shutdown function to raise less eyebrows from a case of mistaken identity with `std::terminate`...
* Remove unused code branch in Bouncer componentTor Brede Vekterli2023-10-021-8/+0
| | | | | | For a long time now, content nodes have transitioned directly from Down to Up on startup, and they will never pass through an Initializing state (remnant from spinning rust days).
* No need to have this memory trap enabled anymore.Henning Baldersheim2023-10-023-13/+2
|
* Remove ancient and unused OpsLogger componentTor Brede Vekterli2023-09-295-200/+0
| | | | | | Although unused, its presence in the chain causes an indirect call for each message passing by in either direction, which is entirely pointless.
* Remove remaining deprecated "revert" functionality from code baseTor Brede Vekterli2023-09-0821-203/+6
| | | | | | Serialization code can safely be removed, as no revert-related messages have ever flown across the wire in the new serialization format.
* Remove deprecated "revert" functionality from distributor codeTor Brede Vekterli2023-09-089-136/+7
| | | | | | This is a remnant from the VDS days and can only work when the backend is a multi-version store. Code has been explicitly config model-disabled for Proton since day one.
* Disambiguate outcome of replica pruning by using an explicit enumTor Brede Vekterli2023-09-082-7/+18
|
* Wire distributor operation cancelling to state change edgesTor Brede Vekterli2023-09-0748-327/+965
| | | | | | | | | | | | | | | | | | | | | | | | This introduces cancellation of pending operations/messages to content nodes in the following scenarios: * One or more content nodes become unavailable in a newly received cluster state version (triggered when first received, i.e. at the pending state start edge). * One or more nodes are removed from the distribution config. * The set of available distributors changes, which in turn changes the ownership of a fraction of the set of super buckets. Pending operations to buckets that were owned by the current distributor in the previous state, but not in the new state, are all cancelled. Introduce cancellation support for internal maintenance operations. As part of this, move `CancelScope` tracking out into the parent `Operation` class to unify cancellation tracking across both client and maintenance operations. Remove interface vs. impl indirection for `PersistenceMessageTracker` since it's only ever had a single implementation and it likely never will have another.
* Merge pull request #28414 from ↵Tor Brede Vekterli2023-09-063-62/+155
|\ | | | | | | | | vespa-engine/vekterli/add-predicated-bucket-msg-fn-to-message-tracker Enumerate pending message IDs on a bucket predicate basis
| * Enumerate pending message IDs on a bucket predicate basisTor Brede Vekterli2023-09-053-62/+155
| | | | | | | | | | | | | | | | | | Lets a caller selectively enumerate all IDs of messages pending towards buckets that match a caller-provided predicate function. A separate message ID callback is invoked per distinct message. Also remove hard-coded multi-index numeric indices in favor of named constants.
* | Make modification evident by renaming entry to set_entryHenning Baldersheim2023-09-053-5/+5
| |
* | GC unused includeHenning Baldersheim2023-09-051-1/+0
| |
* | Constify the context and control acces to the Context._entry fieldHenning Baldersheim2023-09-057-141/+146
|/
* ReformatHenning Baldersheim2023-09-051-27/+53
|
* Test for empty stringHenning Baldersheim2023-09-051-10/+10
|
* - Rename method for readabilityHenning Baldersheim2023-09-054-7/+7
| | | | - Use explicit index based vector iteration as we are exposing index.
* Unify on uint16_t.Henning Baldersheim2023-09-051-2/+2
|
* Unify on uint16_t and repair intellij auto conversion.Henning Baldersheim2023-09-051-10/+5
|
* Use faster lookup interface.Henning Baldersheim2023-09-043-4/+19
|
* Use the stored index into the BucketInfoList for direct lookup.Henning Baldersheim2023-09-044-12/+12
|
* Find index and store it in ActiveCopy.Henning Baldersheim2023-09-044-5/+20
|
* Iterate once calling getNode()Henning Baldersheim2023-09-041-13/+14
|
* Move shouldSkipActivationDueToMaintenance to anonymous namespaceHenning Baldersheim2023-09-042-8/+11
|
* - push_back => emplace_backHenning Baldersheim2023-09-0410-180/+91
| | | | | - noexcept - less default values in methods
* Merge pull request #28376 from vespa-engine/balder/minor-cleanupHenning Baldersheim2023-09-041-4/+4
|\ | | | | Unify and modernize code and layout
| * Better namingHenning Baldersheim2023-09-041-2/+2
| |
| * Unify and modernize code and layoutHenning Baldersheim2023-09-041-4/+4
| |
* | When pruning unavailable replicas, use intersection of cluster state and ↵Tor Brede Vekterli2023-09-043-7/+47
|/ | | | | | | | | | | | distribution config For a node to be considered available, it needs to be present and available in the current cluster state, as well as be part of a valid group in the distribution config itself. If either of these conditions are not satisfied, the node will be considered unavailable. The distributor will remove all knowledge of replicas on such nodes from its internal bucket DB.
* Remove dead code from FileStorManager unit test.Tor Egge2023-08-311-27/+0
|
* Do not generate metrics at all for distributor, there are none.Henning Baldersheim2023-08-292-4/+5
|
* GC stor-bucket-init.defHenning Baldersheim2023-08-304-40/+0
|
* GC traces of messageforwarderHenning Baldersheim2023-08-303-7/+0
|
* GC stor-integritychecker configHenning Baldersheim2023-08-303-41/+0
|
* GC unused configHenning Baldersheim2023-08-303-40/+0
|
* Unify code layout and use autoHenning Baldersheim2023-08-291-139/+67
|
* Remove void statementHenning Baldersheim2023-08-291-1/+0
|
* Let node info for cluster controller be explicit, and not a metric consumer.Henning Baldersheim2023-08-2913-75/+150
|
* Modernize codeHenning Baldersheim2023-08-282-4/+4
|
* Remove incorrect _doneInitialized check.Henning Baldersheim2023-08-281-25/+20
|
* Add noexecptHenning Baldersheim2023-08-282-5/+5
|
* - Remove methods not used.Henning Baldersheim2023-08-282-72/+68
| | | | | - Remove parameters not used. - Make template parameter runtime parameter.
* Simplify spec SeqToSet definitionTor Brede Vekterli2023-08-241-3/+3
| | | | | | A sequence of length n is defined as a function whose domain is equal to 1..n (note: 1-indexing), so just use the domain directly instead of manually constructing the range.
* Merge pull request #28111 from vespa-engine/vekterli/minor-spec-simplificationsTor Brede Vekterli2023-08-231-5/+5
|\ | | | | Minor spec simplifications
| * Minor spec simplificationsTor Brede Vekterli2023-08-221-5/+5
| | | | | | | | | | | | | | | | - Nat (the set of natural numbers) is already present in Integers, so no need to extend Naturals. - Instead of computing cardinality of constant sets to verify that that the provided set has at least one element, just compare against the empty set.