1
0
Fork 0
Commit Graph

44 Commits

Author SHA1 Message Date
Max Neunhöffer e53966c843
Try to fix agency problems with snapshots. (#8947)
* Try to fix agency problems with snapshots.
* Abort MoveShards jobs that have the failed server as fromServer.
* Report aborts.
2019-05-16 14:41:39 +02:00
Lars Maier a1bae63cf1 [3.4] Verbose Abort Reason (#8878)
* Added reason to job abort method.

* Additional abort that is not in devel.
2019-05-01 13:54:47 +02:00
Max Neunhöffer 54f84cab92 Performance tuning for many shards. (#8577) 2019-03-29 21:34:45 +01:00
Max Neunhöffer 1365eebfac
Make AddFollower and RemoveFollower less aggressive. (#8477)
* Make AddFollower and RemoveFollower less aggressive.
* Adjust comment
* Early exit in count loop.
* Adjust comment in 2nd place.
* CHANGELOG.
2019-03-21 15:27:22 +01:00
Kaveh Vahedipour ab3206486d [3.4] job must not copy snapshots (#8406)
* job must not copy snapshots
* Node correct empty children
* checked all hasAsChildren sites
* No copy in operator() for node.
* Don't spam log.
* const operator too
* full path to missing key in agency
* the key is missing
* Another info level to DEBUG from INFO.
* Increase timeouts of MoveShard and CleanOutServer agency jobs.
* CHANGELOG.
2019-03-20 17:03:19 +01:00
Max Neunhöffer 46e479376d
Further supervision fixes. (#8259)
* Do not schedule Coordinators in Plan.

* Finish failed server when server is no longer in health.

* Fix removeServer checks.

Check that server is no longer in use before removing it. Give 60s
waiting time for condition to be met. Also observer agency lock.

* Finish FailedFollower job if server no longer follower.

This can happen because RemoveFollower was faster.

* Only use GOOD servers as replacement followers.

* Fix AddFollower for satellite collections.

* Fix RemoveServer for satellite collections.

* MoveShard handles moves from leader to followers

* Prepare CleanoutServer and FailedServer for satellite collections.

* More sorting out of AddFollower and RemoveFollower.

* Fix RemoveFollower job w.r.t. choice of follower to remove.

* Fix message.

* kill you own sub jobs, please

* Added preconditions to payloads for supervision's job finishers

* Improve logging.

* Add agency diagnostics to failed move shard test, start.

* Add coordinator agency diagnostics.

* Remove warning.

* Add changelog entry.

* Add agency diagnostics if things go sour with move shard.

* Add agency diags when things go wrong 2.

* API /_api/agency/state: back to old format.

* Fix Windows compilation.

* handle aborts in supervision and wait for the last Raft log to be committed

* tests compiling, 2 failing for valid reasons

* Correctly report TRI_ERROR_CLUSTER_CONNECTION_LOST as 503.

* FailedLeader /FailedFollower cannot continue, when aborting blocks
2019-03-04 11:43:35 +01:00
Max Neunhöffer b87f362f27
The big supervision fix. (#8243)
* Updated CleanoutServerTests. Exclude servers in ToBeCleanedServers. Allow bad servers as new follower.
* Prefer good servers.
* Removed copy, sort and binary_search for a list of ~10 elements.
* Fix move shard bug with compare.
* MoveShard fixes, expansion of doForAllShards
* Count only GOOD servers in actualReplicationFactor.
* Make RemoveFollower remove broken servers.
* Precondition on Plan Version for updating Current as leader.
* CleanupServer to evict server from ToBeCleaned, when aborting
* cleanoutserver with payload in finish
* Use static string for ToBeCleanedOut.
* Fixed typo in log message.
* Change warning level. If a MoveShard job is aborted and we can no longer roll back, then we issue a WARNING rather than a DEBUG log message.
* Another typo and log level.
* Start to fix unit tests.
* Does not make sense for AddFollowerTest to have a FAILED leader.
* Only count GOOD followers in AddFollower.
* Fix AddFollowerTest.
* Report precondition failed in MoveShard follower case.
* Add CHANGELOG.
2019-02-25 08:12:18 -05:00
Frank Celler 9477af198b big reformat 2018-12-26 00:57:05 +01:00
Simon 45fbed497b Supervision Job for Active Failover (#5066) 2018-04-23 12:49:41 +02:00
Matthew Von-Maszewski c0c149cf5b Create non-throwing wrappers for Node access in Agency (#4598)
* safety checkin of Node throw reduction.
* final round of Node throw protection.  Common accessors now protected to force code to hasAsXXX() functions.
2018-04-17 10:21:14 +02:00
Simon 68442dae5a Fixing agency prefix in Agency/Job.cpp (#5039)
* Fixing some test issues and fixing the agency prefix in Agency/Job.cpp
* Making logic consistent in  failed- leader / follower job
* reverting condition back to == GOOD
2018-04-09 16:21:24 +02:00
Kaveh Vahedipour 42f543fd10 constituent correctly persisiting _votedFor and _term (#4248) 2018-01-16 09:47:25 +01:00
Jan 5165155ed1 Bug fix/fixes 0609 (#3227)
* do not use V8 variant of AQL functions in early optimization stage when a C++ variant is available

* additionally, simplify AQL function definitions and aliases

* warn when more than 90% of max mappings are in use

* added C++ variant of replication catchup

* added `--log.role` option

* updated CHANGELOG

* removed non-existing scheduler.threads option from config

* removed useless __FILE__, __LINE__ invocations

* updated CHANGELOG

* allow a priority V8 context

* remove TRI_CORE_MEM_ZONE

* try to fix Windows errors & warnings

* cleanup

* removed memory zones altogether

* exclude system collections from collection tests
2017-09-13 16:28:21 +02:00
Jan 47e29e6e1f Bug fix/issues 1806 (#3069)
* fix buffer overruns in linenoise for long input lines

* don't make historian repeatedly print the same error messages that nothing can be done about

* make the implementations of the logging operator<<s not throw exceptions, so that logging does throw exceptions as an unintended side effect

* update CHANGELOG

* improve error message

* don't copy strings, but pass them by const reference
2017-08-18 22:58:09 +02:00
Andreas Streichardt f2670f8040 Extract compareServerList and make it reuseable 2017-05-24 14:13:51 +02:00
Kaveh Vahedipour 1f81ce28b0 merge in cpp & js from 3.1.18 yet to do tests 2017-04-21 15:41:05 +02:00
Kaveh Vahedipour f3cb1307a5 3.1 fixes backported to devel 2017-02-03 10:48:25 +01:00
jsteemann fa917937c4 do not use namespaces in header files 2017-02-01 13:41:31 +01:00
Max Neunhoeffer 7e4f45ec5c Fix server list comparison. 2017-01-19 14:20:00 +01:00
Kaveh Vahedipour 2b9c018817 fixed resilience 2016-12-09 16:35:32 +01:00
Kaveh Vahedipour eddecc0a4c clones method in Jobs more useful 2016-12-09 09:29:00 +01:00
Kaveh Vahedipour b930b23fc2 AddFollower jobs for newly arrived db server to satisfy replication factors 2016-12-07 16:20:47 +01:00
Kaveh Vahedipour 3a1a9c898c correct handling of distributeShardsLike in FailedFollower 2016-12-05 15:44:53 +01:00
Andreas Streichardt 63a173f002 Delete all shard move jobs when server is healthy again 2016-11-22 14:13:09 +01:00
Kaveh Vahedipour ce8c1a0cac revisiting all supervision jobs 2016-10-05 17:16:02 +02:00
Kaveh Vahedipour b8e452486b Implementations out of Job header 2016-10-05 15:27:11 +02:00
Kaveh Vahedipour 138d3f304e Implementations out of Job header 2016-10-05 15:26:57 +02:00
Andreas Streichardt 6396ac4dc7 Implement removeServer job 2016-09-06 16:49:25 +02:00
Kaveh Vahedipour 85ea1d5ff9 clang-format 2016-09-06 10:01:33 +02:00
Kaveh Vahedipour b3b7d7c907 failed servers are excluded from new shard creation 2016-09-02 12:37:53 +02:00
Kaveh Vahedipour 3603a6d63d failed server entry in target and plan increase until resolution 2016-09-02 09:28:08 +02:00
Kaveh Vahedipour e922909d6d empty arrays handled wrong 2016-06-29 15:39:51 +02:00
Kaveh Vahedipour 7bb896be3a moveshard looks if toserver already in list else failes 2016-06-15 14:19:15 +02:00
Kaveh Vahedipour 0f66a110de fixed max_elements bug in job transactions 2016-06-14 17:13:52 +02:00
Kaveh Vahedipour beba4887a3 shrink cluster in supervision 2016-06-10 18:10:37 +02:00
Kaveh Vahedipour d34752a1c4 removed dependence on excetion throwing for store to build results 2016-06-10 12:35:52 +02:00
Kaveh Vahedipour 664a4745eb moveshard good 2016-06-09 18:25:29 +02:00
Kaveh Vahedipour 382ac052d4 resilience green 2016-06-08 18:27:59 +02:00
Kaveh Vahedipour a2af8e1176 move shards are planned correctly 2016-06-06 15:04:10 +02:00
Kaveh Vahedipour 3386c6d371 abolished const ref members in supervision jobs 2016-06-06 09:34:59 +02:00
Kaveh Vahedipour 912e5c9488 abolished const ref members in supervision jobs 2016-06-06 09:30:36 +02:00
Kaveh Vahedipour 2ab638160e server health for aardvark 2016-06-03 13:44:50 +02:00
Kaveh Vahedipour 6f62f5baa3 checking before range loops for emptyness 2016-06-02 17:22:12 +02:00
Kaveh Vahedipour 7b440f94dc Moving Job classes out of Supervision 2016-05-31 16:28:54 +02:00