Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Reduce amount of inlining for large methods | Henning Baldersheim | 2019-10-14 | 1 | -0/+3 |
| | |||||
* | Don't recompute bucket key inside merge function | Tor Brede Vekterli | 2019-10-10 | 1 | -3/+8 |
| | |||||
* | Always process Get replies to avoid racing with reconfigs | Tor Brede Vekterli | 2019-10-10 | 2 | -4/+11 |
| | |||||
* | Add unit tests for starting Gets outside distributor core | Tor Brede Vekterli | 2019-10-09 | 2 | -9/+55 |
| | |||||
* | Rewrite read-only DB updating to use the linear merge-based API | Tor Brede Vekterli | 2019-10-09 | 2 | -5/+42 |
| | | | | Avoids O(n) explicit inserts in favor of a bulk load. | ||||
* | Support thread-safe metric updates | Tor Brede Vekterli | 2019-10-09 | 4 | -20/+45 |
| | | | | Currently only used for code paths touched by Get operations. | ||||
* | Allow executing Get operations outside the main distributor thread | Tor Brede Vekterli | 2019-10-08 | 8 | -11/+83 |
| | | | | Requires _both_ B-tree DB to be used _and_ stale reads to be enabled. | ||||
* | Add test-and-set failures as own distributor metric | Tor Brede Vekterli | 2019-10-07 | 3 | -4/+31 |
| | | | | | | | Would otherwise be counted under mysterious "storagefailure" catch-all category. Currently not tracked under aggregate failure sum metric, as these are not really "failures" since TaS-failures are expected to happen and do not indicate problems in the backend. | ||||
* | Remove currently unused member variable | Tor Brede Vekterli | 2019-10-07 | 3 | -9/+4 |
| | |||||
* | Rewrite Get operation starting to use explicit snapshotting | Tor Brede Vekterli | 2019-10-03 | 17 | -114/+185 |
| | |||||
* | Add support for snapshotting all state required for routing a bucket operation | Tor Brede Vekterli | 2019-10-01 | 10 | -11/+490 |
| | | | | | | Let BucketDBUpdater expose a snapshotting function which will handle database routing based on the requested bucket and any pending cluster state transition. | ||||
* | Add memory load-fences that match existing corresponding store-fences | Tor Brede Vekterli | 2019-09-27 | 1 | -1/+4 |
| | |||||
* | Let GetOperation take in explicit database read guard | Tor Brede Vekterli | 2019-09-27 | 5 | -11/+19 |
| | | | | | Use a `shared_ptr` to enable multiple operations to share the same logical snapshot. | ||||
* | Disable old, non-deterministic test | Tor Brede Vekterli | 2019-09-27 | 1 | -1/+1 |
| | | | | Needs to be rewritten or discarded. | ||||
* | Add config option for using B-tree bucket DB in distributor | Tor Brede Vekterli | 2019-09-24 | 16 | -18/+89 |
| | | | | | | Still disabled by default; this will be swapped later. Expose read guard generation for easier debugging. Add some explicit tests for read guard snapshot semantics. | ||||
* | Add config override for simulating bucket info request processing latency | Tor Brede Vekterli | 2019-09-20 | 4 | -10/+22 |
| | | | | | | | | Simulates added request latency caused by the BucketManager computing bucket ownership for a very large number of buckets. Fetched at BucketManager init only, so not a dynamic config. This is only meant for internal testing so should not have any practical consequences. | ||||
* | Inhibit merges when ideal node is unavailable in pending state | Tor Brede Vekterli | 2019-09-19 | 4 | -34/+64 |
| | | | | | | | | | | Upon entering a cluster state transition edge the distributor will prune all replicas from its DB that are on nodes that are unavailable in the _pending_ state. As long as this state is pending, the _current_ state will include these nodes as available. But since replicas for the unavailable node(s) have been pruned away, started merges that involve these nodes as part of their chain are doomed to fail. We therefore inhibit such merges from being started in the first place. | ||||
* | Allow Get operations through when content node is in Maintenance mode | Tor Brede Vekterli | 2019-09-18 | 2 | -4/+26 |
| | | | | | If Gets are bounced by Maintenance nodes, operations that take place in a two-phase state transition window Up->Maintenance will be aborted. | ||||
* | Add config overrides for simulating processing of large bucket sets | Tor Brede Vekterli | 2019-09-17 | 6 | -3/+50 |
| | | | | | | | Allows injecting artificial thread delays during bucket DB pruning and merging on the distributor. By default, of course, will not inject any delays at all. | ||||
* | Unify on fastos::time(). | Henning Baldersheim | 2019-08-28 | 1 | -1/+2 |
| | |||||
* | Avoid the last usages of time(0/NULL/nullptr) in the codebase. | Henning Baldersheim | 2019-08-26 | 1 | -3/+3 |
| | |||||
* | Avoid calling time(nullptr) | Henning Baldersheim | 2019-08-26 | 1 | -4/+5 |
| | |||||
* | time(0) to chrono::steady_clock. | Henning Baldersheim | 2019-08-23 | 3 | -8/+9 |
| | |||||
* | Remove v6 and v7 from java side. | Henning Baldersheim | 2019-08-21 | 1 | -9/+0 |
| | |||||
* | Revert "Revert "doc: -> id:"" | Henning Baldersheim | 2019-08-21 | 1 | -5/+0 |
| | |||||
* | Revert "doc: -> id:" | Henning Baldersheim | 2019-08-21 | 1 | -0/+5 |
| | |||||
* | GC unused code | Henning Baldersheim | 2019-08-19 | 1 | -5/+0 |
| | |||||
* | Merge pull request #10325 from ↵ | Tor Brede Vekterli | 2019-08-19 | 7 | -34/+123 |
|\ | | | | | | | | | vespa-engine/vekterli/add-minimal-bucket-db-read-snapshot-guard-interface Add minimal bucket DB read snapshot guard interface | ||||
| * | Add missing whitespace | Tor Brede Vekterli | 2019-08-19 | 1 | -1/+1 |
| | | |||||
| * | Use snapshot read guard for Get operations | Tor Brede Vekterli | 2019-08-19 | 1 | -16/+12 |
| | | |||||
| * | Add minimal snapshot read guard interface to bucket DB | Tor Brede Vekterli | 2019-08-19 | 6 | -18/+111 |
| | | | | | | | | | | | | | | Only exposes enough functionality to be used for Get operations for now. Enable free-lists for underlying replica `ArrayStore`. Legacy `MapBucketDatabase` read guard is _not_ thread safe, as it will never be used for non-blocking reads. | ||||
* | | Merge pull request #10313 from vespa-engine/balder/remove-doc-ids-part-3 | Henning Baldersheim | 2019-08-19 | 12 | -204/+171 |
|\ \ | | | | | | | doc: -> id: | ||||
| * | | Update test with enough significant bits. | Henning Baldersheim | 2019-08-19 | 1 | -1/+1 |
| | | | |||||
| * | | Not completely removed yet... | Henning Baldersheim | 2019-08-19 | 1 | -0/+5 |
| | | | |||||
| * | | Remove DocIdString outside of document | Henning Baldersheim | 2019-08-19 | 7 | -129/+92 |
| | | | |||||
| * | | doc: -> id: | Henning Baldersheim | 2019-08-16 | 6 | -80/+79 |
| |/ | |||||
* | | Merge pull request #10261 from ↵ | Tor Brede Vekterli | 2019-08-19 | 1 | -0/+18 |
|\ \ | |/ |/| | | | | | vespa-engine/vekterli/set-status-page-basic-http-security-headers Set basic HTTP security headers on status pages served from backend | ||||
| * | Set basic HTTP security headers on status pages served from backend | Tor Brede Vekterli | 2019-08-13 | 1 | -0/+18 |
| | | | | | | | | | | | | We should already escape everything printed on these pages, but as part of a defense in depth strategy we use a restrictive set of HTTP security headers to minimize the impact in the case of a regression or bug. | ||||
* | | Merge pull request #10227 from vespa-engine/balder/remove-legacy-docids | Henning Baldersheim | 2019-08-15 | 1 | -15/+0 |
|\ \ | | | | | | | Balder/remove legacy docids | ||||
| * | | Remove legacy orderdoc, groupdoc, userdoc documentids | Henning Baldersheim | 2019-08-09 | 1 | -15/+0 |
| | | | |||||
* | | | Follow up from review comments. | Henning Baldersheim | 2019-08-15 | 2 | -11/+0 |
|/ / | |||||
* / | Remove visitor ordering and order selection. | Henning Baldersheim | 2019-08-09 | 7 | -228/+25 |
|/ | |||||
* | Remove the use and testing of legacy groupdoc/userdoc/orderdoc document ids. | Henning Baldersheim | 2019-08-09 | 10 | -338/+64 |
| | |||||
* | Adjust format string for bucket db updater. | Tor Egge | 2019-08-07 | 1 | -1/+1 |
| | |||||
* | Use std::_Exit instead of std::quick_exit. | Tor Egge | 2019-08-06 | 1 | -1/+1 |
| | |||||
* | Adjust forward declaration for IdealStateManagerTest. | Tor Egge | 2019-07-31 | 1 | -1/+1 |
| | |||||
* | Use enum class for storage::spi::Result::ErrorType. | Tor Egge | 2019-07-30 | 9 | -31/+31 |
| | |||||
* | Use proper scope for enum constants. | Tor Egge | 2019-07-30 | 1 | -3/+3 |
| | |||||
* | Assert once (per version) on broken bucket DB invariants | Tor Brede Vekterli | 2019-07-02 | 1 | -6/+8 |
| | | | | | | A conservative approach to tracking down any unknown edge cases here since it's not known if any particular applications may trigger it more often than others. | ||||
* | Promote log level for DB pruning elision decisions | Tor Brede Vekterli | 2019-06-28 | 1 | -1/+3 |
| |