1
0
Fork 0
Commit Graph

3359 Commits

Author SHA1 Message Date
Max Neunhoeffer c9763a68ee Fix usesDefaultShardKeys. 2016-10-09 23:22:44 +02:00
Max Neunhoeffer f578ee394f Fixes in AQL write code to smart collections. 2016-10-09 11:09:00 +02:00
Max Neunhoeffer 4443038e1b Change collection handling in Ast nodes again. 2016-10-08 00:57:30 +02:00
Max Neunhoeffer f316a9bc4c More changes for AQL writing to smart edge collections. 2016-10-08 00:48:23 +02:00
Max Neunhoeffer b14386c601 Merge branch 'devel' of ssh://github.com/ArangoDB/ArangoDB into devel 2016-10-07 21:24:51 +02:00
Max Neunhoeffer 82e548ff8b Change setup of getResponsibleShard w.r.t. collection. 2016-10-07 21:05:18 +02:00
jsteemann 0f49a6d8b7 make sort a bit more clever 2016-10-07 16:09:28 +02:00
Max Neunhoeffer 35cc5734f2 Improve collection handling in AQL (still far from good). 2016-10-07 13:11:53 +02:00
Max Neunhoeffer ecc3b5696e Add planning stage for AQL writing to smart edge colls. 2016-10-07 11:25:23 +02:00
jsteemann ee67d2e0d2 fixed typo in comment 2016-10-07 09:48:17 +02:00
jsteemann d67c6372aa fixed issue #2086 2016-10-06 14:04:15 +02:00
jsteemann c934f8e8dd added AQL function `DISTANCE()` for distance calculations 2016-10-06 12:01:04 +02:00
Jan Steemann d9d6588151 fixed issue #2081 2016-10-05 18:08:50 +02:00
Michael Hackstein 9a91e410c2 Fixed a bug with the direction and isSmart check for traverser 2016-10-05 15:26:06 +02:00
Michael Hackstein 1830ea683e Now the traverser is able to work with SmartCollections without Graphs. 2016-10-05 14:47:18 +02:00
Michael Hackstein 1025fbd772 Patched TraversalNode to be able to execute smart searches on EdgeCollections only. 2016-10-04 13:09:54 +02:00
Max Neunhoeffer b5312cd95e arangodb::aql::Collection::shardIds for smart edge colls. 2016-09-30 16:42:05 +02:00
Max Neunhoeffer 5cd913e003 Fix error handling for ClusterInfo::getCollection. 2016-09-30 14:11:46 +02:00
Max Neunhoeffer 37159a2d6c Fix enterprise version for non-smart and single server graph traversals. 2016-09-30 13:02:58 +02:00
Max Neunhoeffer 55802fd0de Fix single server AQL for graph traversals. 2016-09-29 16:38:36 +02:00
Michael Hackstein e92deea80f Merge branch 'devel' of github.com:arangodb/arangodb into devel 2016-09-29 14:01:27 +02:00
Michael Hackstein af623854fa Fixed Smart graph injection of collections. 2016-09-29 14:01:18 +02:00
jsteemann ebbd07a301 fix compile warning 2016-09-29 13:49:39 +02:00
Max Neunhoeffer 944b29c2a2 Make AQL aware of smart traversals for enterprise. 2016-09-29 11:02:57 +02:00
Max Neunhoeffer 154e3c86fc Add support in AQL for smart edge collections in traversals. 2016-09-29 10:57:49 +02:00
jsteemann a45322076a issue #2079 2016-09-27 16:34:39 +02:00
jsteemann bbc0e8940c issue #2071
make the AQL query optimizer inject filter condition expressions referred to by variables during filter condition aggregation
for example, in the following query

    FOR doc IN collection
      LET cond1 = (doc.value == 1)
      LET cond2 = (doc.value == 2)
      FILTER cond1 || cond2
      RETURN { doc, cond1, cond2 }

the optimizer will now inject the conditions for `cond1` and `cond2` into the filter condition `cond1 || cond2`, expanding it to
`(doc.value == 1) || (doc.value == 2)` and making these conditions available for index searching.

note that the optimizer previously already injected some conditions into other conditions, but only if the variable that defined
the condition was not used elsewhere. for example, the filter condition in the query

    FOR doc IN collection
      LET cond = (doc.value == 1)
      FILTER cond
      RETURN { doc }

already got optimized before because `cond` was only used once in the query and the optimizer decided to inject it into the place
where it was used.
this only worked for variables that were referred to once in the query. when a variable was used multiple times, the condition
was not injected as in the following query

    FOR doc IN collection
      LET cond = (doc.value == 1)
      FILTER cond
      RETURN { doc, cond }

the fix for #2070 now will enable this optimization so that the query can use an index on `doc.value` if available.
2016-09-22 20:29:27 +02:00
jsteemann 5e26337548 issue #2070 2016-09-22 19:59:13 +02:00
Michael Hackstein 63d086eb4f Fixed optimization of ANY in Traversals. It was included in the traverser who actually cannot handle it. 2016-09-22 17:24:39 +02:00
Jan Steemann f0e14cff7d changed behavior of array comparison operators for empty arrays 2016-09-21 11:01:59 +02:00
Michael Hackstein d01c7ca32b Disabled {uniqueEdges: 'global'} and {uniqueVertices: 'global', bfs: false} in Pattern Matching query as their result is entirely non deterministic. 2016-09-19 13:28:43 +02:00
jsteemann e245e155a1 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2016-09-19 08:59:16 +02:00
jsteemann 6d2a93d997 added experimental AQL functions `JSON_STRINGIFY` and `JSON_PARSE` 2016-09-19 08:58:52 +02:00
Jan Steemann a2deb13c8d fixed issue #2060 2016-09-19 08:50:13 +02:00
Michael Hackstein a1089521c3 Finding graphs by name now resolve externals one step earlier. 2016-09-15 10:04:36 +02:00
Michael Hackstein c6cd5574b1 Removed a graph optimization which increased the minDepth if a filter is defined on a higher depth. Under some circumstances this filter can be matched if the path is not long enough. 2016-09-14 10:23:34 +02:00
Michael Hackstein fcdaee7c5d Merge branch 'devel' of github.com:arangodb/arangodb into devel 2016-09-13 14:43:34 +02:00
Michael Hackstein 74500ee693 The TraversalNode in AQL now can enhance the TraverserEngine information. 2016-09-13 14:43:25 +02:00
Max Neunhoeffer 08e89211f2 Include SmartGraphTraverser.h in enterprise case. 2016-09-13 14:20:55 +02:00
Jan Steemann 84fbc98081 added assertions 2016-09-13 12:14:46 +02:00
jsteemann 467f260400 fix compile warning 2016-09-13 12:10:06 +02:00
Frank Celler bfe84ef34e simplified expression 2016-09-12 18:07:55 +02:00
Frank Celler eed90fc588 fixed cppcheck warnings 2016-09-09 15:08:48 +02:00
Jan Steemann 6ebfdf5e1e don't crash when lock request fails 2016-09-09 13:47:21 +02:00
Michael Hackstein 1625260f4e Fixed shutdown of Traversal Blocks in Cluster 2016-09-08 13:37:29 +02:00
Michael Hackstein 0bec84ddd5 Merge branch 'generic-col-types' of github.com:arangodb/arangodb into generic-col-types 2016-09-08 11:29:55 +02:00
jsteemann f3d836c86d unify exception debugging 2016-09-08 09:34:33 +02:00
jsteemann 34f7e27d6c Merge branch 'devel' of https://github.com/arangodb/arangodb into generic-col-types 2016-09-08 09:27:53 +02:00
Michael Hackstein 9497ae9ec8 Improved shutdown process of Graph Traverser Engines. This state causes a double free. Merge commit. 2016-09-08 09:09:59 +02:00
Frank Celler 852bfa08eb silenced cppcheck warning 2016-09-08 08:43:47 +02:00
Mark c366fa55e3 Merge branch 'generic-col-types' of https://github.com/arangodb/arangodb into generic-col-types 2016-09-07 14:53:06 +02:00
Mark 4fb57e4c27 fixed compile errors (visual studio) 2016-09-07 14:52:52 +02:00
Michael Hackstein 08428fcb5f Added a special handling for EDGE_INDEX ... again ... Fixes crash in 9cd3b7a4f5. 2016-09-07 14:03:55 +02:00
Michael Hackstein c046c9a06a Merge branch 'generic-col-types' of github.com:arangodb/arangodb into generic-col-types 2016-09-07 13:38:23 +02:00
Michael Hackstein 9cd3b7a4f5 Modified interna of LookupInfo used in traverser. It should now properly name the attribute that has to be adjusted with new _from / _to values. However this is a bug somewhere still. This commit crashes. 2016-09-07 13:37:57 +02:00
jsteemann 98dc073774 Merge branch 'devel' of https://github.com/arangodb/arangodb into generic-col-types 2016-09-07 10:01:49 +02:00
Jan Steemann a79c8360d4 fixed issue #2039 2016-09-07 09:59:41 +02:00
Michael Hackstein 4f50911c88 Fixed a bug in Traversal Explainer. Also fixed undefined behaviour when directly checking for an attribute omitting == true in early traversal filter. 2016-09-06 18:46:40 +02:00
jsteemann 733de3b5f0 initialize some pointer variables 2016-09-06 14:47:09 +02:00
Michael Hackstein e22014a272 Merge branch 'MIT' of github.com:arangodb/arangodb into generic-col-types 2016-09-06 09:33:23 +02:00
jsteemann 1823cff3a9 removed TRI_collection_t 2016-09-02 14:54:13 +02:00
jsteemann 4839d65b36 moved things out of TRI_collection_t 2016-09-02 11:56:48 +02:00
jsteemann 002f503dac don't use c_str() 2016-09-02 09:14:34 +02:00
jsteemann a04934ce50 Merge branch 'engine-vs-velocystream' of https://github.com/arangodb/arangodb into generic-col-types 2016-08-31 09:25:09 +02:00
jsteemann b2eadbd179 Merge branch 'devel' of https://github.com/arangodb/arangodb into generic-col-types 2016-08-30 16:07:50 +02:00
Jan Steemann b7be5d5cfb fixed issue #2026 2016-08-30 15:14:16 +02:00
jsteemann 2134afaa83 renamed method 2016-08-30 10:36:34 +02:00
jsteemann b9f8709104 renamed GeoIndex2 to GeoIndex 2016-08-29 13:02:07 +02:00
Michael Hackstein 0985e7fc88 Merge branch 'engine-vs-velocystream' of github.com:arangodb/arangodb into generic-col-types 2016-08-26 12:52:41 +02:00
jsteemann 8a6d054642 Merge branch 'devel' of https://github.com/arangodb/arangodb into engine-vs-velocystream 2016-08-26 12:37:07 +02:00
Jan Steemann 0392ba9b1a throw OOM error in case no buffer can be allocated 2016-08-26 11:00:05 +02:00
Michael Hackstein b01a7ac0d5 Merge branch 'engine-vs-velocystream' of github.com:arangodb/arangodb into generic-col-types 2016-08-26 08:02:54 +02:00
Michael Hackstein e75567dae5 Further fixes for tests: Fixed unitialized count. Fixed some false CORRUPTED_COLLECTION states. 2016-08-26 08:02:34 +02:00
jsteemann c6efe26198 cppcheck 2016-08-25 14:04:23 +02:00
Michael Hackstein 1f3dabc8e1 Merge branch 'engine-vs-velocystream' of github.com:arangodb/arangodb into generic-col-types 2016-08-25 11:08:39 +02:00
Michael Hackstein 2af30f056d Moved index creation to use LogicalCollection instead of TRI_collection_t. Involved changes of the constructor, all can now be created using iid and Slice. Removed specialized functions to create/find indixes in v8-voc index. Also the iteration is modified. This commit compiles but tests will fail. Merge commit. 2016-08-25 09:57:36 +02:00
jsteemann 1dab450622 Merge branch 'devel' of https://github.com/arangodb/arangodb into readcache 2016-08-24 17:35:10 +02:00
jsteemann 04f5fbbdb2 fixed issue #2018 2016-08-24 17:33:49 +02:00
jsteemann f92815b09b Merge branch 'devel' of https://github.com/arangodb/arangodb into engine-vs-velocystream 2016-08-24 09:38:06 +02:00
Wilfried Goesgens 6934baa6a4 Attempt not to bypass error handling so we hopefully get some more information on issue #2011 2016-08-23 17:02:28 +02:00
Jan Christoph Uhde 5be5030983 Merge branch 'obi-velocystream-enums' into engine-vs-velocystream
* obi-velocystream-enums:
  clean up - remove enumToEnum magic
  finish ResponseCode enum
  finish  ProtocolVersion, ProtocolType and ConnectionType
  finish ContentType enum
  preapre move of ContentTypes
  finish RequestType enum
  prepare replacement of request types
  even more error messages
  slightly better error messages
  better exceptions form event loop
  mark len constexpr

Conflicts:
	arangod/Agency/Inception.cpp
2016-08-23 16:01:58 +02:00
Jan Christoph Uhde 1febeadfd7 finish ResponseCode enum 2016-08-23 15:46:42 +02:00
Jan Christoph Uhde d3654d99d8 finish RequestType enum 2016-08-23 14:49:29 +02:00
jsteemann 5f06a5c025 Merge branch 'devel' of https://github.com/arangodb/arangodb into readcache 2016-08-23 12:13:08 +02:00
Jan Steemann 57fa55921c fix execution of AQL traversal expressions when there are multiple conditions that refer to variables set outside the traversal 2016-08-23 10:48:08 +02:00
Jan Steemann b296468a18 more optimizations 2016-08-22 17:36:04 +02:00
Michael Hackstein 635641d4e5 Merge branch 'engine-vs-velocystream' of github.com:arangodb/arangodb into engine-vs-velocystream 2016-08-19 13:15:48 +02:00
jsteemann c5e578917c removed useless include 2016-08-19 12:42:45 +02:00
Michael Hackstein 96f11c7e9f Merge branch 'engine-vs-velocystream' of github.com:arangodb/arangodb into generic-col-types 2016-08-19 12:26:07 +02:00
jsteemann e9866698aa removed JsonHelper 2016-08-19 12:24:12 +02:00
jsteemann 1b11096060 remove Json/JsonHelper/TRI_json_t 2016-08-18 17:28:43 +02:00
jsteemann 21dd73074a cppcheck 2016-08-18 16:57:55 +02:00
jsteemann 1cfee8059a remove TRI_json_t remainders 2016-08-18 16:13:52 +02:00
Michael Hackstein d3ba488271 Merge branch 'engine-vs-velocystream' of github.com:arangodb/arangodb into generic-col-types 2016-08-18 12:38:07 +02:00
jsteemann 370093d37f removed unused method 2016-08-18 11:47:27 +02:00
jsteemann a2085066e0 use VPack 2016-08-18 10:36:52 +02:00
Michael Hackstein 21335bb398 Merge branch 'engine-vs-velocystream' of github.com:arangodb/arangodb into generic-col-types 2016-08-17 11:23:04 +02:00
Michael Hackstein 17a6da8afb Removed all references on TRI_vocbase_col_t and replaced them by LogicalCollection class. Not everything is properly moved and implemetned yet. This commit causes crashes. 2016-08-17 11:10:39 +02:00
Michael Hackstein 14e0411a87 Merge branch 'engine-vs-velocystream' of github.com:arangodb/arangodb into generic-col-types 2016-08-16 10:29:26 +02:00
jsteemann c00c4cd2bc Merge branch 'devel' of https://github.com/arangodb/arangodb into readcache 2016-08-15 18:58:43 +02:00