1
0
Fork 0
Commit Graph

261 Commits

Author SHA1 Message Date
James 586cacc2ee replace-redundant-OR optimizer rule first version. 2014-11-08 13:45:14 +00:00
James b849a6da72 some more cleaning up of replace-OR-with-IN 2014-11-08 11:36:56 +00: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 bf30927913 removed canThrow tag for various built-in functions 2014-11-05 14:40:00 +01:00
Jan Steemann 4f68960ed7 removed Ahuacatl [skip ci] 2014-10-31 17:31:00 +01:00
Jan Steemann 0903c1b9b6 use more precomputed values in expressions 2014-10-29 21:41:00 +01:00
Jan Steemann cf79ef33e2 removed TODO 2014-10-29 13:15:52 +01:00
Jan Steemann ecc6089cc8 removed TODO 2014-10-29 13:06:54 +01:00
Max Neunhoeffer 59c1935466 Get rid of some TODOs and FIXMEs. 2014-10-29 11:25:30 +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 f6b8f17dfa less optimizations for simple plans 2014-10-28 15:01:44 +01:00
Jan Steemann b5c222b9b8 determine whether calculations may run on a DB server 2014-10-27 12:04:06 +01:00
Jan Steemann 912a8162fb some renaming 2014-10-16 17:23:50 +02:00
Jan Steemann 6895ba9e27 fixed tests 2014-10-14 13:20:10 +02:00
Jan Steemann dfb1905035 fixed tests 2014-10-14 12:03:25 +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 ae5f454bfc added unary operator 2014-09-19 17:46:36 +02:00
Jan Steemann 92e46b8191 use SimpleExpression for more types of expressions 2014-09-19 17:40:47 +02:00
Jan Steemann 9a6dfa1db2 execute several types of expressions in C++ 2014-09-19 15:21:01 +02:00
Willi Goesgens 7e44fa03d0 Try to add a human readable representation to an expression if it throws. 2014-09-15 16:44:55 +02:00
Jan Steemann 5a1dc63946 fixed tons of compile errors in VS 2014-09-15 12:04:49 +02:00
Jan Steemann 34d2913002 added NOT IN operator, added keywords NOT, AND, OR 2014-09-14 01:34:58 +02:00
Jan Steemann 76c1da4e9c added test for remove-redundant-calculations 2014-09-12 16:58:01 +02:00
Jan Steemann a5c52998e8 remove redundant calculations 2014-09-12 15:10:48 +02:00
Jan Steemann 71600f89b7 use RANGE AqlValue type 2014-09-11 11:56:40 +02:00
Jan Steemann a3d2d0e3f1 renamed file 2014-08-29 17:09:07 +02:00
Jan Steemann 694d64da3c do not optimize away non-deterministic functions 2014-08-28 15:34:06 +02:00
Jan Steemann 04b322d9e0 sorting 2014-08-28 14:04:24 +02:00
Jan Steemann 2eb38c9657 remove-redundant-sorts, initial 2014-08-28 12:39:28 +02:00
Jan Steemann b9024aeaeb basic C++ implementations for dedicated AQL functions 2014-08-28 01:24:42 +02:00
Jan Steemann 140e10a2a0 added more node types 2014-08-27 16:50:43 +02:00
Jan Steemann 679b6bd10f alwaysProducesBoolValue() 2014-08-27 16:24:14 +02:00
Jan Steemann 7330597f15 fixed ambigious method JsonHelper::getStringValue 2014-08-22 21:53:29 +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 6eaf1de8da fixed invalid cast 2014-08-20 12:11:16 +02:00
Jan Steemann 52566a2975 optimizations for list expressions 2014-08-20 11:19:28 +02:00
Jan Steemann 99ce138c12 fixed creation of subqueries from JSON input 2014-08-19 18:51:11 +02:00
Willi Goesgens 1a6487ab14 Json de/serialization 2014-08-19 16:09:37 +02:00
Jan Steemann 773c29cecf further work on RemoveNode 2014-08-15 12:20:17 +02:00
Jan Steemann 655d7759bf added canThrow() for Expression 2014-08-14 20:20:59 +02:00
Jan Steemann dfe7ec46a5 added RemoveNode 2014-08-14 09:39:58 +02:00
Willi Goesgens 004d9bdbbb Implement Simple Expression evaluation for Arrays. 2014-08-13 18:28:22 +02:00
Jan Steemann 69f99324f2 added simple expressions 2014-08-13 14:22:14 +02:00
Jan Steemann 562054134e prevent double-free 2014-08-11 15:34:11 +02:00
Jan Steemann 24f1f979d0 fixed jsonification of values 2014-08-11 14:54:14 +02:00
Jan Steemann e8f69490ff optimize away function calls with const arguments 2014-08-06 17:15:36 +02:00
Jan Steemann d240314cfe code generation for V8 expressions 2014-07-31 17:13:38 +02:00
Jan Steemann 65386d8529 added class Expression 2014-07-31 15:12:12 +02:00
Jan Steemann 2c5b696959 split toJson function 2014-07-30 09:53:00 +02:00
Jan Steemann 7a1abc3847 small refactoring for variable access 2014-07-29 19:35:03 +02:00
Jan Steemann c5cf0085ff fixed expansion nodes properly 2014-07-29 18:02:50 +02:00
Jan Steemann f6dc5243ce fixed subquery nodes 2014-07-29 16:23:21 +02:00
Jan Steemann a380d5f26d constant propagation 2014-07-29 14:49:05 +02:00
Jan Steemann 641d35b906 added static v8-basic optimizations 2014-07-29 12:52:37 +02:00
Jan Steemann f9c3c086e8 static query optimization 2014-07-28 19:01:03 +02:00
Jan Steemann 0f5266def9 update write collection 2014-07-28 13:18:53 +02:00
Jan Steemann cc43d1190c inject bind parameters 2014-07-28 12:30:55 +02:00
Jan Steemann 9369763309 added AstNode.cpp 2014-07-28 09:03:59 +02:00