1
0
Fork 0
Commit Graph

100 Commits

Author SHA1 Message Date
Willi Goesgens 115f226385 Optimizer: Enable removing of filternodes if the index can handle the filter condition. 2014-12-12 21:39:35 +01:00
Jan Steemann 2fbc53f711 fixed potential leaks 2014-12-09 16:27:05 +01:00
Jan Steemann 4c43c1bdaf less plans created by optimizer 2014-12-04 12:49:34 +01:00
Jan Steemann 4f39b9e358 optimize away `INTO` of `COLLECT` if unused 2014-12-03 13:49:03 +01:00
Jan Steemann 4ef82239a3 added optimizer statistics 2014-12-03 11:38:56 +01:00
James 3e612acdda Merge branch 'aql-feature-lazy-index' of ssh://github.com/triAGENS/ArangoDB into aql-feature-lazy-index 2014-11-11 08:23:23 +00:00
James 08e8fd193e Merge branch 'devel' of ssh://github.com/triAGENS/ArangoDB into aql-feature-lazy-index 2014-11-11 08:21:40 +00:00
Jan Steemann 4a8726ee35 added "split-filters" rule but did not activate it 2014-11-11 00:27:37 +01:00
Jan Steemann 9c5d150866 use Ast::ReverseOperator 2014-11-08 22:31:31 +01:00
James 586cacc2ee replace-redundant-OR optimizer rule first version. 2014-11-08 13:45:14 +00:00
Jan Steemann c8c16767be added rule to remove filters if covered by index ranges - not yet activated 2014-11-06 23:18:18 +01:00
James 1ff7e8d252 cleaning up 2014-11-03 10:42:16 +00:00
James d12b5baf12 first try at replace-OR-with-IN optimizer rule. 2014-11-01 14:30:18 +00:00
Jan Steemann 31d875921f removed TODOs 2014-10-30 00:45:55 +01:00
Max Neunhoeffer b0e08bd8eb Take out some debugging output. 2014-10-29 15:42:03 +01:00
Jan Steemann ca15e72b14 fixed test 2014-10-29 12:33:10 +01:00
Jan Steemann 0e27ccbfdb jslintified tests 2014-10-28 15:59:38 +01:00
Jan Steemann f6b8f17dfa less optimizations for simple plans 2014-10-28 15:01:44 +01:00
Jan Steemann 529bf386d7 fixed some API errors 2014-10-28 11:30:49 +01:00
Max Neunhoeffer d564fca3d2 Make distribute-filtercalc-in-cluster switch-off-able. 2014-10-27 10:34:51 +01:00
Max Neunhoeffer e9aded7b5e Make distribute-sort-to-cluster switch-off-able. 2014-10-27 10:28:06 +01:00
James 602f03e4e3 adding distribute-in-cluster optimizer rule. 2014-10-14 10:19:27 +01:00
James 084078f61f fixed tests for remove-unnecessary-remote-scatter and undistribute-remove-after-enum-coll, renamed distributeInCluster to scatterInCluster. 2014-10-09 08:45:34 +01:00
James 7a34d065b5 cleaning up and registering undistributeRemoveAfterEnumColl. 2014-10-01 10:43:54 +01:00
James 3daaaad855 fixing last 2014-09-30 08:48:29 +01:00
James 301ccddf83 Merge branch 'devel' of ssh://github.com/triAGENS/ArangoDB into devel 2014-09-30 08:29:36 +01:00
James d204ce4019 adding registration of the remove unnecessary remote scatter optimizer rule. 2014-09-30 08:29:21 +01:00
Jan Steemann 643ffa104d moved isCoordinator to function of its own 2014-09-29 09:38:15 +02:00
Jan Steemann 188fe0c43c accidently committed local modifications. revert 2014-09-29 09:31:27 +02:00
Jan Steemann 0d075dca3f pass queryRegistry into the AQL functions 2014-09-29 09:30:32 +02:00
Willi Goesgens 53ee658be0 Implement moving of sortnode into the clusterable part of the query; add elements to the json serialisation of the gather node 2014-09-26 12:35:58 +02:00
Willi Goesgens 6c81f630a3 Add filter rule which moves Filters & Calculations into the parts of a Plan that is distributed to clusters. 2014-09-25 17:08:20 +02:00
Jan Steemann 68232715f1 fixed compile warning 2014-09-19 09:05:52 +02:00
Jan Steemann 0b5c5ae3df added `maxNumberOfPlans` option 2014-09-18 23:56:09 +02:00
Jan Steemann bd62c36771 scatter / gather 0.0 2014-09-17 16:00:54 +02:00
Jan Steemann 54b5e7b034 slightly improved access to dynamic bounds 2014-09-16 15:10:43 +02:00
Jan Steemann a5c52998e8 remove redundant calculations 2014-09-12 15:10:48 +02:00
Jan Steemann 4ab6d8f658 fixed clone method for IndexRangeNode 2014-09-10 10:43:32 +02:00
Willi Goesgens 202636cee0 Refactor Optimizer ordering
- create enum with the different steps named
  - unify numbering scheme
  - deploy enum to all places where int level was used
  - add passN enum so you can jump to a Pass when calling addPlan

useIndexForSort:
  - remove inline deletion of dependend nodes of our (removed) sortnode
  - redirect to pass #5 so now possible obsolete CalculaionNodes are removed by the removeUnnecessaryCalculationsRule
2014-09-09 16:27:49 +02:00
Jan Steemann 2a49bf843d updated tests 2014-09-09 15:20:42 +02:00
Max Neunhoeffer bf1f11e651 Merge branch 'aql2' of ssh://github.com/triAGENS/ArangoDB into aql2 2014-08-29 16:57:56 +02:00
Max Neunhoeffer fa9e55eafb Finish taking into account multiple FILTER for IndexRangeRule. 2014-08-29 16:57:34 +02:00
Willi Goesgens 24128830ca Merge branch 'aql2' of github.com:triAGENS/ArangoDB into aql2 2014-08-29 16:45:55 +02:00
Willi Goesgens 0cb12fc3f5 SortIndex: initialize the rangeInfo the proper way. 2014-08-29 16:45:20 +02:00
Jan Steemann 3b2cf352ad added functionality to activate/deactivate optimizer rules 2014-08-29 16:31:07 +02:00
Jan Steemann 91590f754f Merge branch 'aql2' of https://github.com/triAGENS/ArangoDB into aql2
Conflicts:
	arangod/Aql/OptimizerRules.cpp
2014-08-29 15:49:35 +02:00
Jan Steemann b8e12063e2 added "rules" output 2014-08-29 15:27:02 +02:00
James fd4b4e5df4 "proper" estimateCost method for IndexRangeNode. 2014-08-29 14:22:46 +02:00
Willi Goesgens be1c84f480 Exceptions: don't print Backtraces if the exception is handled in the subsequent js code. 2014-08-29 12:15:19 +02:00
Jan Steemann 43ec93109f optimizer rules are now kept in a sorted map
rules can optionally be disabled at runtime
2014-08-29 00:08:29 +02:00