Willi Goesgens
|
27063a08b5
|
SortIndex optimizer:
- group the ASC/DESC
- find out the real attribute name for nested attributes
|
2014-08-26 09:48:20 +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 |
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
|
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 |
James
|
4ba4ec4523
|
moving function getIndexes for EnumerateCollectionNode from h to cpp file.
|
2014-08-22 10:39:41 +02:00 |
James
|
1afad665fa
|
putting RangeInfo stuff into new file.
|
2014-08-22 10:34:03 +02:00 |
James
|
fecaccf37f
|
fixing comparison of bounds.
|
2014-08-21 18:40:02 +02:00 |
James
|
89ba89bf77
|
added method to check if a range info contains a unique value, and cleaned up FilterToEnumCollFinder.
|
2014-08-21 17:39:06 +02:00 |
James
|
409e663818
|
fixed bugs in comparison of tightness of range bounds, and made it so that invalid ranges insert NoResultNode in the plan.
|
2014-08-21 17:14:42 +02:00 |
James
|
053ab548ba
|
Merge branch 'aql2' of ssh://github.com/triAGENS/ArangoDB into aql2
Conflicts:
arangod/Aql/OptimizerRules.cpp
|
2014-08-21 15:48:58 +02:00 |
James
|
102e866a89
|
adding canThrow methods for ExecutionNodes.
|
2014-08-21 15:46:41 +02:00 |
James
|
4d17c347cc
|
bug fixes in last.
|
2014-08-21 15:38:42 +02:00 |
James
|
deaa8f1271
|
only applying hash indexes if ranges indicate equality.
|
2014-08-21 15:27:53 +02:00 |
Max Neunhoeffer
|
321ab35551
|
Finish _parents in ExecutionNodes business.
|
2014-08-21 15:15:46 +02:00 |
Max Neunhoeffer
|
3007899abe
|
Make an ExecutionNode store its parents.
|
2014-08-21 13:51:37 +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 |
James
|
c4811009a8
|
fixing replaceNode for ExecutionPlan.
|
2014-08-21 12:32:07 +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
|
52f48cd296
|
Add NoResultsNode.
|
2014-08-21 10:17:18 +02:00 |
Jan Steemann
|
670b407185
|
disable filters that never produce results
|
2014-08-20 18:24:52 +02:00 |
James
|
b5d4fc52d1
|
added clone method for execution plan, removed debug prints.
|
2014-08-20 16:34:35 +02:00 |
James
|
260c790bc5
|
fixed bugs in last.
|
2014-08-20 16:13:53 +02:00 |
Jan Steemann
|
3fe8831a03
|
fixed optimizer bug due to duplicate variable representation
|
2014-08-20 14:18:33 +02:00 |
James
|
24b2dd1906
|
finding index in CalculationNodeFinder.
|
2014-08-20 11:38:02 +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 |
James
|
c0ce6d361c
|
AND working for IndexRangeNode.
|
2014-08-19 16:58:10 +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 |
James
|
370892566f
|
added new class to contain ranges, and take their intersections.
|
2014-08-19 15:53:17 +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
|
857083adc9
|
starting to add optimizer rules which create IndexRangeNodes.
|
2014-08-19 12:02:50 +02:00 |
James
|
04b396f65e
|
adding RangeInfoBound to clean things up.
|
2014-08-19 11:01:06 +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
|
fb1d69bbae
|
Merge branch 'aql2' of ssh://github.com/triAGENS/ArangoDB into aql2
|
2014-08-18 14:12:10 +02:00 |
James
|
13aeacc43c
|
fixed compiler errors, and working on IndexRangeNode.
|
2014-08-18 14:12:00 +02:00 |
Jan Steemann
|
7b3389b55c
|
modification queries
|
2014-08-18 13:52:41 +02:00 |
Jan Steemann
|
bdfef136bf
|
Merge branch 'aql2' of https://github.com/triAGENS/ArangoDB into aql2
|
2014-08-18 12:34:41 +02:00 |
Jan Steemann
|
b010518e9e
|
implementation of update/replace (update not yet merging old attributes)
|
2014-08-18 12:34:27 +02:00 |
James
|
8f6fd0e4c4
|
Merge branch 'aql2' of ssh://github.com/triAGENS/ArangoDB into aql2
|
2014-08-18 11:11:46 +02:00 |
James
|
a79f72087d
|
adding Index caching, and cleaning up last.
|
2014-08-18 10:46:47 +02:00 |
Max Neunhoeffer
|
9e91d9bba3
|
Finish first optimization rule: remove unnecessary calcs.
So far not activated, because test suite crashes.
Need to look into details.
|
2014-08-16 00:09:11 +02:00 |
Jan Steemann
|
b1aceb9771
|
Merge branch 'aql2' of https://github.com/triAGENS/ArangoDB into aql2
|
2014-08-15 18:13:11 +02:00 |
Jan Steemann
|
9348f12f78
|
implemented insert node
|
2014-08-15 18:12:33 +02:00 |
Max Neunhoeffer
|
f671fb7e36
|
Add the first actual optimization rule (as a stub).
|
2014-08-15 16:54:53 +02:00 |
Max Neunhoeffer
|
af2c9d1a92
|
Merge branch 'aql2' of ssh://github.com/triAGENS/ArangoDB into aql2
|
2014-08-15 16:10:12 +02:00 |
Max Neunhoeffer
|
92f3ca5dc8
|
Fix bug in varUsageFinder.
|
2014-08-15 16:09:58 +02:00 |
James
|
ac58a0a9d3
|
Merge branch 'aql2' of ssh://github.com/triAGENS/ArangoDB into aql2
|
2014-08-15 15:31:31 +02:00 |
James
|
c128cc716e
|
version of IndexRangeNode accepting range information as an argument.
|
2014-08-15 15:31:23 +02:00 |
Max Neunhoeffer
|
ceff1481ed
|
Merge branch 'aql2' of ssh://github.com/triAGENS/ArangoDB into aql2
|
2014-08-15 13:55:21 +02:00 |
James
|
6bbbc34150
|
Merge branch 'aql2' of ssh://github.com/triAGENS/ArangoDB into aql2
Conflicts:
arangod/Aql/ExecutionNode.h
|
2014-08-15 13:54:50 +02:00 |
James
|
47244fb48e
|
initial version of IndexRangeNode.
|
2014-08-15 13:52:52 +02:00 |
Max Neunhoeffer
|
8d080714a6
|
Add varUsage information to ExecutionNodes.
|
2014-08-15 13:29:26 +02:00 |
James
|
a0db57b7f9
|
adding an Index object, and initial IndexRangeNode.
|
2014-08-15 12:57:52 +02:00 |
Jan Steemann
|
773c29cecf
|
further work on RemoveNode
|
2014-08-15 12:20:17 +02:00 |
Max Neunhoeffer
|
fcdf57ff09
|
Merge branch 'aql2' of ssh://github.com/triAGENS/ArangoDB into aql2
Conflicts:
arangod/Aql/ExecutionEngine.cpp
|
2014-08-14 15:07:10 +02:00 |
Max Neunhoeffer
|
f248792865
|
Make WalkerWorker a template class.
Implement findNodesOfType for ExecutionPlans.
|
2014-08-14 15:04:59 +02:00 |
Jan Steemann
|
0546e9d8ff
|
implemented stub of RemoveBlock
|
2014-08-14 14:46:53 +02:00 |
Jan Steemann
|
93cfa9e2e4
|
count number of documents in collection
|
2014-08-14 13:53:21 +02:00 |
James
|
9dc437f19a
|
Merge branch 'aql2' of ssh://github.com/triAGENS/ArangoDB into aql2
|
2014-08-14 10:52:05 +02:00 |
James
|
8bb501468f
|
Merge branch 'aql2' of ssh://github.com/triAGENS/ArangoDB into aql2
Conflicts:
arangod/Aql/ExecutionNode.h
|
2014-08-14 10:51:49 +02:00 |
Jan Steemann
|
0a850501b6
|
added override specifier
|
2014-08-14 10:32:41 +02:00 |
James
|
8f5c31e740
|
added caching of estimatedCost.
|
2014-08-14 10:29:47 +02:00 |
Jan Steemann
|
1ad300cee5
|
added more node types
|
2014-08-14 10:23:53 +02:00 |
Jan Steemann
|
dfe7ec46a5
|
added RemoveNode
|
2014-08-14 09:39:58 +02:00 |
Jan Steemann
|
10da82fae0
|
removed unused and non-working operator[]
|
2014-08-13 18:57:14 +02:00 |
James
|
0403c54220
|
can't use this[0] in last.
|
2014-08-13 18:39:09 +02:00 |
James
|
66794f9374
|
more estimateCost.
|
2014-08-13 18:28:22 +02:00 |
James
|
c8a7779b14
|
initial framework for estimateCost method for execution nodes.
|
2014-08-13 17:38:15 +02:00 |
Jan Steemann
|
7feea4c640
|
fixed [] attribute access
|
2014-08-12 14:02:46 +02:00 |
Jan Steemann
|
8b830974c7
|
fixed parser errors
|
2014-08-08 20:12:10 +02:00 |
Jan Steemann
|
61d8998909
|
aggregate!
|
2014-08-08 18:56:41 +02:00 |
Max Neunhoeffer
|
83a60e578e
|
Merge branch 'aql2' of ssh://github.com/triAGENS/ArangoDB into aql2
|
2014-08-07 11:56:50 +02:00 |
Max Neunhoeffer
|
1d6f7bc3d2
|
Sort out bind as a preparation for subqueries.
|
2014-08-07 11:56:26 +02:00 |
Jan Steemann
|
8e229ec2b2
|
stringification of function parameters
|
2014-08-07 11:44:22 +02:00 |
Max Neunhoeffer
|
7b65a958d8
|
Take care of static analyis case AggregateNode.
|
2014-08-06 15:13:22 +02:00 |
Jan Steemann
|
d623d1a0ab
|
renamed things
|
2014-08-06 09:42:06 +02:00 |
Max Neunhoeffer
|
fabfeae14d
|
Add LimitNode. Implement skip generically.
|
2014-08-04 16:34:37 +02:00 |
Jan Steemann
|
8de760bf1b
|
added expression function
|
2014-08-01 13:58:51 +02:00 |
Jan Steemann
|
69c55d754c
|
renamed "root" to "return"
|
2014-08-01 12:23:55 +02:00 |
Max Neunhoeffer
|
e7e98262ea
|
Redo instanciator using Walker and in ExecutionEngine.
|
2014-08-01 11:56:39 +02:00 |
Max Neunhoeffer
|
5bf0ff1a7c
|
Rename files ExecutionPlan -> ExecutionNode
|
2014-08-01 11:26:09 +02:00 |