1
0
Fork 0
Commit Graph

812 Commits

Author SHA1 Message Date
Alan Plum 8853ede355 org/arangodb -> @arangodb 2015-12-15 15:51:44 +01:00
Jan Steemann f8cf665a8a delete connectionmanager on shutdown 2015-12-15 13:21:24 +01:00
Max Neunhoeffer 8a69ca5367 Merge branch 'devel' into ClustUp1 2015-12-15 09:23:51 +01:00
Jan Steemann 84fae4ebcb Merge branch 'devel' of https://github.com/arangodb/arangodb into vpack 2015-12-14 18:16:30 +01:00
Jan Steemann 1b86f280de small issues 2015-12-14 17:54:46 +01:00
Max Neunhoeffer 5bf896c51f Fix if-match forwarding bug in getDocumentOnCoordinator. 2015-12-14 16:17:13 +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
Michael Hackstein 1a33c10557 Removed TRI_json_t from Vocbase/auth and did some refactoring in the internals there. Bye Bye CORE_MEM_ZONE 2015-12-10 14:08:49 +01:00
Max Neunhoeffer d5eaccbfe5 Merge branch 'devel' into ClustUp1 2015-12-10 11:35:08 +01:00
Michael Hackstein 1af985003d Merge branch 'devel' of github.com:arangodb/arangodb into vpack 2015-12-10 10:26:14 +01:00
Max Neunhoeffer ea72850aeb Fix bug in client tests. 2015-12-09 23:13:26 +01:00
Jan Steemann fec29ac9c8 better compaction diagnostics 2015-12-09 19:02:22 +01:00
Max Neunhoeffer 7931be71a0 Merge branch 'devel' into ClustUp1 2015-12-09 12:45:07 +01:00
Michael Hackstein acadb089ee Merge branch 'devel' of github.com:arangodb/arangodb into vpack 2015-12-09 10:29:13 +01:00
Michael Hackstein 7042542548 Fixed memleak for cluster Traverser edge data 2015-12-09 09:52:45 +01:00
Max Neunhoeffer c309c47981 Unuse std::atomic_load<shared_ptr> because gcc 4.9 does not have it. 2015-12-09 09:32:01 +01:00
Max Neunhoeffer 3f78b86492 Merge branch 'devel' into ClustUp1 2015-12-09 09:04:00 +01:00
jsteemann c99f4244c7 bugfix for cluster edges API 2015-12-09 00:26:18 +01:00
Max Neunhoeffer a0f6a3c9db Merge branch 'devel' into ClustUp1 2015-12-08 23:21:46 +01:00
Max Neunhoeffer f38d70844f Fix a corner case in index generation. 2015-12-08 21:32:06 +01:00
Max Neunhoeffer 588fddb53c Better error message instead of failed assertion. 2015-12-08 20:50:35 +01:00
Max Neunhoeffer a8bf9bd9ca Add a true argument. 2015-12-08 20:12:53 +01:00
Max Neunhoeffer 6cedb210df First try to fix deadlock problem. Tests not yet tried. 2015-12-08 18:54:05 +01:00
Jan Steemann 76d5f57af0 Merge branch 'devel' of https://github.com/arangodb/arangodb into vpack 2015-12-08 18:23:06 +01:00
Max Neunhoeffer 4e523a19ed Merge branch 'devel' into ClustUp1 2015-12-08 17:02:14 +01:00
Michael Hackstein 0a678263fb Fixed a bug when we start at an unknown vertex. THe cluster got into undefined states 2015-12-08 14:45:11 +01:00
Jan Steemann 14a7269278 make parameter explicit 2015-12-08 12:58:51 +01:00
Max Neunhoeffer 257c6c897d Fix bugs and tests. 2015-12-08 12:48:11 +01:00
Jan Steemann 04f3abae2a Merge branch 'devel' of https://github.com/arangodb/arangodb into vpack 2015-12-07 16:51:21 +01:00
Max Neunhoeffer 637a234660 Change a debug into an error. 2015-12-07 16:01:44 +01:00
Max Neunhoeffer a674ff9629 Use no pretty printing in agency communication for VelocyPack. 2015-12-07 14:52:53 +01:00
Michael Hackstein 1c53e93865 Added some VelocyPack helper functions for Coordinators 2015-12-07 14:24:56 +01:00
Michael Hackstein b78145f73f Added some VelocyPack helper functions for Coordinators 2015-12-07 14:24:21 +01:00
Max Neunhoeffer 6141c61bf4 Merge branch 'devel' into ClustUp1 2015-12-07 13:44:13 +01:00
Max Neunhoeffer c11bdf9319 Two bug fixes. 2015-12-07 13:43:49 +01:00
Jan Steemann 9dd164eadc fix cluster upgrade 2015-12-07 11:57:46 +01:00
Jan Steemann e55199a27c fixed mismatched free/delete 2015-12-07 10:34:14 +01:00
Michael Hackstein a814bc7414 Added a wrapper arround create/modify documents in cluster with JSOn for VelocyPack 2015-12-06 13:32:06 +01:00
Max Neunhoeffer 10ff104236 Another snapshot. 2015-12-04 16:08:02 +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 a926c7570a Cleanup ClusterInfo library w.r.t. Current/Collections. 2015-12-04 15:08:47 +01:00
Jan Steemann 3b7cbef240 Merge branch 'devel' of https://github.com/arangodb/arangodb into vpack 2015-12-04 13:50:42 +01:00
Jan Steemann 5c033f566b Merge branch 'devel' of https://github.com/arangodb/arangodb into vpack 2015-12-04 13:47:08 +01:00
Michael Hackstein c60271d3c8 Fixed early optimizations of Cluster traversal filters, when document does not exist. Now behaves identical to single server and to execution without optimization 2015-12-04 13:30:40 +01:00
Jan Steemann 785beaa625 cppcheck 2015-12-04 12:18:15 +01:00
Jan Steemann b8cd633276 Windows fixes 2015-12-03 15:00:19 +01:00
Michael Hackstein 86b4a7137d Merge branch 'devel' of github.com:arangodb/arangodb into devel 2015-12-03 11:35:33 +01:00
Michael Hackstein 04f65ff8c1 Fixed a memleak in ClusterTraverser 2015-12-03 11:35:08 +01:00
jsteemann 9caaff18fb fixed leaks 2015-12-03 11:25:05 +01:00
Michael Hackstein e6fffda489 Merge branch 'JHMH' of github.com:arangodb/arangodb into devel 2015-12-03 10:26:56 +01:00
Michael Hackstein 8919a068ba Adapted to new API of cluster async request 2015-12-03 10:24:01 +01:00
Michael Hackstein 3ea14e66a3 Merge branch 'devel' of github.com:arangodb/arangodb into JHMH 2015-12-03 10:19:17 +01:00
Max Neunhoeffer 16e181fe05 Adjust comments to reality for asyncRequest. 2015-12-03 09:23:15 +01:00
Max Neunhoeffer 3821a775a3 Merge branch 'devel' of ssh://github.com/ArangoDB/ArangoDB into devel 2015-12-02 14:48:04 +01:00
Max Neunhoeffer 3556f76469 Fix ClusterComm::asyncRequest w.r.t. body shared_ptr. 2015-12-02 14:15:18 +01:00
Michael Hackstein e47ebdd48d Fixed statistics reporting for AQL traversal in Cluster. The tests are green in cluster mode now. 2015-12-02 13:41:24 +01:00
Michael Hackstein 18db3bf681 The edges api now returns a stats property encapsulating how many items where scanned and how many where filtered 2015-12-02 11:38:51 +01:00
Michael Hackstein 1a13af6f36 Merged remote changes with local stash 2015-12-02 11:34:58 +01:00
Jan Steemann eb8899d9ae applied changes suggested by cppcheck 2015-12-02 10:17:14 +01:00
Jan Steemann 2bbcaa868f fixed invalid memory usages 2015-12-01 16:48:55 +01:00
hkernbach 6d25ac57e9 Merge branch 'devel' of github.com:arangodb/arangodb into JHMH 2015-12-01 11:25:58 +01:00
Jan Steemann 0dd207f9f5 Merge branch 'devel' of https://github.com/arangodb/arangodb into vpack 2015-12-01 11:14:12 +01:00
jsteemann 37f72fa721 micro optimizations 2015-11-30 19:37:58 +01:00
Michael Hackstein 73669ae774 Implemented a short-cut to query a list of documents by _id in the cluster. It's baby-aware 2015-11-30 13:27:22 +01:00
Michael Hackstein ceddc4d7f4 Added a convenience check to evaluate if a collection uses default shardKeys 2015-11-30 13:26:42 +01:00
Michael Hackstein d79c2f9048 Added a test if the traverser prunes early 2015-11-27 17:03:24 +01:00
Michael Hackstein a7b7d1ec18 Adapted traverser implementations to new Path Enumerator for improved pruning 2015-11-27 16:25:02 +01:00
Michael Hackstein bba4fe6089 Added a basic implementation to receive filtered documents in the cluster. Right now it does not yet filter and is inefficent but serves the API 2015-11-27 11:20:12 +01:00
Michael Hackstein 7bf37620bb Merge branch 'devel' of github.com:arangodb/arangodb into JHMH 2015-11-26 16:32:26 +01:00
Michael Hackstein 14f68cc648 Adopted implementation of filteredEdges in cluster 2015-11-26 16:01:10 +01:00
Michael Hackstein d109a4e2aa Filtered edges are now able to react to a list of expressions instead of only one expression. The list symbolises an AND 2015-11-26 11:38:09 +01:00
Jan Steemann 9ef5b4746a removed several includes from Common.h 2015-11-25 12:21:55 +01:00
Alan Plum 7538d71333 URL parameter -> {query,path} parameter 2015-11-24 18:09:43 +01:00
Michael Hackstein b18ce56a68 Merge branch 'devel' of github.com:arangodb/arangodb into JHMH 2015-11-20 10:49:00 +01:00
jsteemann 19373f80fa removed dependency on vector.h 2015-11-19 01:41:42 +01:00
Michael Hackstein 7a36bbb43f Merge branch 'devel' of github.com:arangodb/arangodb into JHMH 2015-11-18 13:58:47 +01:00
Max Neunhoeffer 68941c1ea9 Fix a typo in a variable name. 2015-11-17 17:16:59 +01:00
Michael Hackstein 0adbef4f76 Transformed the TraversalExpression vector into a map ordered by access level. This is way more convenient on the Traverser side to be used. 2015-11-17 16:25:45 +01:00
Michael Hackstein 6572806300 Fixed ClusterTraverser if there is a vertex without edges 2015-11-16 20:24:10 +01:00
Michael Hackstein 21cf784cbc First attempt for multi collection graphs. Not yet functional. 2015-11-16 15:36:00 +01:00
Michael Hackstein e8cdc5190f Single Collection Traversals are now functional within the cluster. 2015-11-16 14:55:07 +01:00
Michael Hackstein b391d9cb22 Fixed a bug when the cluster iterates over more than one edge 2015-11-16 13:20:32 +01:00
Michael Hackstein fa4b08a4b8 Further implemenetation for ClusterTraverser. It now returns the correct format. However there seems to be an undefined state which can be reached 2015-11-16 11:37:29 +01:00
Michael Hackstein 3923c7936e EdgeCollections are now evaluated to cids later in TraversalBlock. This change was necessary for the Cluster 2015-11-16 09:09:34 +01:00
Michael Hackstein 04da539ba1 Further implementation of Cluster Traverser. It now has code that in theory should fetch the first set of edges. Right now it fails for undefined collection name 2015-11-13 17:12:33 +01:00
Michael Hackstein e475d9c778 Added a function to get all edges for a specific vertex in the cluster. 2015-11-13 16:04:49 +01:00
Michael Hackstein 9a95e1d36b Added Files for Cluster Traverser. 2015-11-13 14:53:46 +01:00
Max Neunhoeffer af3cb6868f Increase timeouts for larger clusters. 2015-11-10 10:21:36 +01:00
Max Neunhoeffer 21bc08715a Fix heartbeat thread of DBserver, less sleeping. 2015-11-03 10:19:26 +01:00
Jan Steemann 41c388eab5 don't sleep in DBServer's HeartbeatThread::run() in case of plan changes 2015-10-30 11:35:18 +01:00
Max Neunhoeffer cc45a0d352 Implement role switching. 2015-10-23 16:45:21 +02:00
CoDEmanX 8cf82b1cf3 Add two missing backticks to unbreak docu blocks 2015-09-09 22:01:55 +02:00
CoDEmanX 3a9648d78a More Americanization 2015-09-03 22:25:43 +02:00
CoDEmanX 956b396e43 Change spelling of 'initialize' to American English (actual code and files) 2015-09-01 17:29:22 +02: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 a3ee707f6f less creations of empty headers maps 2015-08-30 22:11:18 +02:00
Jan Steemann 1be3733a64 moved some handlers around
fix disappeared handlers
2015-08-20 01:26:52 +02:00
Jan Steemann ea382e1f4c removed triagens::rest::Handler 2015-08-20 01:26:50 +02:00
Max Neunhoeffer ff135a10ad Add some overrides to silence a clang compiler warning. 2015-08-19 14:46:06 +02:00
Max Neunhoeffer b844ff3468 Finish the role "SECONDARY" in a cluster. Configure replication automatically. 2015-08-12 10:54:30 +02:00
Max Neunhoeffer 63b4aa641a Delete a TRI_vector_t usage. 2015-08-07 13:16:49 +02:00
Jan Steemann b0add93e37 fixed potential value overruns 2015-08-06 11:47:01 +02:00
Max Neunhoeffer 5b4eeb4dae Silence a visual studio warning. 2015-08-04 14:29:59 +02:00
Max Neunhoeffer 96d7b339b7 Use LOG_DEBUG instead of LOG_ERROR for Agency problems. 2015-08-04 09:42:06 +02:00
Max Neunhoeffer 4f2afbf7e3 Better debugging messages if agency communication goes wrong in ClusterInfo. 2015-08-04 09:32:57 +02:00
Max Neunhoeffer 0bdeed7f24 Fix bug in ClusterInfo. 2015-08-03 15:17:09 +02:00
Max Neunhoeffer d0cfab6248 Try to sort out ClusterInfo protection for good. 2015-08-03 15:07:59 +02:00
Max Neunhoeffer e8b4e510d8 Some reordering and better comments. 2015-08-03 10:17:34 +02:00
Max Neunhoeffer 67a983af73 Yet more unordered_maps. 2015-08-03 09:42:04 +02:00
Max Neunhoeffer 387e3e5701 More unordered_maps. 2015-08-03 09:18:33 +02:00
Max Neunhoeffer 41ab436378 Change some maps to unordered_maps. 2015-08-03 08:58:46 +02:00
Jan Steemann 738237ce39 fixed method comment 2015-07-31 17:32:55 +02:00
Jan Steemann 9afd8974b7 split big lock 2015-07-31 16:56:26 +02:00
Jan Steemann ec3ccd31ba split lock 2015-07-31 16:44:42 +02:00
Jan Steemann efe643aee9 unique_ptr'ed 2015-07-31 15:55:56 +02:00
Jan Steemann dfd31975f6 potential fix 2015-07-31 14:57:32 +02:00
Jan Steemann 8fbf3894cd renamed 2015-07-31 14:56:52 +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 38cdc662ec removed configure options `--enable-timing` and `--enable-figures` 2015-07-21 18:47:43 +02:00
Jan Steemann 20c96b5e46 removed locks 2015-07-21 17:34:57 +02:00
Jan Steemann 123a76089f removed JobType, special jobs and monopolizer 2015-07-21 14:07:53 +02:00
Jan Steemann 09736f965f more lock instrumentation 2015-07-21 13:09:02 +02:00
Jan Steemann e8205e5dc0 use new and delete for TRI_server_t 2015-07-21 11:57:04 +02:00
Jan Steemann 124fe7a34c use new/delete for TRI_vocbase_t 2015-07-20 12:08:13 +02:00
Willi Goesgens 1dea6b29a5 Fix memleaks in coordinator. 2015-06-30 14:36:37 +02:00
Willi Goesgens df031a9f2a Find the right place where the json wasn't free'd 2015-06-25 09:45:05 +02:00
Willi Goesgens 29366dff96 Fix memleaks. 2015-06-24 17:42:26 +02:00
Jan Steemann 18ba738027 use std::unique_ptr in some cases 2015-06-18 21:45:33 +02:00
Jan Steemann a6b2998b5d added try...catch blocks for V8-to-CPP bindings 2015-06-08 16:04:42 +02:00
Jan Steemann b76cb5caee use nullptr 2015-06-02 23:39:41 +02:00
Jan Steemann 4c7994597a cppcheck 2015-06-02 22:49:22 +02:00
Jan Steemann 39cf9c527c micro optimizations 2015-06-01 14:56:01 +02:00
Jan Steemann 07e553cd8d Merge branch 'devel' of https://github.com/arangodb/arangodb into index-cxx
Conflicts:
	arangod/V8Server/v8-vocbase.cpp
2015-05-26 17:07:26 +02:00
Jan Steemann 2a9e809009 fix cluster 2015-05-26 14:49:13 +02:00
Jan Steemann a9f2769ffa now compiles and links 2015-05-23 04:31:13 +02:00
Jan Steemann 343c9b4bea added static helper methods for cluster state 2015-05-20 13:51:02 +02:00
Max Neunhoeffer a3923c9eaf Fix configurability of indexBuckets. 2015-05-18 01:39:54 -07:00
Jan Steemann 6b412a1c01 Merge branch 'json-privatisierung' of https://github.com/arangodb/arangodb into json-privatisierung 2015-05-07 13:05:12 +02:00
Willi Goesgens 66c6fe6e2c When shutting down the Agency, don't delete connections which are just busy. 2015-05-06 18:05:55 +02:00
Jan Steemann 5615881cac nullptr 2015-05-06 15:35:04 +02:00
Jan Steemann e93225d7f5 fix cluster document fetching 2015-05-06 11:00:41 +02:00
Jan Steemann a007a867ee "privatized" TRI_vector_t internals.
This allows changing the internals of TRI_vector_t structs in order to make the struct smaller.
On 64 bits, the size of TRI_vector_t is reduced from 48 bytes to 28 bytes.
TRI_json_t does benefit from this, as its biggest component is a TRI_vector_t.
2015-05-05 10:31:02 +02:00
Jan Steemann 0099fe260a return value optimization for AQL 2015-04-30 23:38:27 +02:00
Max Neunhoeffer bd0724add6 Fix retry behaviour in some places of cluster code. 2015-04-13 13:03:40 +02:00
Max Neunhoeffer 4b4e1b2466 Fix number of tries in getCollection. 2015-04-13 12:07:53 +02:00
Frank Celler ffbc45d2e2 new HttpServer & HttpCommTask
Conflicts:
	Makefile.in
	arangod/Aql/RestAqlHandler.cpp
	arangod/Aql/grammar.cpp
	arangod/Cluster/RestShardHandler.cpp
	lib/GeneralServer/GeneralServer.h
	lib/GeneralServer/GeneralServerDispatcher.h
	lib/HttpServer/HttpServerJob.h
	lib/HttpServer/HttpsCommTask.h
	lib/SimpleHttpClient/SslClientConnection.cpp
2015-03-31 09:12:01 +02:00
Jan Steemann 925f4fbab6 cleanup of some static const variables 2015-03-30 21:43:55 +02:00
Jan Steemann c352ba6a03 small logging refactoring 2015-03-26 03:09:07 +01:00
Jan Steemann 0ceff3f1b0 added cluster tests 2015-03-24 18:28:55 +01:00
Jan Steemann 85308fa7f3 removed remainder of development mode 2015-03-19 10:33:31 +01:00
Jan Steemann d41cff907e accept buffers 2015-03-09 19:05:04 +01:00
Jan Steemann c8338b9416 added ArangoClusterInfo.getServerName 2015-03-09 16:56:00 +01:00
Jan Steemann 22200118e1 added method getCoordinators() 2015-03-06 14:02:16 +01:00
Jan Steemann a9006f0087 initialize 2015-03-05 10:38:49 +01:00
Jan Steemann 9ff4e7922d thread-safety 2015-03-04 18:10:21 +01:00
Jan Steemann 4958086d63 thread safety 2015-03-04 18:02:06 +01:00
Willi Goesgens bff0ee6e38 static const std::string not as const as thought - at least in windows. 2015-03-04 16:39:54 +01:00
Jan Steemann 8493801ea1 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2015-02-26 16:39:50 +01:00
Jan Steemann 1461d75ed4 improve collection loading time
This patch reduces collection loading time by preallocating enough space in primary index ahead of time.
When a collection is closed, the number of documents in the collection will be stored in the collection's JSON info file.
This value is used to determine the initial size for the primary index when the collection is loaded next time.

Datafile iteration has also been made slightly faster.

The above changes will have a significant benefit when the collection's datafiles are already in the OS buffer cache, and when there are no secondary indexes.
Loading datafiles from disk or building secondary indexes may be more time-consuming than the improvements reapable by this patch, but the patch shouldn't hurt anyway.
2015-02-26 16:35:51 +01:00
Willi Goesgens 8a407c6576 Give the Agency more time to reply before we retry. 2015-02-26 15:24:47 +01:00
Jan Steemann 7c5cc16a8a less locking for cluster status checks 2015-02-18 18:14:12 +01:00
Jan Steemann b1d023821e fixed tests 2015-02-11 18:46:52 +01:00
Jan Steemann f7210e3604 sparse index tests 2015-02-11 00:25:30 +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 e24278828c Changes to cluster startup for mesos cooperation.
This simplifies the cluster startup by introducing a further agency
lookup step using "local info" to find the "id". This allows an external
discovery process (see scripts/discover.js as an example) to configure
a new server in the cluster dynamically when it starts up.

New GNUmakefile targets
  pack-tar-config
  pack-tar
2015-01-28 12:58:24 +01:00
Jan Steemann 5aa3d09085 fixed wrong comment 2015-01-24 14:03:12 +01:00
Jan Steemann b54dfae96f removed several JSON functions 2015-01-13 01:31:04 +01:00
Jan Steemann 2d0a37d826 automatically create _keys in DistributeNode on insert 2015-01-12 10:33:05 +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
Jan Steemann 20e7fe7a7a the great rename: array => object, list => array 2014-12-18 21:07:06 +01:00
Willi Goesgens 1c4a72b106 The Big V8 upgrade Merge. 2014-12-15 17:30:56 +01:00
Alan Plum 41ab3aa4d6 Renamed mergeArrays->mergeObjects to make API less confusing. 2014-12-02 17:03:03 +01:00
Jan Steemann ac36c0cd7a added mergeArrays attribute 2014-11-28 13:58:49 +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
Willi Goesgens 61412f78f3 Fix memleak: if we bail out, we need to free the json as we promised we would. 2014-11-07 13:05:10 +01: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 09e0a4e3c4 nullptr 2014-10-29 23:17:56 +01:00
Willi Goesgens 1376d44110 Clear the ClusterCommResult objects before re-assigning them; else we loose memory. 2014-10-29 19:16:34 +01:00
Willi Goesgens 26a0ce441c nullptr 2014-10-29 19:11:48 +01:00
Willi Goesgens 73ac2e729c another place to ensure that the pointer to TRI_json_t is free'd 2014-10-29 19:11:24 +01:00
Willi Goesgens 6a0fe7af9c Fix memleak: TRI_Insert2ArrayJson doesn't use the pointer; need to use TRI_Insert3ArrayJson here. 2014-10-29 16:39:54 +01:00
Willi Goesgens 6048b8a92b Fix memleak: TRI_Insert2ArrayJson doesn't use the pointer; need to use TRI_Insert3ArrayJson here. 2014-10-29 13:51:56 +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 da10751030 do not spam dispatcher queue 2014-10-28 16:01:40 +01:00
Jan Steemann 13d240384f less namespace pollution 2014-10-28 00:24:37 +01:00
Jan Steemann 3c05701851 nullptr 2014-10-23 22:50:53 +02:00
Jan Steemann e2ef21c33a fixed non-working DistributeBlock 2014-10-22 12:07:31 +02:00
Jan Steemann 40e62e95a5 fixed out-of-scheduler-threads issue 2014-10-20 18:27:50 +02:00
Jan Steemann 34d34af340 do not throw on shutdown 2014-10-20 16:17:19 +02:00
Jan Steemann 10c9a54932 start transactions on coordinator 2014-10-20 15:39:55 +02:00
Jan Steemann c93c952c05 fixed from/to-handling in cluster 2014-10-20 12:32:08 +02:00
Jan Steemann 04d5f5dfdd fixed segfault 2014-10-20 10:50:31 +02:00
Jan Steemann 2b68d83072 added enterContext and exitContext to Query 2014-10-17 12:01:50 +02:00
Jan Steemann e5d8414865 fixed more queries 2014-10-07 12:36:17 +02:00
Jan Steemann 873d8291db fixed race condition in getCurrentDBServers 2014-10-02 15:50:04 +02:00
Jan Steemann 1d1ce39d50 fixed warning 2014-10-02 15:35:43 +02:00
Jan Steemann e28ad821b0 fixed spuriously occurring "database not found" error 2014-10-02 15:34:38 +02:00
Jan Steemann c3ce45e0dd added block instanciation for coordinator, v0.0.0 2014-09-26 20:17:42 +02:00
Jan Steemann dbf964e204 small optimizations 2014-09-24 12:09:13 +02:00
Jan Steemann 38fdaa4066 removed unused function parameter 2014-09-19 20:28:41 +02:00
Jan Steemann 1ed4e20ba1 nullptr 2014-09-19 12:02:34 +02:00
Jan Steemann 506936dcdb rename orgy 2014-09-13 02:35:13 +02:00
Jan Steemann 669cb3b235 renamed files 2014-09-13 01:44:01 +02:00
Jan Steemann 0dc0bc834f more files renamed 2014-09-13 00:20:30 +02:00
Jan Steemann 87afcf5e8d the great rename 2014-09-13 00:10:11 +02:00
Jan Steemann c034307dca Merge branch 'devel' of https://github.com/triAGENS/ArangoDB into aql2
Conflicts:
	arangod/Utils/CollectionNameResolver.h
2014-09-10 15:54:49 +02:00
Max Neunhoeffer a6d57d2c8a Fix DBserver bug with CollectionNameResolver and local collections. 2014-09-10 15:50:41 +02:00
Jan Steemann aadd0f9254 Merge branch 'devel' of https://github.com/triAGENS/ArangoDB into aql2
Conflicts:
	arangod/Utils/CollectionNameResolver.h
	arangod/V8Server/v8-vocbase.cpp
2014-08-30 17:35:08 +02:00
Jan Steemann c0463a1797 added `type` option for `GET /_api/document?collection=...`
Conflicts:
	CHANGELOG
2014-08-30 17:26:24 +02:00
Jan Steemann cd1d0c45f8 Merge branch 'devel' of https://github.com/triAGENS/ArangoDB into aql2
Conflicts:
	arangod/V8Server/v8-query.cpp
2014-08-27 19:25:37 +02:00
Max Neunhoeffer a7814a7ad2 Return headers and body in ArangoClusterComm.syncRequest method. 2014-08-25 16:35:02 +02:00
Jan Steemann a70a9613f6 Merge branch 'devel' of https://github.com/triAGENS/ArangoDB into aql2
Conflicts:
	lib/BasicsC/voc-errors.h
2014-08-22 21:51:38 +02:00
Frank Celler 9fa3d22d6c towards new dispatcher interface 2014-08-18 23:37:32 +02:00
Jan Steemann 30b32f1f90 Merge branch 'devel' of https://github.com/triAGENS/ArangoDB into aql2
Conflicts:
	arangod/Ahuacatl/ahuacatl-grammar.h
	arangod/V8Server/v8-vocbase.cpp
	js/server/tests/ahuacatl-general-graph.js
2014-08-13 16:29:57 +02:00
Max Neunhoeffer 28f0d7be05 Sort out TRI_CompareValuesJson to use UTF8 on demand. 2014-08-13 14:22:05 +02:00
Frank Celler be06ef7f25 new upgrade-database (formely known as version-check) and new startup procedure 2014-08-07 14:12:19 +02:00
Max Neunhoeffer 390f0fe605 Implement distributeShardsLike 2014-08-01 17:05:04 +02:00
Max Neunhoeffer 9714979d73 Enable some more ClusterComm stuff for dbServers. 2014-07-31 12:19:46 +02:00
Max Neunhoeffer fa5096a710 Allow ClusterComm requests originate in DBservers. 2014-07-31 09:25:53 +02:00
Max Neunhoeffer 92d68cfd0b Allow asynchronous cluster internal communication between DBservers. 2014-07-30 10:47:28 +02:00
Jan Steemann 39d7c71fce getResponsibleShard 2014-07-30 10:27:32 +02:00
Thomas Schmidts e46d87f23c Changed documentation code in configure chapter 2014-07-02 14:08:41 +02:00
Max Neunhoeffer 2f784c7e4d Add a WAL flush for the cluster to flush the WAL on all DBservers. 2014-07-01 17:00:05 +02:00
Esteban Lombeyda 99e2aac9a8 avoiding segmentation fault in cluster 2014-06-26 14:57:57 +02:00
Frank Celler 4dcf5dc817 updated disclaimer 2014-06-20 16:40:35 +02:00
Jan Steemann b952c6724d recovery 2014-06-17 18:19:04 +02:00
Jan Steemann 89f6070e01 cppcheck 2014-06-11 17:53:44 +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
Jan Steemann d4dd58b264 merged primary-collection.cpp with document-collection.cpp 2014-05-31 00:22:32 +02:00
Jan Steemann 7b521a4c9e Merge branch 'devel' of https://github.com/triAGENS/ArangoDB into mjmh
Conflicts:
	arangod/VocBase/document-collection.cpp
	arangod/VocBase/document-collection.h
2014-05-30 12:51:20 +02:00
Max Neunhoeffer 04a3dfff7b Fix logic of abort in handlePlanChangeCoordinator. 2014-05-29 00:32:13 +02:00
Max Neunhoeffer 283af09657 Fix startup race bug in cluster.
If a coordinator cannot get the users of a database, it just gives
up and immediately tries again in the next heartbeat.
2014-05-28 23:18:30 +02:00
Max Neunhoeffer cf35550057 Reduce timeout to get users data on coordinator. 2014-05-28 23:18:12 +02:00
Max Neunhoeffer 0b2544910e Fix database order to do _system first in handlePlanChangeCoordinator 2014-05-28 15:16:57 +02:00
Jan Steemann 4f3ed048e4 fixed disconnect of agency connections, use less CPU while spinning in agency methods 2014-05-28 13:44:35 +02:00
Max Neunhoeffer bb5b341ba6 Get rid of many "using namespace ..." occurrences in header files. 2014-05-22 15:13:16 +02:00
Max Neunhoeffer 2820afdcc2 Remove many extern "C" declarations that are no longer needed. 2014-05-22 10:19:03 +02:00
Max Neunhoeffer e7560357d2 Further cleanup with #include "Basics/Common.h" 2014-05-21 16:59:54 +02:00
Max Neunhoeffer ff1dfdd55f Header cleanup: use #include "Basics/Common.h" in all C++ files. 2014-05-21 15:50:30 +02:00
Max Neunhoeffer 0af211c1e5 More header cleanups. 2014-05-21 13:42:41 +02:00
Max Neunhoeffer 147e829754 Ahuacatl is now C++ and compiles again. 2014-05-21 11:30:44 +02:00
Jan Steemann 3f6d28de8d fixed VS warnings 2014-05-13 12:44:00 +02:00
Jan Steemann 14813638dd removed boost 2014-05-12 17:22:42 +02:00
Max Neunhoeffer 8ce1b08183 Add a ClusterMethod to truncate a collection in a cluster. 2014-05-09 23:14:41 +02:00
Max Neunhoeffer 19289b6d37 First working version of arangorestore for clusters. 2014-05-09 16:33:54 +02:00
Jan Steemann 2e17f4bcd7 cppcheck 2014-05-09 00:21:17 +02:00
Max Neunhoeffer df68f47338 Use StringBuffer in SimpleHttpResult rather than stringstream. 2014-05-07 16:35:40 +02:00
Max Neunhoeffer 02b68533e1 Export cluster auth on dispatchers (non-cluster) to JS. 2014-05-06 13:01:54 +02:00
Jan Steemann 0a5e641f97 added index memory usage statistics
this also adds index memory usage to the output of the `figures` method
2014-05-02 22:05:29 +02:00
Frank Celler 8e9ad58f3b added cancelation of asnyc jobs
Conflicts:
	arangod/V8Server/ApplicationV8.cpp
	arangod/V8Server/v8-actions.cpp
	lib/Rest/Handler.h
2014-04-16 20:16:22 +02:00
Jan Steemann 17bf8ebafb fixed VS warnings 2014-04-03 16:13:56 +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
Max Neunhoeffer 9d43383f1d Fix automatic reload of user config on coordinators. 2014-03-07 11:37:16 +01:00
Max Neunhoeffer ed46d0d3a8 Increase TTL value for heartbeat status in agency to 8. 2014-03-06 17:54:34 +01:00
Jan Steemann b3b22a1f1c changed authentication procedure 2014-03-06 16:37:00 +01:00
Jan Steemann c092158891 disable forwarding of expect header 2014-03-03 19:24:26 +01:00
Jan Steemann 3478c8bc74 cppcheck 2014-03-03 09:12:34 +01:00
Max Neunhoeffer cb8f0257a7 Give the server state in the agency a time to live. 2014-02-28 18:47:46 +01:00
Max Neunhoeffer 0a8555fab3 Sort out path to javascript files. 2014-02-28 14:19:04 +01:00
Jan Steemann 4615310e97 Merge branch 'sharding' of https://github.com/triAGENS/ArangoDB into sharding 2014-02-28 13:50:56 +01:00
Jan Steemann fd08bb0feb use indexes in AQL 2014-02-28 13:50:39 +01:00
Frank Celler f22f1525d2 Merge branch 'sharding' of github.com:triAGENS/ArangoDB into sharding
Conflicts:
	etc/relative/arangod.conf
2014-02-28 12:03:11 +01:00
Frank Celler 9a410a5b71 added config for server state 2014-02-28 12:02:21 +01:00
Jan Steemann 6f26e4fc23 do not pass auth header 2014-02-28 09:12:27 +01:00
Jan Steemann c04377e4cd Merge branch 'sharding' of https://github.com/triAGENS/ArangoDB into sharding 2014-02-28 08:59:48 +01:00
Jan Steemann ed8f52b323 fixed small memleak reported by valgrind 2014-02-27 20:40:49 +01:00
Jan Steemann 8edf96e9aa added documentation for cluster authentication options 2014-02-27 19:27:12 +01:00
Jan Steemann 897d6f4dcd fixed cluster authentication 2014-02-27 17:45:03 +01:00
Jan Steemann a0c554fa22 fixed tests 2014-02-27 14:58:01 +01:00
Jan Steemann a0c32e90d7 fixed edge access in coordinator 2014-02-27 13:14:02 +01:00
Jan Steemann fe74e030ea fixed keygen test 2014-02-26 16:47:38 +01:00
Jan Steemann 08ff8f9237 allowUserKeys method 2014-02-26 16:31:48 +01:00
Jan Steemann 460455d0ed dont clear result 2014-02-26 16:31:23 +01:00
Jan Steemann 9ac1a7cc50 cluster-internal authentication 2014-02-26 12:01:41 +01:00
Jan Steemann 98ceb07b77 add initial user 2014-02-25 17:05:02 +01:00
Frank Celler 3c5f3a656b Merge branch 'sharding' of github.com:triAGENS/ArangoDB into sharding 2014-02-25 15:32:12 +01:00
Frank Celler f2121ff442 cleanup 2014-02-25 15:32:07 +01:00
Frank Celler 569778ae10 Merge branch 'sharding' of github.com:triAGENS/ArangoDB into sharding 2014-02-25 12:07:46 +01:00
Frank Celler 42fb8244e1 added requeue 2014-02-25 12:07:16 +01:00
Max Neunhoeffer 974cc8b441 Correct a caching bug in ClusterInfo. 2014-02-25 11:34:59 +01:00
Jan Steemann 018a8390ce refactored create/drop database 2014-02-24 14:50:31 +01:00
Jan Steemann 00d8a9023f Merge branch 'sharding' of https://github.com/triAGENS/ArangoDB into sharding 2014-02-21 17:40:38 +01:00
Jan Steemann 7a0aac82e2 re-create database objects on coordinator now, and switch into them 2014-02-21 17:40:00 +01:00
Max Neunhoeffer 91db141ea5 Change value of things in agency according to Sharding.md. 2014-02-21 13:19:57 +01:00
Jan Steemann 2e03f01a25 moved implementation of DBServerJob into own file 2014-02-21 09:09:21 +01:00
Jan Steemann 2f6f59e228 fixed startup race condition 2014-02-21 08:47:24 +01:00
Jan Steemann 13357cb846 made clear functions private 2014-02-20 17:33:56 +01:00
Jan Steemann 0480dbb404 added collection.revision() 2014-02-20 17:30:26 +01:00
Jan Steemann a820a74a6b added collection.figures() for sharded collections 2014-02-20 17:06:36 +01:00
Jan Steemann 82d84e92dd more sleeping 2014-02-19 18:33:11 +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
Jan Steemann 29f3e17eef extract real error number 2014-02-18 14:27:32 +01:00
Max Neunhoeffer 064aec971e Get rid of template parameters for make_pair in one place. 2014-02-17 14:11:47 +01:00
Jan Steemann f2cd112bf5 index ids 2014-02-13 16:30:48 +01:00
Jan Steemann 7970881b22 single-threaded plan changes 2014-02-13 15:33:29 +01:00
Jan Steemann 4fc8cae57d index creation with ids 2014-02-13 11:00:08 +01:00
Jan Steemann 4dca29cf4e fixed dropIndex 2014-02-12 18:17:15 +01:00
Jan Steemann c4d52ff133 getIndexes, dropIndex 2014-02-12 17:09:47 +01:00
Max Neunhoeffer 3d48a5294a Please clang++ by using an explicit cast to unsigned long long. 2014-02-12 11:52:09 +01:00
Jan Steemann d52724475f cap constraints 2014-02-10 17:46:54 +01:00
Jan Steemann 88bfe8f18c fulltext indexes 2014-02-10 14:55:27 +01:00
Jan Steemann 399ddebbd3 ensureIndex 1st 2014-02-10 14:36:32 +01:00
Max Neunhoeffer 06907b7e9f Cleanup paths in planner and kickstarter. 2014-02-10 11:56:23 +01:00
Max Neunhoeffer bc79698750 Make executable path and basePath available through ServerState. 2014-02-10 09:59:41 +01:00
Jan Steemann 6c4a9d45d7 fixed memleaks 2014-02-07 12:58:45 +01:00
Jan Steemann 4e008cfb3e fixed furious heartbeat ranting 2014-02-06 16:05:08 +01:00
Jan Steemann b4d9f10f17 fixed some database methods 2014-02-06 15:54:34 +01:00
Jan Steemann 4ee05d303c invalidate caches 2014-02-06 14:14:52 +01:00
Jan Steemann 10eb807366 fixed HTTP CRUD operations 2014-02-05 17:19:45 +01:00
Jan Steemann 58b3e0f99d splitted a few tests 2014-02-05 15:15:51 +01:00
Jan Steemann dafa0a3760 added test cases 2014-02-04 17:53:38 +01:00
Jan Steemann 6b8169ee7b fix invalid caching of sharded collection names in db.<obj> 2014-01-31 15:20:07 +01:00
Jan Steemann 9643469631 do not allow changing shard key attributes 2014-01-31 13:19:03 +01:00
Max Neunhoeffer 4d3b747182 Add getAllDocumentsOnCoordinator and fix bugs. 2014-01-31 01:02:51 +01:00
Max Neunhoeffer a792adec39 Leave connection to agency open. 2014-01-30 20:56:30 +01:00
Max Neunhoeffer b0e14bb686 Increase minimal batch size for uniqids to 1000000. 2014-01-30 17:54:11 +01:00
Max Neunhoeffer 5512868cd9 Merge branch 'sharding' of ssh://github.com/triAGENS/ArangoDB into sharding 2014-01-30 17:27:30 +01:00
Max Neunhoeffer 3a5a085bc5 Sort out mess with collection name/id lookup in cluster. 2014-01-30 17:27:06 +01:00
Jan Steemann fd6b0f0ea6 fetch more ids in each batch 2014-01-30 15:40:17 +01:00
Jan Steemann 4741d2c8ff added count() 2014-01-29 18:49:11 +01:00
Max Neunhoeffer 22f0ab02db Merge branch 'sharding' of ssh://github.com/triAGENS/ArangoDB into sharding 2014-01-29 16:23:45 +01:00
Max Neunhoeffer ed39834029 CRUD basically working on cluster. 2014-01-29 16:23:17 +01:00
Jan Steemann 9175fddd4d Merge branch 'sharding' of https://github.com/triAGENS/ArangoDB into sharding 2014-01-29 13:51:32 +01:00
Jan Steemann 5f8a59d696 all() sharded 2014-01-29 13:51:12 +01:00
Max Neunhoeffer 4b5fe412d7 Very dirty hack to improve hashing for sharding attributes. 2014-01-29 13:44:09 +01:00
Max Neunhoeffer 60f47e1f21 Fix body management in asyncRequest. 2014-01-29 13:21:53 +01:00
Max Neunhoeffer 409f32b965 Add isDBserver method to ServerState class. 2014-01-29 11:23:58 +01:00
Max Neunhoeffer 61575e473e Remove debugging output. 2014-01-29 09:29:06 +01:00
Max Neunhoeffer 35c6a3ffdc Use shared_ptr for CollectionInfo(Current) export.
This at the same time fixes an allocation bug with TRI_json_t*.
2014-01-29 09:21:09 +01:00
Max Neunhoeffer c3f01237b0 Implement replace and update on cluster.
This still has a freeing too early bug with TRI_json_t.
2014-01-28 16:49:44 +01:00
Max Neunhoeffer 59ad7cab9a Remove unused files. 2014-01-28 08:45:48 +01:00
Jan Steemann e906f68235 windows fixes 2014-01-27 17:46:15 +01:00
Jan Steemann 9e52c2b866 Windows fixes 2014-01-27 13:34:56 +01:00
Max Neunhoeffer 98df540266 Add support for GET and HEAD on cluster. 2014-01-27 10:41:35 +01:00
Max Neunhoeffer 7d5723756f Implement DELETE REST method on the coordinator. 2014-01-24 21:31:58 +01:00
Max Neunhoeffer 4526181f82 Implement C of CRUD on cluster for V8 calls. 2014-01-24 13:11:20 +01:00
Max Neunhoeffer f5c274e8c0 Fix error handling and another bug in create document for cluster. 2014-01-24 10:35:37 +01:00