Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | optionalEnqueue -> enque_or_process | Henning Baldersheim | 2020-07-09 | 2 | -5/+5 | |
| | ||||||
* | Merge branch 'master' into balder/skip-communicationmanager-only | Henning Baldersheim | 2020-07-09 | 2 | -18/+16 | |
|\ | ||||||
| * | Non semantic cleanup of communicationmanager prior to semantic change. | Henning Baldersheim | 2020-07-08 | 2 | -19/+17 | |
| | | ||||||
* | | Config control over what treads to skip. | Henning Baldersheim | 2020-07-09 | 3 | -13/+46 | |
| | | ||||||
* | | Remove assert that i snow possible during testing. | Henning Baldersheim | 2020-07-08 | 1 | -4/+4 | |
| | | ||||||
* | | Since requests are now exeuted by caller storge must be open to send anything. | Henning Baldersheim | 2020-07-08 | 1 | -2/+2 | |
| | | ||||||
* | | Skip communication manager thread for requests. | Henning Baldersheim | 2020-07-08 | 1 | -6/+5 | |
|/ | ||||||
* | Reduce log level of bucket DB pruning elision message | Tor Brede Vekterli | 2020-07-08 | 1 | -1/+1 | |
| | | | | | | | Was originally set to `info` to help track down the source of an assertion failure that should not be possible to trigger and that only happened once. Many moons later it has yet to reappear, so removing some log noise that could only be interesting to me. | |||||
* | Merge pull request #13824 from vespa-engine/toregge/use-external-depends | Tor Egge | 2020-07-08 | 1 | -0/+1 | |
|\ | | | | | Use EXTERNAL_DEPENDS for external dependencies. | |||||
| * | Use EXTERNAL_DEPENDS for external dependencies. | Tor Egge | 2020-07-07 | 1 | -0/+1 | |
| | | ||||||
* | | Merge pull request #13819 from ↵ | Tor Brede Vekterli | 2020-07-08 | 18 | -94/+314 | |
|\ \ | |/ |/| | | | | | vespa-engine/vekterli/basic-snapshot-support-for-content-node-bucket-db Vekterli/basic snapshot support for content node bucket db | |||||
| * | Use bucket DB read guards for metric and status aggregation | Tor Brede Vekterli | 2020-07-07 | 4 | -17/+34 | |
| | | ||||||
| * | Expose ReadGuard via AbstractLockableMap interface | Tor Brede Vekterli | 2020-07-07 | 16 | -78/+281 | |
| | | | | | | | | | | | | | | * Add working B-tree snapshot read guard impl * Add placeholder wrapper read guard for legacy DB * Enforce value const-ness of existing for_each_chunked iteration API * Return read guard entries by value instead of modifying ref argument | |||||
* | | Consolidate search for GTest. | Tor Egge | 2020-07-07 | 10 | -10/+0 | |
| | | ||||||
* | | Use module source dependencies. | Tor Egge | 2020-07-07 | 17 | -38/+0 | |
| | | ||||||
* | | Merge pull request #13804 from ↵ | Henning Baldersheim | 2020-07-06 | 1 | -1/+14 | |
|\ \ | |/ |/| | | | | | vespa-engine/balder/let-sequencer-type-be-configurable Let sequencer type be configurable | |||||
| * | Do not access object has been moved away. | Henning Baldersheim | 2020-07-06 | 1 | -1/+1 | |
| | | ||||||
| * | Let sequencer type be configurable | Henning Baldersheim | 2020-07-06 | 1 | -1/+14 | |
| | | ||||||
* | | Merge pull request #13798 from ↵ | Tor Brede Vekterli | 2020-07-06 | 19 | -783/+23 | |
|\ \ | |/ |/| | | | | | vespa-engine/vekterli/remove-legacy-distributor-bucket-database-implementation Remove legacy distributor bucket DB implementation and config wiring | |||||
| * | Remove legacy distributor bucket DB implementation and config wiring | Tor Brede Vekterli | 2020-07-03 | 19 | -783/+23 | |
| | | ||||||
* | | Merge pull request #13796 from vespa-engine/arnej/less-exit-calls-2 | Arne H Juul | 2020-07-05 | 1 | -1/+1 | |
|\ \ | |/ |/| | Arnej/less exit calls 2 | |||||
| * | avoid naked exit | Arne Juul | 2020-07-03 | 1 | -1/+1 | |
| | | ||||||
* | | Unify content node and distributor B-tree databases | Tor Brede Vekterli | 2020-07-02 | 17 | -765/+365 | |
|/ | | | | | | * Rewrite distributor B-tree DB in terms of generic implementation * Move out merger and read guard types so they can be used with both content and distributor databases. | |||||
* | Since there is not a well defined contract for the the sendReply interface, | Henning Baldersheim | 2020-07-01 | 10 | -3/+36 | |
| | | | | | | I add a stricter sendReplyDirectly interface where the caller guarantees that he has no hidden requirements that the calle should be aware of. This will avoid a task switch when propagating the reply. | |||||
* | Merge pull request #13768 from ↵ | Henning Baldersheim | 2020-07-01 | 2 | -14/+7 | |
|\ | | | | | | | | | vespa-engine/balder/avoid-dispatch-on-reply-in-bucket-manager Bucket manager also dispatches directly. | |||||
| * | Bucket manager also dispatches directly. | Henning Baldersheim | 2020-07-01 | 2 | -14/+7 | |
| | | ||||||
* | | Need this dispatching still to avoid deadlocks. | Henning Baldersheim | 2020-07-01 | 2 | -6/+8 | |
| | | ||||||
* | | Skip dispatching on reply in FileStorManager | Henning Baldersheim | 2020-07-01 | 3 | -10/+6 | |
|/ | ||||||
* | Flip distributor B-tree DB config flag to true by default | Tor Brede Vekterli | 2020-06-30 | 2 | -6/+2 | |
| | ||||||
* | Merge pull request #13706 from ↵ | Tor Brede Vekterli | 2020-06-30 | 31 | -715/+2304 | |
|\ | | | | | | | | | vespa-engine/vekterli/btree-bucket-db-support-on-content-node Create generic B-tree bucket DB and content node DB implementation | |||||
| * | Address review comments | Tor Brede Vekterli | 2020-06-29 | 6 | -23/+25 | |
| | | | | | | | | | | Also rewrite some GMock macros that triggered Valgrind warnings due to default test object printers accessing uninitialized memory. | |||||
| * | Wire config for enabling content node B-tree bucket DB | Tor Brede Vekterli | 2020-06-25 | 13 | -29/+37 | |
| | | ||||||
| * | Create generic B-tree bucket DB and content node DB implementation | Tor Brede Vekterli | 2020-06-25 | 21 | -691/+2270 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is the first stage of removing the legacy DB implementation. Support for B-tree specific functionality such as lock-free snapshot reads will be added soon. This commit is just for feature parity. Abstract away actual database implementation to allow it to be chosen dynamically at startup. This abstraction does incur some overhead via call indirections and type erasures of callbacks, so it's likely it will be removed once the transition to the new B-tree DB has been completed. Since the algorithms used for bucket key operations is so similar between the content node and distributor, a generic B-tree backed bucket database has been created. The distributor DB will be rewritten around this code very soon. Due to the strong coupling between bucket locking and actual DB implementation details, the new bucket DB has a fairly significant code overlap with the legacy implementation. This is to avoid spending time abstracting away and factoring out code for a legacy implementation that is to be removed entirely anyway. Remove existing LockableMap functionality not used or that's only used by tests. | |||||
* | | Use find_package to find gtest library. | Tor Egge | 2020-06-29 | 10 | -10/+20 | |
| | | ||||||
* | | Precompute node 2 group mapping config time. | Henning Baldersheim | 2020-06-26 | 1 | -9/+13 | |
| | | ||||||
* | | Use std::move | Henning Baldersheim | 2020-06-26 | 1 | -1/+3 | |
| | | ||||||
* | | Modernize to c++11 style loops. | Henning Baldersheim | 2020-06-26 | 1 | -4/+4 | |
|/ | ||||||
* | Clean up some visiting code. No functional changes. | Tor Brede Vekterli | 2020-06-09 | 2 | -116/+76 | |
| | ||||||
* | Use xxhash64 for bucket-to-stripe distribution | Tor Brede Vekterli | 2020-06-08 | 2 | -6/+10 | |
| | | | | | | | | | Existing naive prime-based solution was susceptible to scheduling operations for the subtree of a superbucket in one strand alone, despite previous attempts to disperse this using prime number multiplication. This would put a serious limiter on parallelism for super bucket locality-sensitive reads such as streaming search visitors. | |||||
* | Remove unused legacy bucket DB functionality | Tor Brede Vekterli | 2020-06-03 | 3 | -188/+0 | |
| | ||||||
* | Test that single Get sent by update op works with tombstones | Tor Brede Vekterli | 2020-05-26 | 1 | -0/+57 | |
| | ||||||
* | Handle tombstones in GetOperation | Tor Brede Vekterli | 2020-05-26 | 5 | -24/+106 | |
| | | | | | | | If the newest document version is a tombstone, behave as if the document was not found at all. Since we still track replica consistency, this should work as expected for multi-phase update operations as well. | |||||
* | Propagate provider tombstone metadata to internal SPI GetResult | Tor Brede Vekterli | 2020-05-26 | 1 | -1/+2 | |
| | ||||||
* | Don't tie message lifetime directly to tracker object | Tor Brede Vekterli | 2020-05-22 | 1 | -1/+3 | |
| | | | | | | | The tracker was passed by move down to the handler function, but the surrounding code would try to auto-synthesize a reply from the message (now owned by the tracker) if an exception was thrown from the handler. Fun ensued. | |||||
* | Ensure that we hold the lock when calling ↵ | Henning Baldersheim | 2020-05-13 | 2 | -7/+6 | |
| | | | | mark_controller_as_having_observed_explicit_node_state. | |||||
* | - Update metrics less often by removing the forceEventLogging alltogether. | Henning Baldersheim | 2020-05-13 | 3 | -5/+8 | |
| | | | | - Let default bucket iteration work in smaller chunks with shorter waits. | |||||
* | Avoid filling log with unused metrics events. | Henning Baldersheim | 2020-05-09 | 2 | -17/+4 | |
| | ||||||
* | Remove unused clearResult method, and use std::lock_guard | Henning Baldersheim | 2020-05-08 | 1 | -4/+1 | |
| | ||||||
* | Use a lock to ensure it is thread safe. | Henning Baldersheim | 2020-05-08 | 2 | -6/+18 | |
| | ||||||
* | Update comments. | Henning Baldersheim | 2020-05-05 | 1 | -0/+2 | |
| |