Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | Revert "Ensure internal messages are flushed before shutting down RPC subsystem" | Tor Brede Vekterli | 2023-10-10 | 9 | -164/+87 | |
| | ||||||
* | Merge pull request #28825 from ↵ | Henning Baldersheim | 2023-10-10 | 9 | -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 lock | Tor Brede Vekterli | 2023-10-06 | 1 | -4/+3 | |
| | | ||||||
| * | Ensure internal messages are flushed before shutting down RPC subsystem | Tor Brede Vekterli | 2023-10-06 | 8 | -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 headers | Jon Bratseth | 2023-10-09 | 6 | -6/+6 | |
| | | ||||||
* | | Update copyright | Jon Bratseth | 2023-10-09 | 775 | -777/+777 | |
|/ | ||||||
* | Remove unused message dispatcher functionality | Tor Brede Vekterli | 2023-10-04 | 3 | -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 component | Tor Brede Vekterli | 2023-10-02 | 1 | -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 Baldersheim | 2023-10-02 | 3 | -13/+2 | |
| | ||||||
* | Remove ancient and unused OpsLogger component | Tor Brede Vekterli | 2023-09-29 | 5 | -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 base | Tor Brede Vekterli | 2023-09-08 | 21 | -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 code | Tor Brede Vekterli | 2023-09-08 | 9 | -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 enum | Tor Brede Vekterli | 2023-09-08 | 2 | -7/+18 | |
| | ||||||
* | Wire distributor operation cancelling to state change edges | Tor Brede Vekterli | 2023-09-07 | 48 | -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 Vekterli | 2023-09-06 | 3 | -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 basis | Tor Brede Vekterli | 2023-09-05 | 3 | -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_entry | Henning Baldersheim | 2023-09-05 | 3 | -5/+5 | |
| | | ||||||
* | | GC unused include | Henning Baldersheim | 2023-09-05 | 1 | -1/+0 | |
| | | ||||||
* | | Constify the context and control acces to the Context._entry field | Henning Baldersheim | 2023-09-05 | 7 | -141/+146 | |
|/ | ||||||
* | Reformat | Henning Baldersheim | 2023-09-05 | 1 | -27/+53 | |
| | ||||||
* | Test for empty string | Henning Baldersheim | 2023-09-05 | 1 | -10/+10 | |
| | ||||||
* | - Rename method for readability | Henning Baldersheim | 2023-09-05 | 4 | -7/+7 | |
| | | | | - Use explicit index based vector iteration as we are exposing index. | |||||
* | Unify on uint16_t. | Henning Baldersheim | 2023-09-05 | 1 | -2/+2 | |
| | ||||||
* | Unify on uint16_t and repair intellij auto conversion. | Henning Baldersheim | 2023-09-05 | 1 | -10/+5 | |
| | ||||||
* | Use faster lookup interface. | Henning Baldersheim | 2023-09-04 | 3 | -4/+19 | |
| | ||||||
* | Use the stored index into the BucketInfoList for direct lookup. | Henning Baldersheim | 2023-09-04 | 4 | -12/+12 | |
| | ||||||
* | Find index and store it in ActiveCopy. | Henning Baldersheim | 2023-09-04 | 4 | -5/+20 | |
| | ||||||
* | Iterate once calling getNode() | Henning Baldersheim | 2023-09-04 | 1 | -13/+14 | |
| | ||||||
* | Move shouldSkipActivationDueToMaintenance to anonymous namespace | Henning Baldersheim | 2023-09-04 | 2 | -8/+11 | |
| | ||||||
* | - push_back => emplace_back | Henning Baldersheim | 2023-09-04 | 10 | -180/+91 | |
| | | | | | - noexcept - less default values in methods | |||||
* | Merge pull request #28376 from vespa-engine/balder/minor-cleanup | Henning Baldersheim | 2023-09-04 | 1 | -4/+4 | |
|\ | | | | | Unify and modernize code and layout | |||||
| * | Better naming | Henning Baldersheim | 2023-09-04 | 1 | -2/+2 | |
| | | ||||||
| * | Unify and modernize code and layout | Henning Baldersheim | 2023-09-04 | 1 | -4/+4 | |
| | | ||||||
* | | When pruning unavailable replicas, use intersection of cluster state and ↵ | Tor Brede Vekterli | 2023-09-04 | 3 | -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 Egge | 2023-08-31 | 1 | -27/+0 | |
| | ||||||
* | Do not generate metrics at all for distributor, there are none. | Henning Baldersheim | 2023-08-29 | 2 | -4/+5 | |
| | ||||||
* | GC stor-bucket-init.def | Henning Baldersheim | 2023-08-30 | 4 | -40/+0 | |
| | ||||||
* | GC traces of messageforwarder | Henning Baldersheim | 2023-08-30 | 3 | -7/+0 | |
| | ||||||
* | GC stor-integritychecker config | Henning Baldersheim | 2023-08-30 | 3 | -41/+0 | |
| | ||||||
* | GC unused config | Henning Baldersheim | 2023-08-30 | 3 | -40/+0 | |
| | ||||||
* | Unify code layout and use auto | Henning Baldersheim | 2023-08-29 | 1 | -139/+67 | |
| | ||||||
* | Remove void statement | Henning Baldersheim | 2023-08-29 | 1 | -1/+0 | |
| | ||||||
* | Let node info for cluster controller be explicit, and not a metric consumer. | Henning Baldersheim | 2023-08-29 | 13 | -75/+150 | |
| | ||||||
* | Modernize code | Henning Baldersheim | 2023-08-28 | 2 | -4/+4 | |
| | ||||||
* | Remove incorrect _doneInitialized check. | Henning Baldersheim | 2023-08-28 | 1 | -25/+20 | |
| | ||||||
* | Add noexecpt | Henning Baldersheim | 2023-08-28 | 2 | -5/+5 | |
| | ||||||
* | - Remove methods not used. | Henning Baldersheim | 2023-08-28 | 2 | -72/+68 | |
| | | | | | - Remove parameters not used. - Make template parameter runtime parameter. | |||||
* | Simplify spec SeqToSet definition | Tor Brede Vekterli | 2023-08-24 | 1 | -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-simplifications | Tor Brede Vekterli | 2023-08-23 | 1 | -5/+5 | |
|\ | | | | | Minor spec simplifications | |||||
| * | Minor spec simplifications | Tor Brede Vekterli | 2023-08-22 | 1 | -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. |