Jan Christoph Uhde
4873a9be71
finish ContentType enum
2016-08-23 15:02:55 +02:00
Jan Christoph Uhde
d3654d99d8
finish RequestType enum
2016-08-23 14:49:29 +02:00
Jan Christoph Uhde
e1e7e2da0b
Merge remote-tracking branch 'origin/engine-vs-velocystream' into obi-velocystream-merge
...
* origin/engine-vs-velocystream: (91 commits)
removed useless include
removed JsonParser
removed JsonHelper
Fixed another failed nullptr handling in LogicalCollection cluster case.
Fixed undefined behaviour in rest error creation
Implemented updated of LogicalCollectionInfo. Right now this is only used in Cluster Mode
agency startup changed to bootstrapping
Mention howto control core files on linux.
shutdown fixed
Removed create / drop system collection from Cluster test. This is forbidden now
The logical colleciton now knows it's journalSize
Fixed a bug in collectionNameResolver. It now returns cid 0 for not found collections in cluster again.
pushing corrected unittest script and cluster startup scripts
adjusting startup scripts
missing source file added
we have a bootstrapping agency
votes are processed correctly again
Add module.context.createDocumentationRouter
Don't implicitely build the windows packages.
remove debug print
...
Conflicts:
arangod/Cluster/ClusterComm.cpp
arangod/GeneralServer/VppCommTask.h
arangod/RestHandler/RestBaseHandler.cpp
lib/Rest/VppRequest.h
2016-08-19 14:35:05 +02:00
Jan Christoph Uhde
3a9867f86d
merge with frank
2016-08-19 10:00:43 +02:00
Frank Celler
aed99f6b53
fixed ownership of handler
2016-08-18 23:06:36 +02:00
jsteemann
21dd73074a
cppcheck
2016-08-18 16:57:55 +02:00
jsteemann
d7b2141da0
Merge branch 'devel' of https://github.com/arangodb/arangodb into readcache
2016-08-18 16:22:00 +02:00
Andreas Streichardt
dc74a0b681
Throw exceptions to avoid any circus behaviour
2016-08-18 14:52:45 +02:00
Andreas Streichardt
887da49edf
Fix segfault when backend fails
2016-08-18 13:02:55 +02:00
jsteemann
bc6633e4c0
Merge branch 'devel' of https://github.com/arangodb/arangodb into readcache
2016-08-04 13:33:10 +02:00
jsteemann
8a200f754c
WG beautification
2016-08-04 12:36:14 +02:00
jsteemann
8baa7ec955
Merge branch 'devel' of https://github.com/arangodb/arangodb into readcache
2016-08-03 13:39:00 +02:00
Jan Steemann
fe87b25ebb
produce more meaningful error messages
2016-08-03 13:36:13 +02:00
Jan Christoph Uhde
c59a553723
fix some errors -- http tests failing in cluster
2016-08-01 15:19:11 +02:00
Jan Christoph Uhde
ef12d8dc2c
struggle with ctor
2016-08-01 11:48:30 +02:00
jsteemann
ebaabdb076
Merge branch 'obi-velocystream-4' of https://github.com/arangodb/arangodb into engine-vs-velocystream
2016-07-28 16:11:26 +02:00
jsteemann
2aa2e0dab4
removed server.h
2016-07-25 16:49:52 +02:00
Jan Christoph Uhde
da81c32539
remove body() method from GeneralRequest
2016-07-25 16:46:53 +02:00
Max Neunhoeffer
410bd3d95b
Default to JSON for the moment.
2016-07-20 16:19:17 -07:00
Max Neunhoeffer
2aa6cae452
Fix performance improvements w.r.t. headers.
2016-07-20 16:05:21 -07:00
Max Neunhoeffer
6f4b48cfcf
Try to fix performance issue with single documents in cluster.
...
This creates a fast path in performRequests for the case that only
one request is given. We use syncRequest instead of asyncRequest
to save a network roundtrip. Furthermore, all queues and locks
in ClusterComm are circumvented.
2016-07-20 15:15:41 -07:00
Jan Christoph Uhde
6e9304cdc4
Merge remote-tracking branch 'origin/devel' into obi-rest-changes
...
* origin/devel: (43 commits)
added dev button to graphs view [ci skip]
grunt build [ci skip]
Remove jshint
Mention updating license info
Prevent World War 3
Always use --global-style when installing npm deps
gv - editable & createable nodes, edges [ci skip]
Rebuild aardvark
Make sure Show Interface check asks for HTML
oops, @not supported here.
Fix phrase explaining when the collections are dropped alongside the graph definition.
fixed issue #1941
gv [ci skip]
added test for "fake" _key values
fixed issue #1942
In Farbe und in STEREREOOOUU!
grunt [ci skip]
gv [ci skip]
Fix documentation.
Fix fix.
...
2016-07-15 09:20:04 +00:00
Jan Christoph Uhde
682cf7a2f1
virtualize functions of request/response
2016-07-14 08:40:05 +02:00
Max Neunhoeffer
a78fd42b67
Merge branch 'HLC' into devel
2016-07-13 12:52:33 +02:00
Max Neunhoeffer
4649036943
Add and read out HLC time stamps in HTTP headers.
2016-07-12 23:36:14 +02:00
Max Neunhoeffer
985723e468
Add HLC timestamp as HTTP header in asyncRequst and syncRequest.
2016-07-12 23:11:57 +02:00
Frank Celler
38a55ed13c
Merge branch 'devel' of github.com:arangodb/arangodb into FMH
2016-07-04 17:09:40 +02:00
Kaveh Vahedipour
34aed57a6d
adding IN operator to kv-store
2016-06-22 14:44:43 +02:00
Max Neunhoeffer
4ba6d8acbb
Next iteration of performRequests improvement.
...
asyncRequest has now two timeouts, one for the connection phase
leading to retries for failover situations, the other for the
completion of the whole operation.
2016-06-07 14:12:09 +02:00
Max Neunhoeffer
f9fc22d0b4
Minor tweak to error handling in performRequests.
2016-06-06 23:51:58 +02:00
Max Neunhoeffer
297cfa4e86
Fix behaviour of ClusterComm::performRequests.
2016-06-06 14:40:25 +02:00
Max Neunhoeffer
d54030eaac
Fix bug in ClusterComm::asyncRequest.
2016-06-06 13:37:04 +02:00
Max Neunhoeffer
19747c8b6c
Fix crash due to wrong usage of asyncRequest.
2016-06-06 11:30:39 +02:00
Max Neunhoeffer
20ef93d76b
Cleanup of error handling for asyncRequest and syncRequest.
...
I have added a thorough description of events to the comments
in ClusterComm.h. This should enable everybody to do proper
error handling when using ClusterComm::asyncRequest and
ClusterComm::syncRequest.
2016-06-04 23:05:48 -06:00
Max Neunhoeffer
7ab83d4050
Slightly change signature of asyncRequest.
...
Error handling was inconsistent. This is cleaned up now.
2016-06-04 16:19:54 -06:00
Max Neunhoeffer
7afd1cb197
Fixes in ClusterComm for sync. replication and failover.
2016-05-31 01:15:09 -06:00
jsteemann
3d831b2e2b
remove unnecessary checks
2016-05-30 14:45:11 +02:00
jsteemann
b8f99fa717
slightly adjusted wait times
2016-05-30 09:34:13 +02:00
Frank Celler
3e0930aa16
Merge branch 'devel' of github.com:arangodb/arangodb into FMH
2016-05-24 10:21:18 +02:00
Max Neunhoeffer
d988736ea9
Lower a logging level to DEBUG in performRequests.
...
Errors will be reported elsewhere.
2016-05-24 09:53:05 +02:00
Max Neunhoeffer
1e6fe40149
Reduce follower timeout to 3.0 seconds.
2016-05-24 08:38:01 +02:00
Frank Celler
af0b0900af
WIP
2016-05-22 21:08:37 +02:00
Frank Celler
806fce1dec
WIP
2016-05-21 21:58:42 +02:00
Kaveh Vahedipour
37c0ec4f54
more complete verbose output on custercomm connections
2016-05-09 15:05:33 +02:00
jsteemann
96fceb4411
use std::unordered_maps for headers
2016-05-01 20:52:47 +02:00
Max Neunhoeffer
2bfe7b8b24
Finishing touches to performRequests.
2016-04-19 16:17:41 +02:00
Max Neunhoeffer
0d1a7239c1
Bugfixes for synchronous replication.
2016-04-19 14:44:23 +02:00
Max Neunhoeffer
a321d417a9
Add performRequests.
2016-04-11 23:37:46 +02:00
Frank Celler
068f9defd7
splitted HttpResponse.h
2016-04-01 10:39:38 +02:00
Frank Celler
494bdca847
splitted HttpRequest into GeneralRequest/HttpRequest
2016-03-31 11:45:21 +02:00
Jan Steemann
cb860d39e9
added assertions
2016-03-23 18:31:26 +01:00
Kaveh Vahedipour
4f152db27f
Merge branch 'agency' of https://github.com/arangodb/arangodb into devel
2016-03-23 08:59:10 +00:00
Max Neunhoeffer
ee9666e845
Merge branch 'devel' of ssh://github.com/ArangoDB/ArangoDB into devel
2016-03-21 23:02:59 +01:00
Max Neunhoeffer
cc76ffc5d2
Fix bug that callback was not called for singleRequest case in ClusterComm.
2016-03-21 23:00:44 +01:00
Kaveh Vahedipour
d6db18d655
Merge branch 'devel' of https://github.com/arangodb/arangodb into agency
2016-03-18 10:45:15 +01:00
Andreas Streichardt
614beefc74
Throw Http error 503 when a required backend is unavailable
2016-03-16 18:04:05 +00:00
Kaveh Vahedipour
61a55d61db
Merge branch 'devel' of https://github.com/arangodb/arangodb into agency
2016-03-10 17:37:43 +01:00
Frank Celler
dfa9047484
switch arangosh to new ApplicationFeatures and ProgramOptions
2016-03-08 23:32:43 +01:00
Kaveh Vahedipour
34976d462f
agency on
2016-02-26 09:31:05 +01:00
Frank Celler
37a0a7fc05
Merge branch 'devel' of github.com:arangodb/arangodb into solaris
2016-02-25 10:56:14 +01:00
jsteemann
851d19a9d6
logging simplifications
2016-02-25 00:00:18 +01:00
Frank Celler
4b2b85f1b5
more cleanup
2016-02-24 19:19:04 +01:00
Kaveh Vahedipour
86be0136ec
agency on
2016-02-24 18:26:32 +01:00
Frank Celler
bed46519f9
added DETACHED state
2016-02-23 15:27:36 +01:00
Frank Celler
a140ad9de2
added DETACHED state
2016-02-23 12:26:12 +01:00
Kaveh Vahedipour
89fba8f8d9
Merge branch 'devel' of https://github.com/arangodb/arangodb into agency
2016-02-19 11:35:03 +01:00
Frank Celler
345712c36f
changed to new Thread interface
2016-02-17 22:19:37 +01:00
Kaveh Vahedipour
df4508f59d
Merge branch 'devel' of https://github.com/arangodb/arangodb into agency
2016-02-04 11:40:54 +01:00
Max Neunhoeffer
777783a41e
Add a non-nullptr asserting in asyncRequest.
2016-02-04 10:53:29 +01:00
Frank Celler
bb3acf8cd5
fixed /_admin/log
2016-02-04 00:41:50 +01:00
Jan Steemann
b7abf5a40d
attempt to fix Windows build
2016-02-01 12:04:28 +01:00
jsteemann
2d7323a560
fixed warnings shown by clang-3.7
2016-01-31 02:17:36 +01:00
jsteemann
353c9732b7
removed last LOG_xxx macros
2016-01-30 04:03:18 +01:00
jsteemann
ff21453255
logger transition: all files in arangod exception transactions.cpp
2016-01-29 23:28:44 +01:00
Jan Steemann
9046e1831b
clang-format
2016-01-27 13:43:46 +01:00
Max Neunhoeffer
bee3f7e21a
Cleanup ClusterComm library. Allow singleRequest asyncRequests.
...
Also run ClusterComm sender thread and connection manager in
single server mode.
2016-01-26 11:05:15 +01:00
jsteemann
842384016d
namespace cleanup
2016-01-21 00:20:22 +01:00
jsteemann
431900f17a
changed namespace from triagens to arangodb
2016-01-17 00:44:53 +01:00
jsteemann
9f0576c65f
don't rely so much on namespace std being present
2016-01-08 01:05:06 +01:00
Jan Steemann
3ad20c0cae
auto-generated headers
2016-01-06 18:41:51 +01:00
Jan Steemann
a3b026d9d1
removed useless sections from code, unified include guards
2016-01-06 14:15:22 +01:00
Jan Steemann
f422576ee0
clang-format
2016-01-05 17:43:24 +01:00
Max Neunhoeffer
152f3485b3
Fix dump bug in cluster.
2015-12-22 14:18:11 +01:00
Jan Steemann
35eda37ab1
make_unique
2015-12-16 11:54:33 +01:00
Jan Steemann
a694b7ef48
make_unique
2015-12-16 11:36:35 +01:00
Max Neunhoeffer
754762c277
Fix improvement of memory management for ClusterComm.
2015-12-15 18:24:26 +01:00
Max Neunhoeffer
74b147bb20
Improve memory management in ClusterComm library.
2015-12-15 18:09:55 +01:00
Max Neunhoeffer
8a69ca5367
Merge branch 'devel' into ClustUp1
2015-12-15 09:23:51 +01:00
Jan Steemann
1b86f280de
small issues
2015-12-14 17:54:46 +01:00
Max Neunhoeffer
6ca9bd4e70
Improve ClusterComm pointer usage.
2015-12-14 14:27:04 +01:00
Max Neunhoeffer
7641feeb88
Fix ClusterComm library w.r.t. pointers.
2015-12-14 11:22:30 +01:00
Max Neunhoeffer
af4d729284
The ClusterComm C++11 revolution.
2015-12-11 23:26:10 +01:00
Max Neunhoeffer
60df924ac1
Change data structures for collections in Agency.
...
Snapshot, compiles, untested, needs new VelocyPack.
2015-12-04 15:08:47 +01:00
Max Neunhoeffer
16e181fe05
Adjust comments to reality for asyncRequest.
2015-12-03 09:23:15 +01:00
Max Neunhoeffer
3556f76469
Fix ClusterComm::asyncRequest w.r.t. body shared_ptr.
2015-12-02 14:15:18 +01:00
CoDEmanX
b4593a7e82
Change spelling of 'initialize' to American English (comments and log messages only)
2015-09-01 17:07:21 +02:00
Jan Steemann
b347f3021c
nullptr
2015-07-30 22:33:43 +02:00
Jan Steemann
f7ed62b04c
hold locks for shorter periods in ConnectionManager
2015-07-30 20:03:23 +02:00
Frank Celler
4dccc6a8dc
Merge branch 'devel' of github.com:arangodb/arangodb into dispatcher
2015-07-23 15:41:05 +02:00
Frank Celler
35a3c6421c
moved dispatcher to atomic
2015-07-23 15:40:34 +02:00
Jan Steemann
c1c119958a
fix cluster startup
2015-07-22 16:36:05 +02:00
Jan Steemann
09736f965f
more lock instrumentation
2015-07-21 13:09:02 +02:00
Jan Steemann
18ba738027
use std::unique_ptr in some cases
2015-06-18 21:45:33 +02:00
Jan Steemann
a9006f0087
initialize
2015-03-05 10:38:49 +01:00
Willi Goesgens
b17abadd42
Put error messages of simple http client into cluster comm results.
2015-02-04 11:25:12 +01:00
Max Neunhoeffer
05c069f361
Another fix for the distributed locking problem in cluster AQL.
2014-12-23 14:35:19 +01:00
Max Neunhoeffer
e50a705d9a
Squashed commit of the following: organise locking in distributed AQL
...
Locking is now done in an extra round after the query is fully
instanciated in the cluster. All participating shards are locked
in alphabetical order of their shard ID (local collection name).
For this to work there is a new action in the RestAqlHandler plus a
mechanism to prevent the usual locking from happening: Each thread has a
thread local static class variable of
triagens::arango::Transaction::_makeNolockHeaders
which is of type std::unordered_set<std::string>*.
Whenever this is not equal to nullptr and a local collection name is
stored in there, no locking or unlocking takes place. This information
is forwarded by the X-Arango-Nolock HTTP header, whenever an HTTP
request is sent via ClusterComm to a shard.
2014-12-22 14:40:22 +01:00
Max Neunhoeffer
5f26789c95
Cleanup code after making dispatcher elastic.
2014-11-07 20:25:05 -05:00
Max Neunhoeffer
353b16805a
Add thread local static variable for current DispatcherThread.
2014-11-07 20:12:58 -05:00
Max Neunhoeffer
ab451d8d91
Choose place to tell dispatcher more sensibly.
2014-11-07 17:36:16 -05:00
Max Neunhoeffer
fdb44f8c17
Tell ClusterComm about the dispatcher.
2014-11-07 16:54:22 -05:00
Jan Steemann
beafbe6a5c
fixed invalid reads
2014-11-07 11:57:26 +01:00
Willi Goesgens
fcc6a11a4b
Add debugging code, which adds backtrace on http headers, so you can see in ngrep whats biting you.
2014-11-06 15:17:17 +01:00
Jan Steemann
8bb213e7ba
sort and cache list expression values
...
emplace
fixed wrong assertion
2014-10-29 01:02:20 +01:00
Jan Steemann
3c05701851
nullptr
2014-10-23 22:50:53 +02:00
Jan Steemann
40e62e95a5
fixed out-of-scheduler-threads issue
2014-10-20 18:27:50 +02:00
Jan Steemann
10c9a54932
start transactions on coordinator
2014-10-20 15:39:55 +02:00
Jan Steemann
c3ce45e0dd
added block instanciation for coordinator, v0.0.0
2014-09-26 20:17:42 +02:00
Jan Steemann
506936dcdb
rename orgy
2014-09-13 02:35:13 +02:00
Frank Celler
4dcf5dc817
updated disclaimer
2014-06-20 16:40:35 +02:00
Jan Steemann
362838ae69
TRI_ASSERT
2014-06-06 11:25:19 +02:00
Jan Steemann
f7049b8922
fixed startup race conditions
2014-06-04 15:18:20 +02:00
Max Neunhoeffer
bb5b341ba6
Get rid of many "using namespace ..." occurrences in header files.
2014-05-22 15:13:16 +02:00
Jan Steemann
6e76f9d35f
dont log cluster connection problems on startup as errors, but just as info
2014-04-02 16:27:26 +02:00
Jan Steemann
9ac1a7cc50
cluster-internal authentication
2014-02-26 12:01:41 +01:00
Jan Steemann
2f6f59e228
fixed startup race condition
2014-02-21 08:47:24 +01:00
Jan Steemann
d92dd90aac
fixed instance race condition
2014-02-19 17:10:11 +01:00
Jan Steemann
dd5b172e2c
fixed race conditions
2014-02-19 14:55:21 +01:00
Max Neunhoeffer
3d48a5294a
Please clang++ by using an explicit cast to unsigned long long.
2014-02-12 11:52:09 +01:00
Max Neunhoeffer
4d3b747182
Add getAllDocumentsOnCoordinator and fix bugs.
2014-01-31 01:02:51 +01:00
Max Neunhoeffer
60f47e1f21
Fix body management in asyncRequest.
2014-01-29 13:21:53 +01:00
Jan Steemann
e906f68235
windows fixes
2014-01-27 17:46:15 +01:00
Max Neunhoeffer
fc96df2244
Separate out ConnectionManager from ClusterComm.
2014-01-14 15:04:55 +01:00
Max Neunhoeffer
8c8c0bff69
Create database in cluster done.
2014-01-13 15:07:32 +01:00
Max Neunhoeffer
65c3cc6484
Improve ClusterComm library by allowing to talk to DB servers directly.
2014-01-09 14:55:29 +01:00
Jan Steemann
5b965b2a21
added initialised() method
2014-01-07 17:50:52 +01:00
Max Neunhoeffer
e79698f456
Improve error handling.
2014-01-07 16:18:31 +01:00
Max Neunhoeffer
80cec828b6
Fix two bugs.
2014-01-07 13:37:29 +01:00
Max Neunhoeffer
cc8bb892fd
Slightly change documentation of API for ClusterComm::wait()
2014-01-07 11:34:54 +01:00
Max Neunhoeffer
7c17c1c6e4
Follow coding guidelines in ClusterComm
2014-01-06 12:25:41 +01:00
Jan Steemann
b3ed54f95b
fixed warnings reported by cppcheck
2014-01-03 19:28:15 +01:00
Max Neunhoeffer
6c36c268f0
Improve debugging output of ClusterComm asynchronous requests.
2014-01-03 09:36:37 +01:00
Max Neunhoeffer
9598983051
Rename ClusterState to CluesterInfo.
2014-01-03 08:58:50 +01:00
Max Neunhoeffer
95f94397b0
Add synchronous request to ClusterComm.
2013-12-30 23:21:41 +01:00
Max Neunhoeffer
b8ddcfef82
Remove *Delegate functions from ClusterComm library.
...
They do not make sense since we usually come from JavaScript
and have to take apart the JS objects anyway. Also, the requests
are usually quite small.
2013-12-30 16:36:27 +01:00
Max Neunhoeffer
52e5258a8a
Add/modify asyncDelegate.
2013-12-30 16:11:21 +01:00
Max Neunhoeffer
842ad6d347
Improve error handling in HTTP requests for sharding.
2013-12-30 15:38:33 +01:00
Max Neunhoeffer
c47ca741a4
Change a debug level into a trace level.
2013-12-30 14:51:06 +01:00
Max Neunhoeffer
5d51d7b3ba
Get rid of many debugging messages.
2013-12-30 14:49:14 +01:00
Max Neunhoeffer
c8b684dbd6
Generic test function for ClusterComm working.
2013-12-30 14:37:03 +01:00