* Correctly expose parsed/raw config
This makes accessing the configuration more consistent by distinguishing between the raw (assigned) and parsed (validated/default) values.
Previously there was no way to recognise default values for unset config options and the "current" value did not actually reflect what the service sees.
* Add minimal option to config/deps routes
The default values are backwards compatible with the existing behaviour but can be overridden to consistently get more/less output.
* Actually merge warnings into non-mininal response
* Bug fix/speedup shard distribution (#3645)
* Added a more sophisticated test for shardDistribution format
* Updated shard distribution test to use request instead of download
* Added a cxx reporter for the shard distribuation. WIP
* Added some virtual functions/classes for Mocking
* Added a unittest for the new CXX ShardDistribution Reporter.
* The ShardDsitributionReporter now reports Plan and Current correctly. However it does not dare to find a good total/current value and just returns a default. Hence these tests are still red
* Shard distribution now uses the cxx variant
* The ShardDistribution reporter now tries to execute count on the shards
* Updated changelog
* Added error case tests. If the servers time out the mechanism will stop bothering after two seconds and just report default values.
* Moved the time computation of shardDistribution to a later point. This improves the speed for many shards collections
* Revert "Return the result of the inquiry (#3472)"
This reverts commit 1dc1a9858b.
* Revert "cherry picking of bug-fix/agency-restart-after-compaction-and-holes-i… (#3423)"
This reverts commit 324184d6bf.
* State has to keep log for removeConflicts and acoording log all the way (#3249)
* Bug fix/sort out agency locks (#3306)
New locking concept in Agency. Ensure empty heartbeats can be sent, answered and processed without long locks. Adjust logging. Fix compaction bugs.
* Bug fix/agency compactor deadlock (#3335)
* Fix a deadlock between Agent thread and compactor thread.
* Improve comments in header.
* Organise clean shutdown of agency threads.
* Bug fix/agency leader timeouts (#3373)
* Send out empty heartbeats regardless of non-empty AppendEntriesRPC.
* Also improve logging:
Note if a log in the empty heartbeat sending takes > 0.01 s.
Clearly mark places where a leader resigns in logging.
Log if no empty heartbeat is sent out.
* Make leader more tolerant w.r.t. incoming AppendEntriesRPC responses.
* Add debug logging for _lastAcked and challengeLeadership.
* Remove some unused code. Do not count ourselves in challengeLeadership.
* Removal of entire activation/deactivation mechanisms in agency
* TRI_microtime up to c++11
* added term to response to sendAppendEntries.
* Bug fix/agency restart after compaction and holes in log (#3413)
* State fixes holes in RAFT index range
* Avoid application of entries older than compaction index _cur and guard for unsigned overflow
* Return the result of the inquiry (#3465)
* Add a hidden AGENCY_DUMP for agency emergency recovery. (#3474)
* Port more changes from devel to 3.2.
This could not be cherry-picked, since the changes concerning the agency
were in squash commits which touch a lot of different things.
* Make members private in AgentConfiguration
* Log update of agency configuration.
* Do not deal with active in gossip phase.
* Take out some debugging output.
* make sure we always have properly defined whether we found systemd or… (#3379)
* make sure we always have properly defined whether we found systemd or not.
* fix source file location - we don't pre-process this.
* minify
* added hs to docu
* info arangorestore
* Added a test for cluster options in general graph module
* The general-graph attribute tests are now only executed in cluster. They do not affect single-server. Also added an additional test, when modifing an existing edge definition.
* The general graph now stores and uses information about replicationFactor and numberOfShards when adding collections to it
* Added a http api test for cluster options in general graph
* Fixed HTTP api/gharial tests to check if cluster options (nrShards, repFactor) are preserved
* General graph module is now more resilient differently formed edgeDefinitions. It now allows single collections as string as in addition to an array with one or more elements. Throws a meaningful error if we do not have a valid from/to list.
* Updated Changelog
* Fixed HTTP documentation
* Updated Manual documentation for Graph creation.
* Fixed rev => _rev. Little overseen typo
* don't add items into the array if we have an empty list member.
* we mustn't display 100% here, since its a rounding error. If, the checkmark would be set.
* rather use string cutting to round so we don't get into the 100% trap.
* remove TRI_ERROR_INTERNAL usage
* prevent assertion failure from occurring
* ensure downwards-compatibility for explain handler
* allow schmutz to drop system collections as well - needed for arangojs tests
* make the different values influencing the compaction run configurable
* Compaction statistics handling
- we mustn't keep the number of dead objects on the compacted datafiles statistics, else it will be compacted again.
- keep statistics of the compaction runs on the DatafileStatistics object
- add the new statistics on DatafileStatistics to the figures api
- implement test that assures only one compaction is run, and the statistic values are maintained
* don't mention the version number
* Implement review
- fix documentation
- allow 0 maxfiles to enable users to disable combined of datafiles
- add statistic element that counts the number of combined datafiles
* Implement review
- fix documentation
- use locks to make statistic values consistent.
- fix typo in variable name
* fix temporary variable unnecessary.
* changelog
* 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
* fixed a bug, where when servers failed, when also agency leadership changes
* redid entire design of checkDBServers/checkCoordinators.
* comparison in supervision must be between oldPersisted and newHealth
* UI stuff
* UI stuff
* FailedServer test needed adjustment
* Hopefully final round
* fixed supervision failure detection
* FailedServer tests back to origin devel
* oldNot documented among preconditions in Agency HTTP API docs
* changed only look for status updated
* non action line in api-cluster
* return different error codes for check-version
* Adds data file for exit codes that can be used by ArangoDB applications
* add some exit codes
* better return codes for centos
* add codes in arangod
* remove test code
* prevent re-downloading of starter and other small improvements
* fix some erros
* finish centos
* update urls
* add info about systemd detection
* move further towards a working systemd setup
* set service type to simple
* add arangodb-update-db script
* start work on debian packages
* a db dir that is already in place (former installation) should be reused now
* fix minor bugs
* Implement exit code translation in the windows installer.
* add autogenerated NSIS exit code mapping
* some authentication optimizations...
don't query the permissions for one database three times, and don't build up tons of useless temporary strings for each request
* fix some floating point inaccuracies in AstNode value comparisons
* Clarify an error message.
* Lower log levels in Schmutz.
Things that can happen in normal life should not be on level error.
Sometimes two servers try concurrently to synchronize a shard, one is
faster, the other removes the shard before the sync is done. This is not
an error condition because we do not want users to worry.
* Cleanup after each testrun
- add a success testsuite next to the fail testsuite
- create temporary directories in the fail & success testsuites
- add a function to cleanup the last unshifted directory
- don't say we're crashed when exiting with the help message
* Specify temp path for SUT so its files will be removed after cleanup.
- cleanup
- don't use getTempFile(), it will create another subdirectory that we don't clean up afterwards...
* Fix temp path usage
- creating a 'bundles' directory wherein we would keep our temporary bundle files would collide if we'd clean it up.
- create 'bundles-tmpxxxx' instead so its individual to us and we can remove it when done without problems.
* properly create & pass in a temporary directory - as we now require this.
* Remove intermediate directory recursive - for some unknown reason there may be temp files created.
* we need to unify tempfilenames here too.
* use individual suite names
* use the standart performTests to run the backup tests - so we have the proper directory and server handling from the infrastructure.
* fix temporary directory handling in the recovery tests.
* script to build debugging debian packages
* Improve test shutdown
- handle a set of options globally per testsuite, so they don't need to clone them inside.
- properly cleanup the slave instance of the replication tests after each run.
- The per testsuite options vector will fix the behaviour that after one failed testsuite
all other suites won't be cleaned up anymore.
* don't call the overal cleanup if anything failed.
* fix cleaning up of directories.
* cleanup, fix directory creation / deletion / dummy creation.
* cleanup, fix directory creation / deletion / dummy creation.
* fix tempdir handling for the recovery tests
* return different error codes for check-version
* Adds data file for exit codes that can be used by ArangoDB applications
* add some exit codes
* better return codes for centos
* add codes in arangod
* remove test code
* prevent re-downloading of starter and other small improvements
* fix some erros
* finish centos
* update urls
* add info about systemd detection
* move further towards a working systemd setup
* set service type to simple
* add arangodb-update-db script
* start work on debian packages
* a db dir that is already in place (former installation) should be reused now
* fix minor bugs
* Implement exit code translation in the windows installer.
* add autogenerated NSIS exit code mapping
* added debugging methods
* try to fix invalid access in case of error
* remove unused members
* bugfixes and comments
* all agency fixes in
* merge bug
* partially unguarded Agent::lead fixed
* all agency fixes in
* added nrBlocked to thread startup eval
* added nrBlocked to thread startup eval
* recombination of cases in State::get
* some maps replaced with unordered_maps
* optimized maps some
* Don't use global static variables as collection caches - this may cause troubles.
* cleanup: remove old cluster kickstarter UI remaints.
* cleanup - remove references to long gone tests