Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Update Verizon Media copyright notices. | gjoranv | 2021-10-07 | 2 | -2/+2 |
| | |||||
* | Update 2017 copyright notices. | gjoranv | 2021-10-07 | 81 | -81/+81 |
| | |||||
* | allow generated PB files outside source tree | Arne H Juul | 2021-09-22 | 1 | -4/+4 |
| | |||||
* | Avoid race condition regression introduced in #18179 | Tor Brede Vekterli | 2021-06-24 | 1 | -0/+4 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | We would previously check for the presence of pending null-bucket `RequestBucketInfoCommand`s to determine if a pending cluster state was present. We would also attempt to block all bucket delete operations from starting if _any_ operation was pending towards that bucket on a given node, including bucket info requests. The former was rewritten to instead explicitly consider pending cluster state checks instead, as checking null buckets no longer works when using stripes. Unfortunately, due to a long-standing bug with message tracking of `RequestBucketInfoCommand`s, these would _always_ be marked as pending towards the null bucket. Since all ideal state ops would be blocked by null-bucket info requests, this would avoid starting any ideal state op as long as _any_ other op had an info request pending for the target node. This had the desirable (but not explicitly coded for) side effect of inhibiting bucket deletions from racing with half-finished merge operations. It also had the undesirable effect of needlessly blocking ops for completely unrelated buckets. With these changes, we now explicitly handle bucket info requests for single buckets in the `PendingMessageTracker`, allowing inhibition of deletions to work as expected. Also add an explicit check for pending info requests for all ideal state ops to mirror the old behavior (but now per-bucket instead of globally...!). | ||||
* | Dispatch RequestBucketInfoReply for non-existing buckets to correct ↵ | Geir Storli | 2021-06-16 | 2 | -1/+11 |
| | | | | distributor stripe. | ||||
* | Dispatch get and visitor messages to correct distributor stripe. | Geir Storli | 2021-06-03 | 2 | -0/+14 |
| | |||||
* | Initial implementation and wiring of cross-stripe state and DB handling | Tor Brede Vekterli | 2021-04-21 | 2 | -4/+9 |
| | | | | | | | | | | | | | | Introduces the concept of stripe access guards, that ensure safe and non-concurrent access to the underlying state of all running distributor stripes. Also bring back a top-level `BucketDBUpdater` component responsible for managing cluster state/distribution config and all related bucket info fetching for the entire node as a whole. This component abstracts away all stripe-specific operations via the new guard interface. For now, only a single stripe can be used via the new code path, and by default the legacy code path (single stripe acts as an entire distirbutor) is used. New path may be enabled via (non-live) config, but is not yet production ready. | ||||
* | - Change error handling so that both synchonous and asynchronous errors can ↵ | Henning Baldersheim | 2021-02-23 | 1 | -2/+2 |
| | | | | | | | | be reported back from bucket executor. - Treat remapping as an error. - For lidspace compaction job iterator is reset and will be recreated on next invocation. - For bucketmove th ebucket is rechecked and either discarded or restarted. | ||||
* | - Reduce visibility of ClusterState and Distribution. | Henning Baldersheim | 2021-02-19 | 5 | -1/+7 |
| | |||||
* | use size literals in storage | Arne Juul | 2021-02-15 | 1 | -1/+2 |
| | |||||
* | Add noexcept and some other minor code health. | Henning Baldersheim | 2021-02-02 | 2 | -23/+22 |
| | |||||
* | Revert "Properly track execution of BucketTasks and provide sync() and ↵ | Henning Baldersheim | 2021-02-02 | 2 | -22/+23 |
| | | | | order… " | ||||
* | Properly track execution of BucketTasks and provide sync() and orderly shutdown. | Henning Baldersheim | 2021-02-02 | 2 | -23/+22 |
| | |||||
* | Revert "Implement BucketExecutor::sync." | Henning Baldersheim | 2021-02-02 | 2 | -22/+23 |
| | |||||
* | Implement BucketExecutor::sync. | Henning Baldersheim | 2021-02-01 | 2 | -23/+22 |
| | |||||
* | Include exception where needed and use std:.make_unique | Henning Baldersheim | 2021-01-18 | 1 | -3/+1 |
| | |||||
* | GC unused code and remove comment. | Henning Baldersheim | 2021-01-18 | 1 | -1/+0 |
| | |||||
* | Improve readability. | Henning Baldersheim | 2021-01-18 | 1 | -208/+73 |
| | |||||
* | GC unused hasSingleBucketId method. | Henning Baldersheim | 2021-01-18 | 3 | -7/+4 |
| | |||||
* | Remove storageframework dependency not needed. | Henning Baldersheim | 2021-01-18 | 1 | -1/+0 |
| | |||||
* | Merge pull request #15502 from vespa-engine/balder/inline-and-move-returncode | Henning Baldersheim | 2020-11-27 | 8 | -43/+31 |
|\ | | | | | Inline some small constructors and also prefer moving the return code. | ||||
| * | Inline some small constructors and also prefer moving the return code. | Henning Baldersheim | 2020-11-27 | 8 | -43/+31 |
| | | |||||
* | | Use explicit on the right places. | Henning Baldersheim | 2020-11-27 | 2 | -2/+2 |
| | | |||||
* | | GC LoadType and PriorityMapper. | Henning Baldersheim | 2020-11-27 | 5 | -15/+3 |
| | | |||||
* | | GC LoadTypeSet | Henning Baldersheim | 2020-11-27 | 12 | -67/+34 |
|/ | |||||
* | Add noexcept | Henning Baldersheim | 2020-11-26 | 2 | -49/+49 |
| | |||||
* | Comment removed | Henning Baldersheim | 2020-11-26 | 1 | -1/+1 |
| | |||||
* | Use correct storage cluster name. | Henning Baldersheim | 2020-11-26 | 1 | -1/+1 |
| | |||||
* | As we have have now removed the expensive Route member we can further ↵ | Henning Baldersheim | 2020-11-26 | 5 | -97/+78 |
| | | | | | | | | | | compact the message objects. - Compact StorageMessageAddress to 16 bytes by - using reference to cluster name. - Use small enums for protocol and node type. - Avoid having StorageMessage as separate allocation. - Avoid default values | ||||
* | Merge pull request #15466 from ↵ | Henning Baldersheim | 2020-11-25 | 4 | -33/+28 |
|\ | | | | | | | | | vespa-engine/geirst/simplify-storage-message-address Simplify storage message address | ||||
| * | Simplify hash calculation. | Geir Storli | 2020-11-25 | 1 | -7/+2 |
| | | |||||
| * | Create the mbus::Route on demand instead of storing it inside ↵ | Geir Storli | 2020-11-25 | 4 | -33/+33 |
| | | | | | | | | | | | | StorageMessageAddress. Creating and deleting the route is expensive and not used with RPC for Storage API communication. | ||||
* | | Handle different size of std::string. | Tor Egge | 2020-11-25 | 1 | -4/+4 |
| | | |||||
* | | Just return default constructed object. | Henning Baldersheim | 2020-11-25 | 1 | -4/+4 |
| | | |||||
* | | Track size of frequently used objects. | Henning Baldersheim | 2020-11-24 | 1 | -0/+4 |
| | | |||||
* | | Move the error description to a separate allocation as it is rarely used. | Henning Baldersheim | 2020-11-24 | 5 | -30/+67 |
|/ | | | | This reduces the size of frequently used objects. | ||||
* | Remove load type from StorageMessage | Henning Baldersheim | 2020-11-24 | 6 | -25/+39 |
| | |||||
* | Remove load type from MergeStatus and Mergehandler. | Henning Baldersheim | 2020-11-24 | 1 | -1/+1 |
| | |||||
* | - Reorder members for compactness. | Henning Baldersheim | 2020-11-23 | 2 | -8/+4 |
| | | | | | - Avoid needing the definition of Error everywhere. - use std::make_xxx and other c++11 constructs. | ||||
* | Avoid having mutating methods const. | Henning Baldersheim | 2020-11-23 | 1 | -3/+3 |
| | |||||
* | Steal the traces explicit and force moving of traces. Also hide access to ↵ | Henning Baldersheim | 2020-11-23 | 1 | -2/+3 |
| | | | | the root. | ||||
* | Only copy tracelevel. | Henning Baldersheim | 2020-11-23 | 3 | -8/+2 |
| | |||||
* | Use a std:.unique_ptr to make Trace a thin wrapper for TraceNode to make the ↵ | Henning Baldersheim | 2020-11-18 | 1 | -2/+2 |
| | | | | happy path fast. | ||||
* | Explicit copy construction of Trace. | Henning Baldersheim | 2020-11-18 | 3 | -4/+6 |
| | |||||
* | No need to copy an empty object into another empty object. | Henning Baldersheim | 2020-11-18 | 2 | -2/+10 |
| | |||||
* | Reorder members for smaller memory footprint. | Henning Baldersheim | 2020-11-18 | 5 | -23/+28 |
| | |||||
* | - Honour max merge chunk size in one place. | Henning Baldersheim | 2020-10-26 | 5 | -21/+11 |
| | | | | - GC incomplete enable_merge_local_node_choose_docs_optimalization handling. | ||||
* | GC unused _maxBufferSize data member from ApplyBucketDiffReply | Henning Baldersheim | 2020-10-26 | 3 | -8/+3 |
| | |||||
* | - Add class comments. | Henning Baldersheim | 2020-10-19 | 2 | -10/+5 |
| | | | | | | - Reduce code visibility. - Clean up some unused members. - Some code unification. | ||||
* | Move join handling together with split handling. | Henning Baldersheim | 2020-10-18 | 3 | -18/+14 |
| |