1
0
Fork 0
Commit Graph

3321 Commits

Author SHA1 Message Date
Jan Steemann d229ac3354 performance optimization 2016-10-13 09:15:42 +02:00
Max Neunhoeffer f2570169e5 Fix a bug in RemoveBlock. 2016-10-12 10:37:05 +02:00
Max Neunhoeffer dd8c604dd4 Merge branch 'devel' of ssh://github.com/ArangoDB/ArangoDB into devel 2016-10-11 23:26:11 +02:00
Max Neunhoeffer 38240c34d9 Add support for AQL REMOVE for smart edge collections. 2016-10-11 23:21:38 +02:00
jsteemann e4d1349e6f debug output for RestHandlers 2016-10-11 17:51:41 +02:00
Michael Hackstein 69ebf08abe Fixed creation of SmartCollections with correct directions. 2016-10-10 17:49:01 +02:00
Andreas Streichardt e75b8f5503 Implement cURL based inter server communication 2016-10-10 14:56:04 +02:00
Michael Hackstein 64e4ee636d Added an option to serialize Variables in TraverserOptions. 2016-10-10 14:38:55 +02:00
Max Neunhoeffer 5d65b0b206 Revert "Fix return value of local edge write to smart edge collection in AQL."
This reverts commit d163a05e49.
2016-10-10 00:32:36 +02:00
Max Neunhoeffer d163a05e49 Fix return value of local edge write to smart edge collection in AQL. 2016-10-10 00:30:32 +02:00
Max Neunhoeffer 1fed0239f7 Fix writing of edges in AQL to smart edge collections. 2016-10-10 00:25:46 +02:00
Max Neunhoeffer 476856954f Changes necessary for AQL INSERT for smart edge collections. 2016-10-09 23:53:26 +02:00
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