1
0
Fork 0
Commit Graph

305 Commits

Author SHA1 Message Date
jsteemann 56e03af4c4 pass "isModificationQuery" around in cluster 2018-05-27 22:41:08 +02:00
Jan cee529727c
Squashed commit of the following: (#4092) 2018-05-26 10:56:26 +02:00
Jan a295eaa120
show AQL functions used in query in explain output (#5451) 2018-05-24 21:17:51 +02:00
Jan Christoph Uhde a2dcb6cc5d WIP - start adding optional overwrite to insert operation (RepSert) (#5268) 2018-05-24 19:47:15 +02:00
Simon 35992ad67b Coordinator storage engine (#5405) 2018-05-22 19:30:27 +02:00
Vasiliy 27f7f4a0aa issue 389.9: return TRI_vocbase_t& from Query::vocbase() (#5420)
* issue 389.9: return TRI_vocbase_t& from Query::vocbase()

* backport: use view name instead of view id in error messages
2018-05-22 19:03:14 +03:00
Jan 245c759523
fix incompatibility after fullCount change (#5399) 2018-05-22 11:28:17 +02:00
Jan 0d98c0f3ba
Bug fix/fix codescan issues (#5371) 2018-05-16 20:40:37 +02:00
Jan 07e5750737
Feature/change fullcount behavior (#5285) 2018-05-14 15:46:07 +02:00
jsteemann 27e985d5d0 safer casts for ExecutionNode types 2018-05-10 20:08:37 +02:00
Andrey Abramov ddd8ef6667 refactor execution node type enum to be less error prone 2018-05-08 16:23:56 +03:00
Simon 828f1d423c S2 based Geo-Spatial index (#5249) 2018-05-02 23:54:41 +02:00
Andrey Abramov 4649b40b96
Coordinator ArangoSearch view + Execution nodes + AgencyMock (#5160)
* add initial implementation of scatter view rule and node

* add tests for `IResearchViewNode` and `IResearchViewScatterNode`

* add missing check

* modify IResearch execution nodes to use references instead of pointers

* use view id in searialized `ExecutionNode` representation instead of the name

* add cluster mode stubs and checks

* very first attempt to distribute IResearchViewNode

* further implementation of cluster-wide arangosearch views

* fix invalid json format

* add tests for coordinator iresearch view

* allow to retrieve a list of existing views on a coordinator

* more tests for coordinator iresearch view

* some fixes to enable query explanation

* remove Collection dependency from RemoteNode

* remove unnecessary remote ArangoSearch view scatter

* fix explanation appearance

* add some assertions

* minor fixes

* implement IResearchViewCoordinator::updateProperties

* fix view DDL issues

* handle link modifications in DDL operations

* add coordinator implementation of iresearch view links

* fix tests

* further coordinator based view DDL implementation

* further IResearchViewCoordinator implementation

* add initial implementation of AgencyMock

* fix some tests

* code cleanup

* extend test + some fixes

* more tests for IResearchViewCoordinator

* fix tests for IResearchLinkCoordinator

* some fixes after merge

* fix tests

* remove declaration of nonexistent (previously removed) method

* some fixes after review

* remove string duplication

* more tests and fixes

* more fixes and tests

* more tests

* one more test

* fix 'use-after-free' asan error

* fix non-enterprise tests issues
2018-05-02 00:15:11 +03:00
jsteemann cb51e561b7 fix catch tests 2018-04-30 23:13:50 +02:00
Jan 5357adad95
Feature/count plan nodes by type (#5225) 2018-04-30 12:52:32 +02:00
Wilfried Goesgens 7d6e580780 Refactoring & code cleanup (#5138) (#5142) 2018-04-24 14:42:23 +02:00
Jan b325d05357
Bug fix/aql auto keep on collect (#4795)
* automatically detect which variables to keep in AQL COLLECT

If a COLLECT INTO is used, then it is detected which sub-attributes
of the into variables are used later in the query, and automatic
KEEP instructions are added to the COLLECT if possible

Example query:

    FOR doc1 IN collection1
      FOR doc2 IN collection2
        COLLECT x = doc1.x INTO g
        RETURN { x, all: g[*].doc1.y }

would be turned into

    FOR doc1 IN collection1
      FOR doc2 IN collection2
        COLLECT x = doc1.x INTO g KEEP doc1
        RETURN { x, all: g[*].doc1.y }

and prevent `doc2` from being temporarily stored in the variable `g`

* fix runtime warnings

* increase default flush timeout

* added tests
2018-03-14 13:59:46 +01:00
Jan b2b6c06cbf
Feature/efficiency (#3736) 2018-01-05 16:51:31 +01:00
Jan 6ab17171a3
do not materialize entire collections using V8 (#4087) 2018-01-02 15:47:41 +01:00
Jan 2a96df5ca5
Feature iresearch (#4071) 2017-12-18 15:04:59 +01:00
Michael Hackstein 613cc4f749 Reduce planning time of high depth Traversals (#3942)
* Improved the cost estimation of traversals to be independent from max search depth. This fixes #3917

* fix failing test on MSVC
2017-12-08 15:45:08 +01:00
Jan 5abf0c1185 Bug fix/fixes 1511 (#3711) 2017-11-16 14:18:51 +01:00
Michael Hackstein 2b0aa318ec Bug fix/sparse graph register warning (#3569) 2017-11-10 14:33:15 +01:00
Jan 451abcb23d added non-destructive DISTINCT (#3320)
* added non-destructive DISTINCT

* added tests

* update documentation
2017-10-18 12:52:33 +02:00
Simon Grätzer 5bc0be15bc Fixing Cluster Authentication (#3313)
* Adding a missing loadFromDB call

* Various bootstrap fixes

* Fixed revoke error
2017-09-23 15:09:34 +02:00
Jan 0a71b54e1f fix out-of-bounds attribute accessor calls (#3273) 2017-09-18 14:01:06 +02:00
Jan 5165155ed1 Bug fix/fixes 0609 (#3227)
* do not use V8 variant of AQL functions in early optimization stage when a C++ variant is available

* additionally, simplify AQL function definitions and aliases

* warn when more than 90% of max mappings are in use

* added C++ variant of replication catchup

* added `--log.role` option

* updated CHANGELOG

* removed non-existing scheduler.threads option from config

* removed useless __FILE__, __LINE__ invocations

* updated CHANGELOG

* allow a priority V8 context

* remove TRI_CORE_MEM_ZONE

* try to fix Windows errors & warnings

* cleanup

* removed memory zones altogether

* exclude system collections from collection tests
2017-09-13 16:28:21 +02:00
Simon Grätzer ffc465433a No access collections Improvements (#3190)
* consolidated EdgeDocumentToken

* optimizing cluster traversal

* adding skip collection checks

* API cleanup

* copying AQLValue to avoid use-after-free bugs

* Fixing rocksdb SingleServerEdgeCursor

* Fixing a collection resolving issue
2017-09-07 14:55:07 +02:00
jsteemann a35f85bcc7 added proper docs for --query.fail-on-warning 2017-05-29 15:46:48 +02:00
Simon Grätzer 98df9c21a2 Fixing warnings 2017-04-20 19:07:30 +02:00
Michael Hackstein 0fa1980064 More unified merge of Traverser- and ShortestPath- into GraphNode. Now the ShortestPathNode creates TraverserEngines on the Cluster. Finally everything ready to wire computation together 2017-04-19 15:23:37 +02:00
Michael Hackstein 50ce09cd98 Added a generic GraphNode as a base-class for Traversal and ShortestPath. It should handle Graph parsing and Engine creation. 2017-04-19 10:10:47 +02:00
Michael Hackstein cf7136264b Removed V8Traverser files and made ShortestPathOptions an extension of Graph::BaseOptions. Now they are ready to use LokkupInfos as well. Now starting to move logic around 2017-04-10 16:26:23 +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
jsteemann 6bb9863108 fixed issue #2392 2017-03-23 12:10:11 +01:00
jsteemann 57dd92902c move engine-specific optimizer rules into engine 2017-03-07 13:10:58 +01:00
jsteemann f5c8932744 initial version of query execution plan cache, still very rough 2017-02-21 11:58:38 +01:00
jsteemann 7e690a0c61 renaming 2017-02-13 15:18:40 +01:00
jsteemann eb73dbf960 renaming 2017-02-13 13:30:57 +01:00
jsteemann ba44acdcff simplify optimizer API a bit 2017-02-06 15:43:49 +01:00
jsteemann 3c5edeb9b2 fix cluster AQL statistics 2017-02-03 11:47:36 +01:00
jsteemann 00b1632ece factored out AccessMode from transaction.h 2017-01-25 11:57:21 +01:00
Max Neunhoeffer d038ba61e7 Implement attributePath access for SortElementVector and in GatherBlock.
Note: This is not yet used anywhere, so the changes should be entirely
neutral. We are going to use this in the optimizer rules
  scatterInClusterRule
and
  distributeInClusterRule
to make the GatherNode do a merge sort, if an index delivers sorted
streams of documents.
2017-01-18 15:32:59 +01:00
jsteemann 31350a5c14 micro optimizations 2016-11-01 15:23:28 +01: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
Jan Steemann 84fbc98081 added assertions 2016-09-13 12:14:46 +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 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 1cfee8059a remove TRI_json_t remainders 2016-08-18 16:13:52 +02:00