1
0
Fork 0
Commit Graph

42 Commits

Author SHA1 Message Date
Tobias Gödderz dc2e27db6c [3.4] Feature/rebootid notice changes, backport of #9523 (#9685)
* Feature/rebootid notice changes, backport of #9523

* Move to 3.4 and C++11-compatible code (except for test code)

* Backported tests/Mocks/Servers.{h,cpp}

* Rebuilt errorfiles

* Ported CallbackGuardTest from gtest to catch

* Ported RebootTrackerTest from gtest to catch

* Make sure the state method is called, so the overridden method is used during tests

* Fixed test to work with the old scheduler

* release version 3.4.8

* [3.4] fix agency lockup when removing 404-ed callbacks (#9839)

* Update arangod/Cluster/ServerState.cpp

Co-Authored-By: Markus Pfeiffer <markuspf@users.noreply.github.com>

* Instantiate the scheduler during ::prepare()

* Fix test crash introduced during backport

* Fix a compile error on Windows (thanks, V8)
2019-09-19 15:03:39 +03:00
Jan eb5f4241a5 issue #9654 (#9752) 2019-08-19 23:18:57 +03:00
Matthew Von-Maszewski 015f59f0b9
Feature 3.4: Use ManagedDirectory class to add gzip and encryption to import/export (#9472)
* preview code I dropped on jackie today.  only supports document collections.

* saving work in progress

* update arangoexport to fully use ManagedDirectory object (arangoimport still needs work).

* migrate remainder of import to using ManagedDirectory objects

* correct spelling within activateEncryption(): encription to encryption

* forgot to fix up graphExport for managed directory.  luckily unittest noticed.

* add test read of gzip json file

* add readGzip to our fs object

* add TRI_SlurpGzipFile function

* add code to bridge javascript fs.readGzip to TRI_SlurpGzipFile

* correct the return type used by JS_ReadGzip

* add gzip test for jsonl type export

* add remain gzip versions of existing export tests

* add import tests of gzip files

* activate encryption in enterprise to enable fs.readDecrypt()

* bug fix: allow encryption to enable in empty directory if EncryptionFeature active.

* add JS_ReadDecrypt to enterprise build.  Current used for unit tests.

* enterprise build needs EncryptionFeature added to build to support TRI_SlurpDecryptFile()

* add TRI_SlurpDecryptFile() to aid in unit test of encrypted stuff

* missing newline at end of file.

* add fs.readDecrypt when available

* add test of encrypted json array export

* correct progress meter when gzip involved

* move from using ManagedDirectory::File to ManagedDirectory::readableFile calls

* create version of readableFile that uses file descriptor as param
2019-07-23 14:58:34 -04:00
Frank Celler 9477af198b big reformat 2018-12-26 00:57:05 +01:00
Vasiliy e862efdc3b issue 458.4: retrieve the system database via the SystemDatabaseFeature (#6299) 2018-08-31 19:45:10 +02:00
Matthew Von-Maszewski 86ea784372 bugfix: establish unique function name & implementation for communication retry status (#6150)
* initial checkin of isRetryOK().  Includes fixes to known code that has previously hung shutdowns by performing infinite retries.

* slight help on getting out of a loop faster during shutdown.  not essential.
2018-08-17 14:57:12 +02:00
Michael Hackstein 7a95c5e675
Feature/feature phases (#5272)
* Added feature phases

* BasicsPhase and DatabasePhase to the required files. Server now has Feature circles and does not boot. Will be sorted out later on.

* Added ClusterPhase to features

* Added V8Phase to the required features

* Added AQLPhase to the affected features

* Added ServerPhase to Features

* Added FoxxPhase to the relevant features

* Added AgencyPhase to the relevant features

* Moved registration from local variable SYS_SYSTEM_REPLICATION_FACTOR from cluster to V8 as their ordering is now vice versa

* Moved Bootstrap feature into FoxxPhase. It could be moved to ServerPhase easily if the FoxxQueue dependency would be removed

* Final movement of Startup Phases. Now solved all circles.

* Removed merge conflict

* Moved ReplicationTimeout into cluster phase and fixed cross-phase requirements

* Added greetings phase. This phase separates the Basics Phase and is the first to be run. Includes Logger and Hello/Goodbye

* Added the GreetingsPhase in the corresponding features. Now all BasicsPhase features start after greetings Phase. There is some issue in this branch which prevents the Agency from Gossipping right now. Will be fixed next

* Moved creation of the Agent into the prepare phase of the feature. THereby it is guaranteed that agents at least exists before the GeneralServer is activating endpoints

* Recovery needs to be started after the ServerID

* Moved log output of FeaturePhases to DEBUG instead of ERROR.

* Added feature phases for clients

* ClusterFeature now does not directly require AgencyFeature any more

* Added requirement of TravEngineRegistryFeature in AQL feature. Otherwise shutdown may be undefined

* The ApplicationServer can now handout the list of ordered features. Used for testing purposes

* Fixed IResearchVew Tests Setup to honor new feature ordering

* Fixed IResearchViewDBServer Tests Setup to honor new feature ordering

* Started fixing IResearchView Coordinator tests with startup ordering. Not finished yet

* Added startup phases to ViewCoordinator test

* Disabled expected logoutput in ClusterRepairsTest

* Fixed indention in test code

* LinkCoordinator now honors startup ordering

* Link meta now honors startup rdering

* Supress expected cluster logs in ViewTest

* Removed '#' accidentially added.
2018-07-16 14:09:36 +02:00
Jan 8e6d5df129
fixed minor several compiler complaints (#5406) 2018-05-23 11:50:00 +02:00
Vasiliy 907767f4e1 issue 389.6: ensure proper error handling in StatisticsFeature for missing feature (#5377) 2018-05-18 01:12:39 +03:00
Jan 646db8ca0a
added `--dump-option` startup option to print all available options i… (#5174) 2018-04-23 11:31:08 +02:00
Jan 9c76613e63
fix premature unlock (#3802)
* fix some deadlocks found by evil lock manager (tm)

* fix duplicate lock

* fix indentation

* ensure proper lock dependencies

* fix lock acquisition

* removed useless comment

* do not lock twice

* create either a V8 transaction context or a standalone transaction context, depending on if we are called from within V8 or not

* AQL micro optimizations

* use explicit constructor

* only use V8DealerFeature's ConditionLocker for acquiring a free V8 context

entering and exiting the selected context is then done later on without having to hold the ConditionLocker

* remove some recursive locks

* Disable custom deadlock detection when Thread Sanitizer is enabled

* Changing ifdef's

* grr

* broke gcc

* Using atomic for ApplicationServer::_server

* fix premature unlock

* add some asserts

* honor collection locking in cluster

* yet one more lock fix

* removed assertion

* some more bugfixes

* Fixing assert

(cherry picked from commit 1155df173bfb67303077fbe04ee8d909517bfd21)
2017-12-13 13:27:42 +01:00
Jan ce2425cade Bug fix/daily fixes (#2958)
* do not rely on non-existing feature "AQL"

using such feature makes the server throw two exceptions (which will be caught) on startup, but its silly for debugging

* use condition variable for signalling shutdown

* do not hard-code the log levels for recovery tests

this has taken so many developers so much of their time that it is about time to fix it

* ensure the 'unittests' script properly finds 'arangosh' and the build directory
2017-08-04 20:46:08 +02:00
Jan 871ee6a85f added startsBefore() for ApplicationFeature (#2913) 2017-08-01 17:15:25 +02:00
Frank Celler cf89496faa shutdown will close sockets immediately (#2540) 2017-06-09 16:08:54 +02:00
jsteemann 6b18cc64fe dont use explicit when unnecessary 2017-06-01 16:47:56 +02:00
Wilfried Goesgens 613ad8bd9c when running as service correctly set the error state on abort / failure cases, so other components can evaluate it. 2017-05-31 13:21:50 +02:00
jsteemann edeeef8b56 re-enabled signal handlers 2017-05-05 13:09:59 +02:00
jsteemann 922a8af392 turn off all MMFiles features in case RocksDB engine is selected 2017-03-27 14:22:00 +02:00
jsteemann 0ac29eb177 don't fail when using optional features as dependencies 2017-03-01 12:52:51 +01:00
jsteemann 7359ac44b2 more style cleanup 2017-01-05 10:52:03 +01:00
Wilfried Goesgens cbaa2c3b02 More places to pass along the binaryPath for teh windows 2016-10-12 13:21:38 +02:00
Wilfried Goesgens 54ae758c7c We also need to know the binary directory when looking up the config
file; else we may miscalculate file locations.
2016-10-12 12:03:37 +02:00
jsteemann 89ac2dfba5 don't leak on help 2016-08-31 14:28:23 +02:00
Frank Celler 16c6c2087d added unprepare 2016-06-06 18:27:51 +02:00
Wilfried Goesgens 8eb5bda729 Also notify the windows service facilities if we go down unexpectedly. 2016-06-03 14:30:33 +02:00
Frank Celler 6248f419f1 progress report and windows minidump 2016-04-28 18:59:13 +02:00
jsteemann a3fdda19af Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2016-04-27 19:17:19 +02:00
Frank Celler 7b83374c65 check ApplicationServer state 2016-04-27 18:01:36 +02:00
jsteemann bfd6fa833d disallow thread creation until ApplicationServer::start() 2016-04-27 16:17:46 +02:00
Frank Celler 4d66f69fb3 added --uid and --gid 2016-04-27 12:08:16 +02:00
jsteemann 0d01f5d5f0 better diagnose cyclic feature dependencies 2016-04-26 23:30:30 +02:00
jsteemann dcc5825f93 cleaned up features a bit 2016-04-24 14:29:29 +02:00
Frank Celler 481f342385 merge fixes 2016-04-23 19:02:21 -07:00
Frank Celler d6e8046992 updated cleanupCFiles 2016-04-23 16:34:57 -07:00
Jan Steemann 104e8e8b9b remove ArangoServer.h remainders 2016-04-22 20:18:28 +02:00
Jan Steemann 7d6994862e fixed startup/shutdown with specific features 2016-04-22 14:44:42 +02:00
Frank Celler 3d2cc31306 WIP 2016-04-11 00:05:37 +02:00
Frank Celler 1b7c47c6bc added --console 2016-04-10 13:47:53 +02:00
Frank Celler e83c1f09b4 WIP 2016-04-02 23:41:21 +02:00
Frank Celler af00417cf4 skeleton arangod 2016-03-25 15:14:43 +01:00
Frank Celler dfa9047484 switch arangosh to new ApplicationFeatures and ProgramOptions 2016-03-08 23:32:43 +01:00
Frank Celler 4d996bd189 added new program options and application features 2016-02-25 10:21:09 +01:00