1
0
Fork 0
Commit Graph

305 Commits

Author SHA1 Message Date
Jan Steemann 8e678c50da mini optimization: share frequently occuring values 2014-11-06 20:14:02 +01:00
Jan Steemann 749a0aa408 fixed cloning of AST nodes 2014-11-01 21:54:02 +01:00
Jan Steemann 83252851e6 report warnings in queries 2014-10-30 17:33:15 +01:00
Jan Steemann 464c0751d9 removed TODOs 2014-10-29 13:19:13 +01:00
Jan Steemann 8bb213e7ba sort and cache list expression values
emplace

fixed wrong assertion
2014-10-29 01:02:20 +01:00
Jan Steemann 2808e4eee8 cppcheck 2014-10-28 00:35:18 +01:00
Jan Steemann 699517413e fixed clumsy error handling 2014-10-24 10:29:13 +02:00
Jan Steemann 6dfe652d56 cleanup v8 expressions in coordinator, too 2014-10-23 22:22:15 +02:00
Jan Steemann 42c91307ec handlescope 2014-10-17 15:56:03 +02:00
Jan Steemann ee614d6ebd v8 context handling 2014-10-17 15:25:06 +02:00
Jan Steemann 1f423a5e0d removed optimization for range node 2014-10-14 13:22:04 +02:00
Jan Steemann 6895ba9e27 fixed tests 2014-10-14 13:20:10 +02:00
Jan Steemann 7be268c07c changed AQL optimizer to not throw 2014-10-14 10:14:40 +02:00
Willi Goesgens 60dd21802b Clone the query, move the memory kept in the AST over to the query so all memory is kept in one location. 2014-09-30 10:18:13 +02:00
Jan Steemann 74c9653f6f fixed range-info equality flag after fusing 2014-09-19 22:07:06 +02:00
Jan Steemann 50e17b8c4f disabled optimization due to failing tests 2014-09-19 19:30:57 +02:00
Jan Steemann 9699091466 optimize IN and NOT IN with one or no members 2014-09-19 18:22:01 +02:00
Jan Steemann 34d2913002 added NOT IN operator, added keywords NOT, AND, OR 2014-09-14 01:34:58 +02:00
Jan Steemann 87afcf5e8d the great rename 2014-09-13 00:10:11 +02:00
Jan Steemann 2394cdf640 optimize away logical negation if possible
the AST is checked for logical negations of comparison operations
if appropriate, the negation is converted into the reverse comparsion operation, e.g.

    NOT (a == b) => (a != b)
    NOT (a != b) => (a == b)
    NOT (a > b)  => (a <= b)
    NOT (a >= b) => (a < b)
    NOT (a < b)  => (a >= b)
    NOT (a <= b) => (a > b)
2014-09-12 18:01:06 +02:00
Jan Steemann 76c1da4e9c added test for remove-redundant-calculations 2014-09-12 16:58:01 +02:00
Jan Steemann 6552490cbe Merge branch 'aql2' of https://github.com/triAGENS/ArangoDB into aql2
Conflicts:
	arangod/Aql/ExecutionNode.cpp
	arangod/Aql/ExecutionNode.h
	arangod/Aql/ExecutionPlan.cpp
	arangod/Aql/OptimizerRules.cpp
2014-09-12 15:17:50 +02:00
Jan Steemann a5c52998e8 remove redundant calculations 2014-09-12 15:10:48 +02:00
Max Neunhoeffer 35ffe6b9e4 Restructure who has Ast and ExecutionPlan.
Not compiling yet.
2014-09-12 14:44:20 +02:00
Max Neunhoeffer 31e02e42cb Instanciate expressions for variable bounds.
And various cleanups.
2014-09-11 14:28:38 +02:00
Willi Goesgens 84cb676a34 Merge branch 'aql2' of github.com:triAGENS/ArangoDB into aql2 2014-09-09 11:50:09 +02:00
Willi Goesgens dbdae3faa9 Styleguide cleanup: "initialize" 2014-09-09 11:49:44 +02:00
Jan Steemann 8127ff49bd more tests 2014-09-09 11:04:30 +02:00
Jan Steemann a3d2d0e3f1 renamed file 2014-08-29 17:09:07 +02:00
Jan Steemann 683fbf4ec4 using emplace 2014-08-23 00:48:39 +02:00
Jan Steemann 0e8b61124e less verbose AST dumps in AQL_PARSE 2014-08-21 13:08:21 +02:00
Jan Steemann 3fe8831a03 fixed optimizer bug due to duplicate variable representation 2014-08-20 14:18:33 +02:00
Jan Steemann 16f32254a8 remove unused AST optimization code 2014-08-20 12:42:59 +02:00
Jan Steemann 99ce138c12 fixed creation of subqueries from JSON input 2014-08-19 18:51:11 +02:00
Jan Steemann b010518e9e implementation of update/replace (update not yet merging old attributes) 2014-08-18 12:34:27 +02:00
Jan Steemann 9348f12f78 implemented insert node 2014-08-15 18:12:33 +02:00
Jan Steemann 9306105447 REMOVE 2014-08-15 12:44:35 +02:00
Jan Steemann 773c29cecf further work on RemoveNode 2014-08-15 12:20:17 +02:00
Jan Steemann 1ad300cee5 added more node types 2014-08-14 10:23:53 +02:00
Jan Steemann 162681ada4 fixed handling of ranges 2014-08-12 14:00:51 +02:00
Jan Steemann 19e39fb80e fixed another test 2014-08-12 11:59:09 +02:00
Jan Steemann 0b2b1e83db fixed handling of bind parameters 2014-08-12 11:52:17 +02:00
Max Neunhoeffer 8290bc64fb Make iterator [*] internal variables need no register. 2014-08-11 13:47:23 +02:00
Jan Steemann 84ea5931dd fixed assertion failure 2014-08-11 09:34:43 +02:00
Jan Steemann 61d8998909 aggregate! 2014-08-08 18:56:41 +02:00
Jan Steemann e8f69490ff optimize away function calls with const arguments 2014-08-06 17:15:36 +02:00
Jan Steemann 1015404edc working on AQL function calls and error handling 2014-08-06 16:19:43 +02:00
Jan Steemann 182ab57e8d transaction 2014-08-04 11:15:53 +02:00
Jan Steemann 0d7ca46b45 added variables() method 2014-08-01 14:37:29 +02:00
Jan Steemann 7ca458e397 more code generation 2014-08-01 09:50:08 +02:00
Jan Steemann d240314cfe code generation for V8 expressions 2014-07-31 17:13:38 +02:00
Jan Steemann 3d899f27e8 variable generator 2014-07-31 11:43:01 +02:00
Jan Steemann 2aad264e77 refactoring 2014-07-31 10:38:49 +02:00
Jan Steemann e203691f0c started plan generator 2014-07-30 18:04:05 +02:00
Jan Steemann dc70c6f4d2 renamed class 2014-07-30 13:26:48 +02:00