1
0
Fork 0
Commit Graph

812 Commits

Author SHA1 Message Date
jsteemann 1b959c827d more const unification 2016-01-15 00:09:52 +01:00
jsteemann f66eb007cd some const unification 2016-01-15 00:03:03 +01:00
Max Neunhoeffer b0283077db Merge branch 'devel' into ClustUp2 2016-01-11 11:41:36 +01:00
Max Neunhoeffer dd364a9d20 Fix merge. 2016-01-11 11:38:10 +01:00
Max Neunhoeffer e7eae3a73a Merge branch 'devel' into ClustUp2 2016-01-11 11:01:45 +01:00
Jan Steemann 687d6133f0 comments reformatting 2016-01-11 09:52:39 +01:00
jsteemann 9f0576c65f don't rely so much on namespace std being present 2016-01-08 01:05:06 +01:00
jsteemann 50c0e18d53 removed useless con|destructor comments 2016-01-07 21:19:53 +01:00
Jan Steemann 8b4b6a1943 moved docu blocks into their own files 2016-01-07 16:03:17 +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 3e0dd5dd14 fixed cluster shutdown 2016-01-05 18:30:26 +01:00
Jan Steemann f422576ee0 clang-format 2016-01-05 17:43:24 +01:00
jsteemann a6cb463e06 Merge branch 'devel' of https://github.com/arangodb/arangodb into vpack 2016-01-05 00:25:10 +01:00
Frank Celler 1065a1bd2c added work monitor 2016-01-04 15:33:06 +01:00
Max Neunhoeffer aee4bd266c Set heartbeat interval to 5s. 2015-12-29 15:47:57 +01:00
Max Neunhoeffer e81af6274a Add replicationFactor and replicationQuorum. 2015-12-28 14:47:27 +01:00
Max Neunhoeffer 79b5175212 Add followerInfos in ClusterInfo. 2015-12-28 14:31:16 +01:00
Max Neunhoeffer c7f00bfeda Continue work on TODOs. 2015-12-23 14:40:04 +01:00
Max Neunhoeffer 225c8cd843 Work on TODOs. 2015-12-22 16:50:09 +01:00
Jan Steemann fb0a522081 fixed compile error 2015-12-22 14:19:32 +01:00
Max Neunhoeffer 989e92761b Merge branch 'vpack' of ssh://github.com/ArangoDB/ArangoDB into vpack 2015-12-22 14:18:46 +01:00
Max Neunhoeffer 5f3a1fbdb2 Merge branch 'devel' into vpack 2015-12-22 14:18:34 +01:00
Max Neunhoeffer 152f3485b3 Fix dump bug in cluster. 2015-12-22 14:18:11 +01:00
Jan Steemann 1b1e42b1b9 Merge branch 'devel' of https://github.com/arangodb/arangodb into vpack 2015-12-22 14:15:22 +01:00
jsteemann 13fb41c6b0 removed useless flag 2015-12-22 14:15:02 +01:00
Jan Steemann a3898bd54e fixed test 2015-12-22 11:27:05 +01:00
jsteemann a058699312 use std::make_shared 2015-12-18 23:34:18 +01:00
Max Neunhoeffer 0743885dec Fix handling of VPackOptions in Parser/Builder usage.
Also fix TRI_json_t* handling for cluster methods.
2015-12-18 20:42:59 +01:00
Jan Steemann 2b3f3f997b Merge branch 'devel' of https://github.com/arangodb/arangodb into vpack 2015-12-17 10:59:30 +01:00
Michael Hackstein 82eea28fea Merge branch 'vpack' of github.com:arangodb/arangodb into vpack 2015-12-16 19:03:15 +01:00
Jan Steemann 35eda37ab1 make_unique 2015-12-16 11:54:33 +01:00
Jan Steemann 8e18d6463f Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2015-12-16 11:44:56 +01:00
Michael Hackstein ef3889363f Adapted cluster communication to class version of TRI_col_info_t 2015-12-16 11:42:02 +01:00
Jan Steemann a694b7ef48 make_unique 2015-12-16 11:36:35 +01:00
Max Neunhoeffer 5a350b4391 Merge branch 'devel' of ssh://github.com/ArangoDB/ArangoDB into devel 2015-12-16 10:59:18 +01:00
Max Neunhoeffer 98fa31818a Cleanup. 2015-12-16 10:59:10 +01:00
Michael Hackstein 2867ff1eb4 Merge branch 'devel' of github.com:arangodb/arangodb into devel 2015-12-16 10:52:08 +01:00
Michael Hackstein e6e66d4469 Fixed a bug in Traversal Path Uniqueness. 2015-12-16 10:51:54 +01:00
Max Neunhoeffer 1a0687a07a Fix move constructor and move assignment operator for CollectionInfo. 2015-12-16 10:41:11 +01:00
Max Neunhoeffer c376200978 Merge branch 'devel' of ssh://github.com/ArangoDB/ArangoDB into devel 2015-12-16 10:29:50 +01:00
Max Neunhoeffer b337d9bd29 Fix shared_ptr<CONTAINER> direct-use in for bug. 2015-12-16 10:29:23 +01:00
Jan Steemann 65ede56176 make constructor explicit 2015-12-16 10:08:48 +01:00
Jan Steemann acf2dcf7b5 fixed leak 2015-12-16 10:08:21 +01:00
Max Neunhoeffer 0198b4576b Merge branch 'devel' into ClustUp1 2015-12-15 20:40:52 +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
Michael Hackstein f589308bd0 Implemented unique edges on path for AQL traversal in cluster case 2015-12-15 18:04:14 +01:00
Max Neunhoeffer 4451e491ec Merge branch 'devel' into ClustUp1 2015-12-15 17:46:34 +01:00
Jan Steemann ad8381ad6a Merge branch 'devel' of https://github.com/arangodb/arangodb into vpack 2015-12-15 16:37:33 +01:00
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