1
0
Fork 0
Commit Graph

124 Commits

Author SHA1 Message Date
Michael Hackstein 1087065ea5 Merge branch 'devel' of github.com:arangodb/arangodb into engine-api 2017-04-13 17:34:25 +02:00
Michael Hackstein 177a3de0fd Squashed commit of the following:
commit ba04aa66ce874fc67644ef2c7b8ee6ef3397e13e
Merge: 8ea1ad2 c6d65ea
Author: Michael Hackstein <michael@arangodb.com>
Date:   Thu Apr 13 16:51:17 2017 +0200

    Merge branch 'devel' of github.com:arangodb/arangodb into devel-feature/traversal-cache

commit 8ea1ad2ff0325fc014479376b5258d1b3fa4f730
Author: Michael Hackstein <michael@arangodb.com>
Date:   Mon Apr 3 14:18:11 2017 +0200

    Deactivated cache in single-server mode

commit 2c68eaeb841aebccccd245ef78bab919adf39a2f
Author: Michael Hackstein <michael@arangodb.com>
Date:   Mon Apr 3 09:18:36 2017 +0200

    Activating document cache in cluster mode for traversals.

commit 3943ca4f8257fe54534949c46749e40c28c4d597
Author: Michael Hackstein <michael@arangodb.com>
Date:   Fri Mar 31 16:10:39 2017 +0200

    Created two implementations of TraverserCache. One that takes responsibility for strings only, the other one also caches Documents.

commit 0951f906f18d3631cec412cd0b00504e6d00fc3e
Merge: 0f9970b 87fbbe8
Author: Michael Hackstein <michael@arangodb.com>
Date:   Fri Mar 31 14:59:16 2017 +0200

    Merge branch 'devel' of github.com:arangodb/arangodb into devel-feature/traversal-cache

commit 0f9970b7bab478c4b591b3f4c7fb18915753df30
Merge: d546fd1 8a42089
Author: Michael Hackstein <michael@arangodb.com>
Date:   Thu Mar 30 17:09:20 2017 +0200

    Merge branch 'devel' of github.com:arangodb/arangodb into devel-feature/traversal-cache

commit d546fd13c6a0a3bb4622f6aefd44ea3a149cc8cb
Merge: 873bc59 bd4a2eb
Author: Michael Hackstein <michael@arangodb.com>
Date:   Wed Mar 29 15:16:54 2017 +0200

    Merge branch 'devel' of github.com:arangodb/arangodb into devel-feature/traversal-cache

commit 873bc5950028248bf209d0c53fc9eb93938e3610
Merge: 8e4457a 3487097
Author: Michael Hackstein <michael@arangodb.com>
Date:   Mon Mar 27 14:00:27 2017 +0200

    Merge branch 'devel' of github.com:arangodb/arangodb into devel-feature/traversal-cache

commit 8e4457a96754bea3437e8d44c0ef9db2366ee86d
Author: Michael Hackstein <michael@arangodb.com>
Date:   Mon Mar 27 13:59:44 2017 +0200

    Removed old VPackSlice based getVertex API in traversers.

commit 2e0716eeeec1ec56b96571a18074539f5e27cb40
Author: Michael Hackstein <michael@arangodb.com>
Date:   Fri Mar 24 09:09:02 2017 +0100

    Fixed logic error in SingleServerEdgeCursor readAll. The cursorId was not propageted properly, which cased filter-evaluations to fail

commit cea85c2ac1163ed0a989c492b8039ed4f7622325
Merge: 538f216 45a4fac
Author: Michael Hackstein <michael@arangodb.com>
Date:   Fri Mar 24 08:17:31 2017 +0100

    Merge branch 'devel' of github.com:arangodb/arangodb into devel-feature/traversal-cache

commit 538f216cbefcdfb4d06fe16a42f223cecae8598b
Merge: 5f4afee 8bfcb49
Author: Simon Grätzer <simon@graetzer.org>
Date:   Thu Mar 23 16:33:44 2017 +0100

    Merge branch 'devel-feature/traversal-cache' of https://github.com/arangodb/arangodb into devel-feature/traversal-cache

commit 5f4afee54094ea6d2a0cfec1abfb75451f228a23
Author: Simon Grätzer <simon@graetzer.org>
Date:   Thu Mar 23 16:33:38 2017 +0100

    VertexGetter StringRef methods

commit 8bfcb490d7a907ebd7dcc9e6f38a8d29baa7c7e5
Author: Michael Hackstein <michael@arangodb.com>
Date:   Thu Mar 23 16:32:38 2017 +0100

    Fixed AqlValues created by traverser-cache. They are now not using externals anymore which cased everything to crash

commit 614cdedb7e30e35f65f289b310c38b2585eb03e4
Merge: 773b0a5 416777b
Author: Michael Hackstein <michael@arangodb.com>
Date:   Thu Mar 23 12:52:19 2017 +0100

    Merge branch 'devel-feature/traversal-cache' of github.com:arangodb/arangodb into devel-feature/traversal-cache

    This state is still red

commit 773b0a5e51f87875fa9bf1440dd002b2e1fcfd2a
Author: Michael Hackstein <michael@arangodb.com>
Date:   Thu Mar 23 12:48:53 2017 +0100

    Added Implementation or readAll in Cluster EdgeCursor. This commit is still red.

commit 82ebbd6ec84918d43bbc64174bc251efa548a4de
Merge: e52b210 35dffc4
Author: Michael Hackstein <michael@arangodb.com>
Date:   Thu Mar 23 11:37:31 2017 +0100

    Merge branch 'devel-feature/traversal-cache' of github.com:arangodb/arangodb into devel-feature/traversal-cache

    This commit is not green.

commit 416777b60a8a0c741d11e9c654745866d0dfa15d
Author: Simon Grätzer <simon@graetzer.org>
Date:   Thu Mar 23 11:25:35 2017 +0100

    Fixed errornous ClusterEdgeCursor implementation of `readAll

commit e52b21025a5f56e2cfc03e3c129da83793f19846
Author: Michael Hackstein <michael@arangodb.com>
Date:   Thu Mar 23 11:01:17 2017 +0100

    Fixed API for Traversals: All functions now use StringRefs to identify vertices and edges which are presisted within the traverser-cache.

commit 35dffc439c156366b1110c6770c1565021934632
Author: Simon Grätzer <simon@graetzer.org>
Date:   Wed Mar 22 20:26:41 2017 +0100

    Fixed a few cluster issues

commit 73cf4fe41c363f6c034a1daeacee1630d7e827a5
Author: Simon Grätzer <simon@graetzer.org>
Date:   Wed Mar 22 17:26:12 2017 +0100

    Fixed EdgeCursor bug

commit 2f7329b4e9711740b423cf2963c6cf3f880c4bdf
Merge: bb9b129 8e5edf5
Author: Michael Hackstein <michael@arangodb.com>
Date:   Wed Mar 22 14:32:07 2017 +0100

    Merge branch 'devel-feature/traversal-cache' of github.com:arangodb/arangodb into devel-feature/traversal-cache

commit 8e5edf5fbe93f34d3340099619baa9a56a738887
Author: Simon Grätzer <simon@graetzer.org>
Date:   Wed Mar 22 14:09:43 2017 +0100

    Fixing compile errors

commit bb9b1294c9ff91f62bc27775a4c7a69c5daca2fd
Merge: 048a4c6 8e51e3b
Author: Michael Hackstein <michael@arangodb.com>
Date:   Wed Mar 22 11:39:17 2017 +0100

    Merge branch 'devel' of github.com:arangodb/arangodb into devel-feature/traversal-cache

commit 048a4c65e11d6fd9cb25a58ee97ed756a419a067
Merge: 693607e c6b177d
Author: Michael Hackstein <michael@arangodb.com>
Date:   Wed Mar 22 11:34:57 2017 +0100

    Solved merge conflicts. Build is still red.

commit c6b177dfc348df0f49f07cd67e83b873871fe6c5
Author: Simon Grätzer <simon@graetzer.org>
Date:   Tue Mar 21 23:04:28 2017 +0100

    Fixed off by one error, and crash

commit 5dbc9eb58f1d21e5a530806d7ad7e52058234b83
Merge: 463e352 db8c255
Author: Simon Grätzer <simon@graetzer.org>
Date:   Tue Mar 21 17:46:01 2017 +0100

    Merge branch 'devel-feature/traversal-cache' of https://github.com/arangodb/arangodb into devel-feature/traversal-cache

    # Conflicts:
    #	arangod/Graph/BreadthFirstEnumerator.cpp

commit 463e3520636c19ae7a7c1d445099f336c5bde31e
Merge: 4e75f29 b8cabbe
Author: Simon Grätzer <simon@graetzer.org>
Date:   Tue Mar 21 17:00:17 2017 +0100

    Merge branch 'devel-feature/traversal-cache' of https://github.com/arangodb/arangodb into devel-feature/traversal-cache

    # Conflicts:
    #	arangod/Graph/BreadthFirstEnumerator.cpp

commit 693607ea92ab3116a628c08c59a983a6fdf8b5f4
Author: Michael Hackstein <michael@arangodb.com>
Date:   Tue Mar 21 16:26:57 2017 +0100

    Moved specialized NeighborsEnumerator into its own files.

commit db8c25587ebcdeff8b32d08cf2d97d723bf2b3fe
Author: Michael Hackstein <michael@arangodb.com>
Date:   Tue Mar 21 15:16:39 2017 +0100

    Replaced SingleServerBreadthFirst with using Callbacks in readAll method of EdgeCursor

commit 4e75f29de95edeea35573b128a0a13e04c9e65d2
Merge: 8716936 6de86c5
Author: Simon Grätzer <simon@graetzer.org>
Date:   Tue Mar 21 14:32:12 2017 +0100

    Merge branch 'devel-feature/traversal-cache' of https://github.com/arangodb/arangodb into devel-feature/traversal-cache

commit b8cabbedebb16c09c8168ec8b5a4499e98c705f4
Author: Michael Hackstein <michael@arangodb.com>
Date:   Tue Mar 21 11:17:23 2017 +0100

    Removed _enumertedPath from BreadthFirstEnumerator. Less string copying expected now.

commit 8716936bd480f4b7c85ece6fc1a51335f1942258
Author: Simon Grätzer <simon@graetzer.org>
Date:   Tue Mar 21 11:05:04 2017 +0100

    Traverser: changed method definitions

commit 14af02fbc08b7e2ed6b0cbb918ff509ffaef76bf
Author: Michael Hackstein <michael@arangodb.com>
Date:   Tue Mar 21 10:45:13 2017 +0100

    Removed usage of _enumeratedPath in lastEdge/Vertex to AQL. Goal is to delete this struct in the class, as it does unneccessary copies

commit 06a20ab0549d97b47eda98d3428e3390619ca5ec
Author: Simon Grätzer <simon@graetzer.org>
Date:   Tue Mar 21 10:39:21 2017 +0100

    Intermediate changes

commit 3a9a5f7c7ad186c669c3986f6f89c5a26b835ee0
Author: Michael Hackstein <michael@arangodb.com>
Date:   Tue Mar 21 10:34:43 2017 +0100

    Logic of BreadthFirstEnumerator now points to the last path returned instead of the next path to return. This will allow to get rid of enumeratedPath in there.

commit 6de86c548220a3ad21c53fb1de691070774130ec
Author: Michael Hackstein <michael@arangodb.com>
Date:   Tue Mar 21 10:17:25 2017 +0100

    Extracted BreadthFirstEnumerator out of PathEnumerator files. Only moving of code.

commit acd1d9eba5d7ea23e0d6beab831a42dc61a385a5
Merge: a99ad3c 1ab8c44
Author: Michael Hackstein <michael@arangodb.com>
Date:   Mon Mar 20 13:13:16 2017 +0100

    Merge branch 'devel' of github.com:arangodb/arangodb into devel-feature/traversal-cache

commit a99ad3c624d7ae4815776f165d65f19e43167e56
Author: Simon Grätzer <simon@graetzer.org>
Date:   Fri Mar 17 13:25:45 2017 +0100

    Added TraverserCache to SingleServerTraverser

commit e88ae1e53d99b55546329413e7b4a5edc48c4875
Author: Michael Hackstein <michael@arangodb.com>
Date:   Wed Mar 15 13:36:05 2017 +0100

    Fixed compiler Issues in TraverserCache

commit 9d89cdc0297813f24064b46a67a43cde9a3d0297
Merge: 9d41804 f18ad19
Author: Michael Hackstein <michael@arangodb.com>
Date:   Wed Mar 15 09:43:06 2017 +0100

    Merge branch 'devel' of github.com:arangodb/arangodb into devel-feature/traversal-cache

commit 9d4180480c7bc37f1f64b6e3141dae611f8d399c
Author: Michael Hackstein <michael@arangodb.com>
Date:   Wed Mar 15 09:42:53 2017 +0100

    Started implementing a Traverser Cache Abstraction that is used to store already fetched documents.
2017-04-13 17:00:44 +02:00
Michael Hackstein 212de2b0d1 Simplified AqlTraverser Setup code by moving shared logic into the TraverserOptions. 2017-04-11 13:47:06 +02:00
Michael Hackstein 052c4942fc Removed superflous aql::ShortestPathOptions and replaced it by traverser::ShortestPathOptions. Api is not fixed yet. 2017-04-10 11:02:01 +02:00
Michael Hackstein 1ab0295f54 Replaced Traverser estimateCost by a more precise version, it now does not check hardcoded on an edge-index estimate. 2017-03-16 09:45:09 +01:00
jsteemann f5c8932744 initial version of query execution plan cache, still very rough 2017-02-21 11:58:38 +01:00
jsteemann 8b273b5eaf Merge branch 'devel' of https://github.com/arangodb/arangodb into engine-api 2017-02-13 08:37:41 +01:00
jsteemann 1e78acad49 fix size_t vs uint64_t confusion 2017-02-10 23:43:47 +01:00
Michael Hackstein 48166a294c TraversalNode now does not know anything about EdgeIndexes any more. Removed isMMFilesEdgeIndex from Transaction, no obsolete 2017-02-10 18:18:23 +01:00
Michael Hackstein fd7341bbfa Moved a generic Aql Edge Condition builder out of the TraversalNode. It shall be used for all edge queries on other places. 2017-02-09 10:35:41 +01:00
jsteemann 62145baa2a Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2017-01-31 15:54:39 +01:00
Michael Hackstein 7ab8e823d6 Added a forgotten VPackBuilder.close() in Traversalnode to VPack. This caused the query planner to fail at certain cases 2017-01-31 14:33:10 +01:00
jsteemann 00b1632ece factored out AccessMode from transaction.h 2017-01-25 11:57:21 +01:00
jsteemann c4d2ff3dce renaming 2017-01-23 15:36:11 +01:00
jsteemann b96897e296 fixed some issues detected by coverity build tool 2016-12-12 15:41:54 +01:00
Michael Hackstein 7aea35e444 Fixed a bug when using a skiplist index in traversals like: [a, unused, _from]. If unused is not part of the condition the traverser ran into undef behaviour. 2016-11-29 10:01:34 +01:00
jsteemann fcacd76bca display index usage of traversals in AQL explainer output (previously missing) 2016-11-10 12:49:02 +01:00
Jan Steemann f0f90bc914 small fixes for traversal explain output 2016-11-08 16:08:58 +01:00
Michael Hackstein 69ebf08abe Fixed creation of SmartCollections with correct directions. 2016-10-10 17:49:01 +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 37159a2d6c Fix enterprise version for non-smart and single server graph traversals. 2016-09-30 13:02:58 +02:00
Michael Hackstein af623854fa Fixed Smart graph injection of collections. 2016-09-29 14:01:18 +02:00
Max Neunhoeffer 154e3c86fc Add support in AQL for smart edge collections in traversals. 2016-09-29 10:57:49 +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
jsteemann 467f260400 fix compile warning 2016-09-13 12:10:06 +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
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 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 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 4839d65b36 moved things out of TRI_collection_t 2016-09-02 11:56:48 +02:00
jsteemann c6efe26198 cppcheck 2016-08-25 14:04:23 +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
jsteemann 1cfee8059a remove TRI_json_t remainders 2016-08-18 16:13:52 +02:00
Michael Hackstein e8ff84c8da cppcheck fixes and dead code cleanup. 2016-08-11 11:15:38 +02:00
Michael Hackstein 3a95244599 Fixed ALL== and NONE== tests for graph traversals. SingleServer and cluster 2016-08-10 17:10:25 +02:00
Michael Hackstein 773e9971b7 First draft of optimization ALL== NONE==. Not yet complete. 2016-08-10 14:05:25 +02:00
Michael Hackstein cb48f04cf7 Removed 'THROW' from destructor 2016-08-05 11:20:21 +02:00
Michael Hackstein 92342f3bed Fixed cloning of TraversalNodes. It now maintains the list of collections 2016-08-04 14:14:53 +02:00
Michael Hackstein 0867e2bb55 The TraversalNode now takes responsibility to clean up traversal engines on DBServers. 2016-08-02 14:05:35 +02:00
Michael Hackstein 07a9924354 Added vertex collections to traversal node in GRAPH case. Also fixed a bug in TravOption serialisation. 2016-08-01 16:51:38 +02:00
Michael Hackstein f663f5da69 Fixed a bug with ANY when copying the plan 2016-08-01 16:08:16 +02:00
Michael Hackstein c6b7a703db Firstattempt to implemenet correct locking in Cluster Traversal. It is not yet fully connected to execution plan. 2016-08-01 15:36:11 +02:00