1
0
Fork 0
Commit Graph

280 Commits

Author SHA1 Message Date
Jan Steemann 7fd236aa4f fixed enumeratecollection block 2014-08-04 17:27:51 +02:00
Max Neunhoeffer fabfeae14d Add LimitNode. Implement skip generically. 2014-08-04 16:34:37 +02:00
Max Neunhoeffer 8b640be8ac Add Filter node. 2014-08-04 15:11:51 +02:00
Max Neunhoeffer 87af84d4b1 Merge branch 'aql2' of ssh://github.com/triAGENS/ArangoDB into aql2
Conflicts:
	arangod/Aql/Types.h
2014-08-04 12:53:39 +02:00
Max Neunhoeffer 901129394e More comments, more generic functionality. 2014-08-04 12:51:53 +02:00
Jan Steemann 2487474e96 master pointers 2014-08-04 11:58:42 +02:00
Jan Steemann 06c9c719e2 optimization for EnumerateCollection 2014-08-04 11:46:19 +02:00
Jan Steemann 7dc549d058 Merge branch 'aql2' of https://github.com/triAGENS/ArangoDB into aql2 2014-08-04 11:16:00 +02:00
Jan Steemann 182ab57e8d transaction 2014-08-04 11:15:53 +02:00
Max Neunhoeffer 91ec3d5647 Some cleanup of interface and names. 2014-08-04 10:29:17 +02:00
Max Neunhoeffer 3ed34b86e7 Rename _exePlan to _exeNode 2014-08-04 09:36:13 +02:00
Jan Steemann 36d9cd6259 properly return compound types 2014-08-01 17:20:30 +02:00
Jan Steemann e733e3e83b fixed some issues 2014-08-01 17:08:12 +02:00
Jan Steemann a530b71477 initialize _pos 2014-08-01 16:11:09 +02:00
Jan Steemann 48935297ac fixed some dependency issues 2014-08-01 15:50:52 +02:00
Max Neunhoeffer 316bffe45e Move calculation setup to initialize() after staticAnalysis. 2014-08-01 15:12:12 +02:00
Max Neunhoeffer 2063a985fd Add a header inclusion. 2014-08-01 15:01:22 +02:00
Max Neunhoeffer f9fd8ec8a8 Merge branch 'aql2' of ssh://github.com/triAGENS/ArangoDB into aql2 2014-08-01 15:00:42 +02:00
Max Neunhoeffer ff5d2c9557 Fix setValue bug. 2014-08-01 15:00:29 +02:00
Jan Steemann 888e3ff7e7 unified signature 2014-08-01 15:00:12 +02:00
Max Neunhoeffer 8611be5c24 Merge branch 'aql2' of ssh://github.com/triAGENS/ArangoDB into aql2 2014-08-01 14:53:46 +02:00
Max Neunhoeffer 9c9e02a948 More expression stuff. 2014-08-01 14:53:31 +02:00
Jan Steemann 8ed4acf63f Merge branch 'aql2' of https://github.com/triAGENS/ArangoDB into aql2 2014-08-01 14:53:00 +02:00
Jan Steemann 2f7b7ad1f1 toV8 2014-08-01 14:52:55 +02:00
Max Neunhoeffer 0d434cfc21 Merge. 2014-08-01 14:40:29 +02:00
Jan Steemann b08b052fd4 Merge branch 'aql2' of https://github.com/triAGENS/ArangoDB into aql2 2014-08-01 14:37:36 +02:00
Jan Steemann 0d7ca46b45 added variables() method 2014-08-01 14:37:29 +02:00
Max Neunhoeffer 1ee156f53b Merge branch 'aql2' of ssh://github.com/triAGENS/ArangoDB into aql2 2014-08-01 14:35:58 +02:00
Max Neunhoeffer 46424e9e0b Call many things register, because they are.
Implement CalculationBlock stub.
2014-08-01 14:35:28 +02:00
Jan Steemann c9f104cdd6 Merge branch 'aql2' of https://github.com/triAGENS/ArangoDB into aql2 2014-08-01 13:59:10 +02:00
Jan Steemann 8de760bf1b added expression function 2014-08-01 13:58:51 +02:00
Max Neunhoeffer dd1b1c8d01 Fix shared_ptr VarOverview mess. 2014-08-01 13:47:55 +02:00
Max Neunhoeffer 0bbb1a3408 Merge branch 'aql2' of ssh://github.com/triAGENS/ArangoDB into aql2 2014-08-01 13:22:45 +02:00
Max Neunhoeffer 2b14d0fb39 Fix shared_ptr pilot mistake. 2014-08-01 13:22:10 +02:00
Jan Steemann b6af736c60 smallness 2014-08-01 13:16:07 +02:00
Jan Steemann 69c55d754c renamed "root" to "return" 2014-08-01 12:23:55 +02:00
Jan Steemann db2018e052 Merge branch 'aql2' of https://github.com/triAGENS/ArangoDB into aql2 2014-08-01 12:19:22 +02:00
Jan Steemann 9856d4e9e0 use addNode 2014-08-01 12:19:15 +02:00
Max Neunhoeffer 341675ffaf Destructor of ExecutionBlock must not destruct children. 2014-08-01 12:18:41 +02:00
Max Neunhoeffer aa48d48755 Merge branch 'aql2' of ssh://github.com/triAGENS/ArangoDB into aql2
Conflicts:
	arangod/Aql/Query.cpp
2014-08-01 12:05:37 +02:00
Max Neunhoeffer fd28a5cc4f Fix something. 2014-08-01 11:59:54 +02:00
Max Neunhoeffer 5315f35ed3 Merge branch 'aql2' of ssh://github.com/triAGENS/ArangoDB into aql2
Conflicts:
	arangod/Aql/ExecutionBlock.h
2014-08-01 11:57:27 +02:00
Jan Steemann 0ec4e7f73e renaming 2014-08-01 11:57:19 +02:00
Max Neunhoeffer e7e98262ea Redo instanciator using Walker and in ExecutionEngine. 2014-08-01 11:56:39 +02:00
Jan Steemann 2881409527 renaming 2014-08-01 11:46:31 +02:00
Max Neunhoeffer 5bf0ff1a7c Rename files ExecutionPlan -> ExecutionNode 2014-08-01 11:26:09 +02:00
Jan Steemann 7ca38317b2 execution engine 2014-08-01 11:22:35 +02:00
Jan Steemann af9dbdba85 Merge branch 'aql2' of https://github.com/triAGENS/ArangoDB into aql2 2014-08-01 11:21:17 +02:00
Jan Steemann d492271b93 added ExecutionEngine 2014-08-01 11:21:08 +02:00
Max Neunhoeffer c1b15188ff Rename *Plan to *Node. 2014-08-01 11:17:34 +02:00
Max Neunhoeffer 48a14825ea Merge branch 'aql2' of ssh://github.com/triAGENS/ArangoDB into aql2 2014-08-01 10:28:44 +02:00
Max Neunhoeffer cd56e35f1f Sort out static analysis. 2014-08-01 10:28:25 +02:00
Jan Steemann 7ca458e397 more code generation 2014-08-01 09:50:08 +02:00
Max Neunhoeffer 15235b1337 Merge old and new version of Types.cpp 2014-08-01 08:53:48 +02:00
Max Neunhoeffer 0a71c3ba73 Finish first draft of staticAnalysis.
Compiles but is untested.
2014-07-31 23:16:00 +02:00
Max Neunhoeffer 000664db6e Finish Types.cpp, the forgotten file. Now splice should work. 2014-07-31 22:31:28 +02:00
Max Neunhoeffer 93e82b50e1 Add the forgotten file. splice is only a stub. 2014-07-31 19:32:19 +02:00
Jan Steemann 91ac7ab74a Merge branch 'aql2' of https://github.com/triAGENS/ArangoDB into aql2
Conflicts:
	arangod/Aql/Types.h
2014-07-31 17:18:23 +02:00
Jan Steemann d240314cfe code generation for V8 expressions 2014-07-31 17:13:38 +02:00
Max Neunhoeffer 3e89688d82 New execution engine. 2014-07-31 17:00:06 +02:00
Max Neunhoeffer b7a2add68c Merge branch 'aql2' of ssh://github.com/triAGENS/ArangoDB into aql2 2014-07-31 16:07:34 +02:00
Max Neunhoeffer b0dd258070 Restructure execution engine with blocks. 2014-07-31 15:36:46 +02:00
Jan Steemann d15771854d pass executor to expression 2014-07-31 15:20:47 +02:00
Jan Steemann c335a16d5a used Expression 2014-07-31 15:14:35 +02:00
Jan Steemann 65386d8529 added class Expression 2014-07-31 15:12:12 +02:00
Jan Steemann 60d493c56c always use variables 2014-07-31 14:36:03 +02:00
Jan Steemann 4b6ab03102 rename variables in JSON 2014-07-31 14:02:17 +02:00
Jan Steemann fbedb15df8 some more nodes 2014-07-31 13:40:20 +02:00
Jan Steemann 1ff3d44e88 removed AQL_PENG 2014-07-31 12:30:16 +02:00
Jan Steemann c7c7ee5a52 create more plan nodes 2014-07-31 12:11:40 +02:00
Jan Steemann 3d899f27e8 variable generator 2014-07-31 11:43:01 +02:00
Jan Steemann 6df3aa1c8d Merge branch 'aql2' of https://github.com/triAGENS/ArangoDB into aql2 2014-07-31 10:38:58 +02:00
Jan Steemann 2aad264e77 refactoring 2014-07-31 10:38:49 +02:00
Max Neunhoeffer df64c69e73 Merge branch 'aql2' of ssh://github.com/triAGENS/ArangoDB into aql2 2014-07-31 10:32:12 +02:00
Max Neunhoeffer 98d82de6fb Create generic recursive walk functionality for Plans/Blocks. 2014-07-31 10:31:45 +02:00
Jan Steemann 6ebfbfef49 stubs for various node types 2014-07-31 09:18:28 +02:00
Max Neunhoeffer 2ef0095797 Start static analysis of variables in ExecutionBlocks. 2014-07-30 23:50:03 +02:00
Max Neunhoeffer 8613450e5b Fix free crash. 2014-07-30 22:54:25 +02:00
Jan Steemann e777cb71b1 adjusted after API changes 2014-07-30 18:06:28 +02:00
Jan Steemann 1175e9e61c Merge branch 'aql2' of https://github.com/triAGENS/ArangoDB into aql2 2014-07-30 18:04:19 +02:00
Jan Steemann e203691f0c started plan generator 2014-07-30 18:04:05 +02:00
Max Neunhoeffer 22dc301745 Change signature of RootPlan. 2014-07-30 17:05:38 +02:00
Max Neunhoeffer d09f2690da Get rid of _nrVars in ExecutionPlans. 2014-07-30 17:00:38 +02:00
Max Neunhoeffer 87a36596b1 Change Json format of ExecutionPlans. 2014-07-30 15:20:09 +02:00
Max Neunhoeffer 8c3304d242 Add a subquery node type to ExecutionPlans. 2014-07-30 13:45:00 +02:00
Max Neunhoeffer dcf23ed93c Merge branch 'aql2' of ssh://github.com/triAGENS/ArangoDB into aql2 2014-07-30 13:41:31 +02:00
Max Neunhoeffer 4f1b5cbe2e Add a test case. 2014-07-30 13:41:22 +02:00
Jan Steemann 77c2ad31a4 added plan generator 2014-07-30 13:30:43 +02:00
Jan Steemann dc70c6f4d2 renamed class 2014-07-30 13:26:48 +02:00
Jan Steemann 31b245fa73 comments 2014-07-30 13:18:40 +02:00
Jan Steemann 4717979c74 nicer parser error messages 2014-07-30 13:14:28 +02:00
Jan Steemann 376ae9b8dc Merge branch 'aql2' of https://github.com/triAGENS/ArangoDB into aql2 2014-07-30 12:30:20 +02:00
Jan Steemann f4e8775ddc nicer parser error messages 2014-07-30 12:30:06 +02:00
Max Neunhoeffer 92bd4b75d2 Fix signature of SortPlan nodes. 2014-07-30 11:47:45 +02:00
Max Neunhoeffer 14c465ec4d Fix signature of FilterPlan. 2014-07-30 11:42:13 +02:00
Max Neunhoeffer 234eb21ae9 Merge branch 'aql2' of ssh://github.com/triAGENS/ArangoDB into aql2 2014-07-30 11:37:07 +02:00
Max Neunhoeffer 2b8d497bc8 Repair CalculationPlan, add Json for expressions. 2014-07-30 10:00:25 +02:00
Jan Steemann 2c5b696959 split toJson function 2014-07-30 09:53:00 +02:00
Max Neunhoeffer f078425b6d Merge branch 'aql2' of ssh://github.com/triAGENS/ArangoDB into aql2 2014-07-30 09:31:18 +02:00
Max Neunhoeffer 944ba6597d Add projection and sort node. 2014-07-30 09:30:59 +02:00
Jan Steemann 9a1067f97e Merge branch 'aql2' of https://github.com/triAGENS/ArangoDB into aql2 2014-07-30 09:26:50 +02:00
Jan Steemann f3252ac429 moved variable into own file 2014-07-30 09:26:41 +02:00
Max Neunhoeffer d5ddf057ca Finish CalculationPlan node. 2014-07-30 09:06:43 +02:00
Max Neunhoeffer 9f92830f84 Plan remaining nodes. 2014-07-29 22:35:06 +02:00
Max Neunhoeffer b292208800 Use RootBlock to strip away context and only return latest result. 2014-07-29 20:13:42 +02:00
Jan Steemann 7a1abc3847 small refactoring for variable access 2014-07-29 19:35:03 +02:00
Jan Steemann 8fcd57d42f Merge branch 'aql2' of https://github.com/triAGENS/ArangoDB into aql2 2014-07-29 18:03:01 +02:00
Jan Steemann c5cf0085ff fixed expansion nodes properly 2014-07-29 18:02:50 +02:00
Max Neunhoeffer e690185bf5 Merge branch 'aql2' of ssh://github.com/triAGENS/ArangoDB into aql2 2014-07-29 16:27:39 +02:00
Max Neunhoeffer 57560108e0 Peng mit shared_ptr. 2014-07-29 16:27:25 +02:00
Jan Steemann f6dc5243ce fixed subquery nodes 2014-07-29 16:23:21 +02:00
Jan Steemann 92654e3d06 Merge branch 'aql2' of https://github.com/triAGENS/ArangoDB into aql2 2014-07-29 15:51:58 +02:00
Jan Steemann 6bbc3eaf49 fixed expand nodes 2014-07-29 15:51:51 +02:00
Max Neunhoeffer a35f066477 Merge branch 'aql2' of ssh://github.com/triAGENS/ArangoDB into aql2 2014-07-29 15:13:36 +02:00
Max Neunhoeffer 7c5245eff9 Peng geht. 2014-07-29 15:13:16 +02:00
Jan Steemann 8eb7f5bd8a Merge branch 'aql2' of https://github.com/triAGENS/ArangoDB into aql2 2014-07-29 14:49:25 +02:00
Jan Steemann a380d5f26d constant propagation 2014-07-29 14:49:05 +02:00
Max Neunhoeffer 1de4492bec Merge branch 'aql2' of ssh://github.com/triAGENS/ArangoDB into aql2 2014-07-29 13:41:37 +02:00
Max Neunhoeffer 65b477ddbd Snapshot, compiles, does not work. 2014-07-29 13:40:54 +02:00
Jan Steemann 641d35b906 added static v8-basic optimizations 2014-07-29 12:52:37 +02:00
Max Neunhoeffer 29f113a93d New draft for AqlItem, AqlValue, AqlExpression. 2014-07-29 12:18:03 +02:00
Jan Steemann 4ff91b8405 fixed Json construction 2014-07-29 09:09:10 +02:00
Jan Steemann a7e69ff80d fail 2014-07-29 08:55:57 +02:00
Jan Steemann a39d5678d4 Merge branch 'aql2' of https://github.com/triAGENS/ArangoDB into aql2 2014-07-28 19:01:13 +02:00
Jan Steemann f9c3c086e8 static query optimization 2014-07-28 19:01:03 +02:00
Max Neunhoeffer 43ac089187 Seems to work. 2014-07-28 16:55:45 +02:00
Jan Steemann ef2fa52149 make it link 2014-07-28 16:32:49 +02:00
Max Neunhoeffer a998399812 Merge branch 'aql2' of ssh://github.com/triAGENS/ArangoDB into aql2 2014-07-28 16:26:56 +02:00
Max Neunhoeffer 5684bb5b65 Add RootBlock and stuff. 2014-07-28 16:26:24 +02:00
Jan Steemann 872bb2344b comments 2014-07-28 16:24:10 +02:00
Jan Steemann 22ddd1e022 added comment 2014-07-28 16:21:59 +02:00
Max Neunhoeffer 43f96516a4 Merge branch 'aql2' of ssh://github.com/triAGENS/ArangoDB into aql2 2014-07-28 15:52:45 +02:00
Jan Steemann e02b443af5 Merge branch 'aql2' of https://github.com/triAGENS/ArangoDB into aql2
Conflicts:
	arangod/Aql/ExecutionPlan.h
2014-07-28 15:52:35 +02:00
Jan Steemann 765e44e80b execution v0.0000001 2014-07-28 15:51:38 +02:00
Max Neunhoeffer 325dfb007b Add RootPlan. 2014-07-28 15:51:36 +02:00
Max Neunhoeffer c9026aa176 Merge branch 'aql2' of ssh://github.com/triAGENS/ArangoDB into aql2 2014-07-28 15:13:58 +02:00
Max Neunhoeffer 82889f8626 Add CalculationPlan. 2014-07-28 15:13:40 +02:00
Jan Steemann fe3b672ae5 Merge branch 'aql2' of https://github.com/triAGENS/ArangoDB into aql2 2014-07-28 13:19:03 +02:00
Jan Steemann 0f5266def9 update write collection 2014-07-28 13:18:53 +02:00
Max Neunhoeffer f9b03c3d35 Merge branch 'aql2' of ssh://github.com/triAGENS/ArangoDB into aql2 2014-07-28 13:16:43 +02:00
Max Neunhoeffer 0c89dccc5d Add CalculationPlan, create arangod/Aql/Types.h 2014-07-28 13:16:25 +02:00
Jan Steemann cdde47f589 Merge branch 'aql2' of https://github.com/triAGENS/ArangoDB into aql2
Conflicts:
	arangod/CMakeLists.txt
	arangod/Makefile.files
2014-07-28 12:32:02 +02:00
Jan Steemann cc43d1190c inject bind parameters 2014-07-28 12:30:55 +02:00
Max Neunhoeffer 47afbc7ff4 Add FilterNode. 2014-07-28 11:06:33 +02:00
Max Neunhoeffer 5ee05450a9 Add stub for AqlExpression 2014-07-28 09:50:13 +02:00
Max Neunhoeffer 487ebd4bb8 Merge branch 'aql2' of ssh://github.com/triAGENS/ArangoDB into aql2
Conflicts:
	arangod/CMakeLists.txt
	arangod/Makefile.files
2014-07-28 09:42:15 +02:00
Max Neunhoeffer f2b135ef36 Start infrastructure for execution engine. 2014-07-28 09:41:19 +02:00
Jan Steemann 9369763309 added AstNode.cpp 2014-07-28 09:03:59 +02:00
Jan Steemann bdf78b853a dump more nodes 2014-07-28 08:59:04 +02:00
Jan Steemann 1be0fa6ee2 dump AST 2014-07-25 18:18:40 +02:00