1
0
Fork 0
Commit Graph

85 Commits

Author SHA1 Message Date
Jan Steemann 491e755cd8 turn indexed accesses (e.g. a['foo']) into attribute accesses (e.g. a.foo) during AST optimization
this qualifies the indexed accesses to be used with an IndexRangeNode later
2015-02-07 16:55:25 +01:00
Jan Steemann dd74c6ac87 execute read and write operations of different collections in the same AQL query in lockstep, and not sequentially 2015-02-05 18:27:10 +01:00
Jan Steemann 5d9c0e018e dynamic attribute names in AQL 2015-02-03 22:51:40 +01:00
Jan Steemann c49986d0e8 preparation for conditions 2015-01-25 10:40:13 +01:00
Jan Steemann 81a74f4c7f use TRI_AddressVector 2015-01-24 14:03:41 +01:00
Jan Steemann 7db19894ca do not pass name in TRI_ERROR_ARANGO_ILLEGAL_NAME 2015-01-23 12:38:40 +01:00
Jan Steemann fd3e123253 optimizations for AST node flagging and V8 object creation 2015-01-22 19:35:20 +01:00
Jan Steemann bdb50d873e fixed method comments 2015-01-22 19:35:20 +01:00
Jan Steemann cba74d0803 fixed memleaks 2015-01-09 18:27:59 +01:00
Willi Goesgens e2f206fd2c Merge branch 'devel' of github.com:triAGENS/ArangoDB into devel
Conflicts:
	arangod/Aql/grammar.cpp
2015-01-07 15:50:44 +01:00
Willi Goesgens f905123802 Implement REMOVE/INSERT/UPDATE/REPLACE return the changed values 2015-01-07 15:48:13 +01:00
Jan Steemann 62696b6984 prerequisites for further COLLECT optimizations 2015-01-07 09:42:46 +01:00
Jan Steemann d92057dd03 the great rename: array => object, list => array 2014-12-18 22:33:23 +01:00
Jan Steemann 20e7fe7a7a the great rename: array => object, list => array 2014-12-18 21:07:06 +01:00
Jan Steemann dd60e53ce3 added more collect special cases 2014-12-16 22:52:33 +01:00
Willi Goesgens 1c4a72b106 The Big V8 upgrade Merge. 2014-12-15 17:30:56 +01:00
Jan Steemann 8f6193faa2 added optional COUNT clause for AQL COLLECT 2014-12-12 17:18:04 +01:00
Jan Steemann 399e93c3ff issue #1155: allow bind parameter for sort order
SORT what @order is now allowed
2014-12-08 13:05:40 +01:00
Jan Steemann c43bd64222 fixed VS compile error 2014-12-05 15:16:37 +01:00
Jan Steemann 34012395e3 fixed some compile issues 2014-12-05 15:02:08 +01:00
Jan Steemann 7e161b88ce issue #1131: added KEEP for `COLLECT...INTO` 2014-12-03 17:44:10 +01:00
Jan Steemann c69fa0b0dc fixed invalid optimization, added test cases 2014-11-25 23:18:24 +01:00
James f797afe0d5 Merge branch 'devel' of ssh://github.com/triAGENS/ArangoDB into aql-feature-lazy-index 2014-11-13 08:04:25 +00:00
Jan Steemann 7cd1eb5474 more warnings 2014-11-12 14:52:54 +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
Jan Steemann 12d326d62b updated documentation and operators behavior 2014-11-10 18:05:11 +01:00
Jan Steemann 97b5e906da Merge branch 'devel' of https://github.com/triAGENS/ArangoDB into aql-feature-lazy-index 2014-11-08 23:26:38 +01:00
Jan Steemann 567860cf65 more aggresively optimizer filters 2014-11-08 23:26:04 +01:00
Jan Steemann 9c5d150866 use Ast::ReverseOperator 2014-11-08 22:31:31 +01:00
Jan Steemann b0de1bb226 leaner and meaner error messages 2014-11-07 10:53:00 +01:00
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