aboutsummaryrefslogtreecommitdiffstats
path: root/clustercontroller-core
Commit message (Collapse)AuthorAgeFilesLines
...
* Rename ClusterStateChangeTracker -> ClusterStatsChangeTracker.Geir Storli2018-02-273-22/+22
|
* Rename hasMergesPending() -> mayHaveMergesPending() followup.Geir Storli2018-02-271-6/+6
|
* Rename hasMergesPending() -> mayHaveMergesPending().Geir Storli2018-02-276-10/+10
|
* Rename ClusterStatsBucketsPendingState -> ClusterStateChangeTracker.Geir Storli2018-02-273-13/+12
|
* Wire buckets pending state into state version tracker.Geir Storli2018-02-274-2/+65
|
* Remove unused function parameter.Geir Storli2018-02-274-11/+8
|
* Add class tracking whether we have changes in buckets pending state in the ↵Geir Storli2018-02-274-3/+171
| | | | 'global' bucket space.
* Let BucketSpaceStats track invalid count to allow transition from invalid -> ↵Geir Storli2018-02-274-19/+52
| | | | valid.
* Add class checking whether a bucket space on a content node might have ↵Geir Storli2018-02-275-51/+161
| | | | buckets pending.
* Track whether BucketSpaceStats is valid or not.Geir Storli2018-02-273-3/+64
|
* Nonfunctional changes onlyJon Bratseth2018-02-263-165/+24
|
* Remove never used distributor-put-latency metrics from restapiv2.Geir Storli2018-02-2213-327/+0
|
* Initial support for per bucket space cluster states in cluster controllerTor Brede Vekterli2018-02-2221-102/+757
| | | | | Multiple spaces are only enabled in tests, so the controller still only generates the legacy baseline cluster state, maintaining today's behavior.
* Cleanup import statements.Geir Storli2018-02-201-1/+0
|
* Add factory functions for BucketSpaceStats.Geir Storli2018-02-202-7/+14
|
* License year bump.Geir Storli2018-02-202-2/+2
|
* Add handling of bucket spaces stats to HostInfo and ClusterStatsAggregator.Geir Storli2018-02-1912-417/+281
| | | | Handling of outstanding merge ops has been removed as this information has never been provided by the distributors.
* Rename NodeMergeStats -> ContentNodeStats.Geir Storli2018-02-197-60/+60
|
* Rename StorageMergeStats -> ContentClusterStats.Geir Storli2018-02-196-39/+35
|
* Split parent + container-dependency-versions from root pom.gjoranv2017-12-011-0/+1
| | | | | | - Add missing dependencies so that all provided non-yahoo jars are listed in container-dependency-versions. - Add relativePath for all child poms of parent.
* Revert "Gjoranv/split parent2"gjoranv2017-11-301-1/+0
|
* Split parent + container-dependency-versions from root pom.gjoranv2017-11-301-0/+1
| | | | | | - Add missing dependencies so that all provided non-yahoo jars are listed in container-dependency-versions. - Add relativePath for all child poms of parent.
* Revert "Gjoranv/split parent"gjoranv2017-11-291-1/+0
|
* Split parent + container-dependency-versions from root pom.gjoranv2017-11-291-0/+1
| | | | | | - Add missing dependencies so that all provided non-yahoo jars are listed in container-dependency-versions. - Add relativePath for all child poms of parent.
* Log when a cluster state version is publishedTor Brede Vekterli2017-10-301-0/+1
| | | | | | Makes it much easier to reason about which state transitions have been made visible in the cluster, and which ones have just been internal state transitions in the controller.
* Update wanted state on description changes, and fix method namesHåkon Hallingstad2017-10-241-13/+17
|
* Also set the distributor wanted state when safe-setting the storage node stateHåkon Hallingstad2017-10-214-12/+247
| | | | | | | | | | This is done as part of the SAFE REST API call to set the node state of a storage node to ensure atomicity of the state change, reduce the number of state changes, and minimize the time to complete the state changes. The right way to think about the safe-set is then: In order to safely set a storage node to (e.g.) maintenance, the distributor will also have to be set to down. And so on for the various permutations of state transitions.
* Ignore current wanted state when safely setting state to upHåkon Hallingstad2017-10-202-10/+5
|
* Merge pull request #3525 from ↵Tor Brede Vekterli2017-10-128-21/+165
|\ | | | | | | | | vespa-engine/vekterli/re-enable-synchronous-set-node-state Re-enable synchronous set node state with additional safeguards
| * Add configurable deadline for cluster controller tasksTor Brede Vekterli2017-09-257-14/+113
| | | | | | | | | | | | Prevents an unstable cluster from potentially holding up all container request processing threads indefinitely. Deadline errors are translated into HTTP 504 errors to REST API clients.
| * Immediately complete failed remote tasksTor Brede Vekterli2017-09-256-8/+53
| | | | | | | | | | | | We check both for master status and task failure, as we otherwise place a potentially dangerous silent dependency on the task always failing itself if the controller is not a master.
* | Config-retired should not override explicit Down or Maintenance statesTor Brede Vekterli2017-10-124-6/+62
| | | | | | | | | | | | Previously, a config-retired node marked as Down by the Orchestrator would remain as Retired in the cluster state until the node was actually taken down entirely.
* | Avoid busy-looping when distributors fail to ACK state versionTor Brede Vekterli2017-10-112-7/+3
| |
* | Revert "Revert "Aressem/remove post install script""Arnstein Ressem2017-09-271-0/+2
| |
* | Revert "Aressem/remove post install script"Arnstein Ressem2017-09-271-2/+0
| |
* | Remove global install of files and put this in the modules that owns them.Arnstein Ressem2017-09-251-0/+2
|/
* Merge branch 'master' into bratseth/nonfunctional-changes-4Arne Juul2017-09-224-4/+23
|\ | | | | | | | | Conflicts: vespajlib/src/main/java/com/yahoo/concurrent/lock/Locks.java
| * Temporarily disable set-node-state version ACK dependencyTor Brede Vekterli2017-09-202-3/+6
| | | | | | | | | | | | Effectively reverts to legacy behavior while some more thinking is done on how to deal with blocking requests during leader elections and non-converging clusters.
| * Immediately complete remote tasks when not leaderTor Brede Vekterli2017-09-192-1/+17
| | | | | | | | | | | | Avoids edge case where set-node-state requests sent to followers would have their response delayed indefinitely due to controller not publishing any versions that the task's ACK barrier could be released by.
* | Merge with masterJon Bratseth2017-09-1550-57/+117
|/
* Refactor deferred version task completion to take in version explicitlyTor Brede Vekterli2017-09-121-13/+14
|
* Change wording for operations without observable side-effectsTor Brede Vekterli2017-09-123-22/+23
|
* Break node version ACK check out into separately called logicTor Brede Vekterli2017-09-123-14/+49
| | | | | | | | Removes dependency on having to invoke broadcastNewState before being able to observe that all distributors are in sync. Invocations of broadcastNewState are gated by a grace period between each time, so unless this is done we get artificial delays before a synchronous task can be considered complete.
* Test multiple scheduled synchronous tasksTor Brede Vekterli2017-09-112-1/+19
|
* Move leadership test code into fixtureTor Brede Vekterli2017-09-111-11/+22
|
* Test automatic task failing on controller leadership lossTor Brede Vekterli2017-09-113-11/+54
|
* Add support for version ACK-dependent tasks in cluster controllerTor Brede Vekterli2017-09-119-18/+426
| | | | | | | | | Used to enable synchronous operation for set-node-state calls, which ensure that side-effects of the call are visible when the response returns. If controller leadership is lost before state is published, tasks will be failed back to the client.
* Do not use import x.y.*;Henning Baldersheim2017-09-041-1/+10
|
* Try to shut down fleetcontroller in a controlled manner without relying on ↵Henning Baldersheim2017-09-041-21/+29
| | | | the infamous thread.interrupt.
* Update copyright headersJon Bratseth2017-06-14158-156/+158
|