1
0
Fork 0
Commit Graph

78 Commits

Author SHA1 Message Date
Willi Goesgens 5e75ec8bb5 Expression:
- add function isSimpleAccessReference() to check whether it is a coll.attr.attr
 - add function getAccessNRef() to retrieve pair("attr.attr", "coll"),
SortIndex optimizer:
 - use the new functionality to get better readable code.
rename indexes -> indices
2014-08-26 17:26:46 +02:00
Willi Goesgens 18d308af0f SortNode: add method that looks up the expressions referenced by the Sortnode, and returns them paired with ASC/DESC. 2014-08-26 15:38:55 +02:00
Willi Goesgens ff4e00eb86 SortIndex optimizer:
- rename getIndexes to getIndexesUnordered
  - add CompareIndex & getIndexesOrdered to retrieve a list which does an ordered match on the available skiplist indices
  - fetch the ordered matching indices
  - only remove the sortnode if its a full qualified match.
2014-08-26 13:53:19 +02:00
Willi Goesgens 10603f904d Walker: the process of walking now is aborted if the before-hook returns true. 2014-08-25 15:48:21 +02:00
James 8896a01753 making the arguments of IndexRangeNode more general. 2014-08-25 15:11:54 +02:00
James 033735fbba removing debug output and commenting out useIndexRange. 2014-08-25 13:12:19 +02:00
James c801fc4992 deserialising of IndexRangeNode finally working. 2014-08-25 13:05:22 +02:00
Jan Steemann 7330597f15 fixed ambigious method JsonHelper::getStringValue 2014-08-22 21:53:29 +02:00
Max Neunhoeffer 4b229c5873 Merge branch 'aql2' of ssh://github.com/triAGENS/ArangoDB into aql2
Conflicts:
	lib/Basics/JsonHelper.h
2014-08-22 17:02:06 +02:00
Max Neunhoeffer 8fd6cd1184 Implement clear unneeded registers. 2014-08-22 17:00:53 +02:00
James 99623c8e2a finished deserialising of IndexRangeNode. 2014-08-22 16:57:34 +02:00
James 8559f60766 fixed bugs in last. 2014-08-22 16:25:23 +02:00
James 931aaee618 Merge branch 'aql2' of ssh://github.com/triAGENS/ArangoDB into aql2
Conflicts:
	arangod/Aql/OptimizerRules.cpp
2014-08-22 16:19:01 +02:00
James 4c49a3be5e deserialising of IndexRangeNode almost completed. 2014-08-22 16:17:10 +02:00
Jan Steemann 55608ceae2 use index nodes 2014-08-22 13:53:01 +02:00
Jan Steemann 3a60913afe fix JSON serialization of indexes 2014-08-22 13:13:07 +02:00
Jan Steemann 5d5aaaa949 Merge branch 'aql2' of https://github.com/triAGENS/ArangoDB into aql2 2014-08-22 12:00:55 +02:00
James 3987067339 cleaning up and readded toJsonHelper method for IndexRangeNode. 2014-08-22 10:55:51 +02:00
Jan Steemann 0793804206 Merge branch 'aql2' of https://github.com/triAGENS/ArangoDB into aql2 2014-08-22 10:44:27 +02:00
Jan Steemann 30c6b26b6d add plans! 2014-08-22 10:44:19 +02:00
James 4ba4ec4523 moving function getIndexes for EnumerateCollectionNode from h to cpp file. 2014-08-22 10:39:41 +02:00
Jan Steemann 2b27957546 added AQL_EXPLAIN() 2014-08-22 09:51:48 +02:00
Max Neunhoeffer 9a7dd748f4 Fix linkage bug. 2014-08-21 16:54:52 +02:00
Jan Steemann 81f08b7032 added insertDependency 2014-08-21 15:17:55 +02:00
James 7b5f52069a Merge branch 'aql2' of ssh://github.com/triAGENS/ArangoDB into aql2
Conflicts:
	arangod/Aql/OptimizerRules.cpp
2014-08-21 13:16:24 +02:00
Jan Steemann 0e8b61124e less verbose AST dumps in AQL_PARSE 2014-08-21 13:08:21 +02:00
James aa03c16be0 Merge branch 'aql2' of ssh://github.com/triAGENS/ArangoDB into aql2
Conflicts:
	arangod/Aql/OptimizerRules.cpp
2014-08-21 12:53:05 +02:00
Jan Steemann 1edd170317 turned off optimization 2014-08-21 11:21:03 +02:00
James a8801803dd more IndexRangeNode stuff 2014-08-21 11:16:39 +02:00
Max Neunhoeffer 6ae1432db5 Merge branch 'aql2' of ssh://github.com/triAGENS/ArangoDB into aql2 2014-08-21 10:17:40 +02:00
Max Neunhoeffer 52f48cd296 Add NoResultsNode. 2014-08-21 10:17:18 +02:00
Jan Steemann 1aeed2152c fixed de-serialization 2014-08-21 10:02:30 +02:00
Jan Steemann 670b407185 disable filters that never produce results 2014-08-20 18:24:52 +02:00
Jan Steemann 3fe8831a03 fixed optimizer bug due to duplicate variable representation 2014-08-20 14:18:33 +02:00
Willi Goesgens 152d8dadcf Json-Dumper: Output json dump; assert equalness. 2014-08-20 11:19:16 +02:00
Willi Goesgens 0ad6da9427 Json Serialisation: Use helper function to read variables from the json 2014-08-20 10:57:59 +02:00
Jan Steemann 592ada1d36 Merge branch 'aql2' of https://github.com/triAGENS/ArangoDB into aql2
Conflicts:
	arangod/Aql/ExecutionNode.h
2014-08-19 18:58:32 +02:00
Jan Steemann 99ce138c12 fixed creation of subqueries from JSON input 2014-08-19 18:51:11 +02:00
James 447282d0bd Merge branch 'aql2' of ssh://github.com/triAGENS/ArangoDB into aql2
Conflicts:
	arangod/Aql/Optimizer.cpp
	arangod/Aql/OptimizerRules.cpp
2014-08-19 17:00:16 +02:00
Willi Goesgens f179c35f02 Follow changes in Replace & UpdateNode - they have inDoc/inKey/out Variable now.
Merge branch 'aql2' of github.com:triAGENS/ArangoDB into aql2

Conflicts:
	arangod/Aql/ExecutionPlan.cpp
2014-08-19 16:19:38 +02:00
Willi Goesgens 1a6487ab14 Json de/serialization 2014-08-19 16:09:37 +02:00
Jan Steemann 79e68e72e3 fixed removeUnnecessaryCalc 2014-08-19 15:46:04 +02:00
Jan Steemann e4abcdc843 added optimizer rule 2014-08-19 13:59:05 +02:00
James b82b0fbefc remove comment and update the toJsonHelper for IndexRangeNode. 2014-08-19 12:08:22 +02:00
James 857083adc9 starting to add optimizer rules which create IndexRangeNodes. 2014-08-19 12:02:50 +02:00
James ad8e179cf1 adding unbounded ranges info for IndexRangeNode. 2014-08-18 17:18:58 +02:00
Jan Steemann 0666708206 Merge branch 'aql2' of https://github.com/triAGENS/ArangoDB into aql2 2014-08-18 14:27:37 +02:00
Jan Steemann e6e78811b5 fixed replace 2014-08-18 14:27:23 +02:00
James 1118add7e6 uncommenting out. 2014-08-18 14:15:40 +02:00
James fb1d69bbae Merge branch 'aql2' of ssh://github.com/triAGENS/ArangoDB into aql2 2014-08-18 14:12:10 +02:00