1
0
Fork 0
Commit Graph

549 Commits

Author SHA1 Message Date
Jan Steemann 2767bdc7e0 use edge index on both _from and _to 2014-09-11 18:19:05 +02:00
Jan Steemann 491592239c use primary index 2014-09-11 17:19:15 +02:00
Max Neunhoeffer 6c69129a71 Start computing the variable bounds at runtime. 2014-09-11 16:58:59 +02:00
Max Neunhoeffer 94e95a0274 Repair skipSome for IndexRangeBlock, untested. 2014-09-11 15:42:52 +02:00
Max Neunhoeffer aa00df7edf Merge branch 'aql2' of ssh://github.com/triAGENS/ArangoDB into mmh
Conflicts:
	arangod/Aql/ExecutionBlock.cpp
	arangod/Aql/Query.h
2014-09-11 14:31:13 +02:00
Max Neunhoeffer 31e02e42cb Instanciate expressions for variable bounds.
And various cleanups.
2014-09-11 14:28:38 +02:00
Jan Steemann 71600f89b7 use RANGE AqlValue type 2014-09-11 11:56:40 +02:00
Max Neunhoeffer 028740a4bd Come up with plan for variable bounds execution. 2014-09-10 16:44:08 +02:00
Max Neunhoeffer 69c464ef13 Restructure RangesInfo handling to allow for variable ranges. 2014-09-10 15:20:28 +02:00
Max Neunhoeffer 7dcdd27891 Merge branch 'aql2' into mmh 2014-09-10 09:41:54 +02:00
Max Neunhoeffer 83b31459e1 Fix another bug with new ranges format. 2014-09-10 09:39:11 +02:00
Max Neunhoeffer 673df76b94 Fix bug with new RangeInfo. 2014-09-10 08:57:18 +02:00
Max Neunhoeffer 8aa75f01a5 Snapshot to move home. 2014-09-09 17:05:47 +02:00
Willi Goesgens dbdae3faa9 Styleguide cleanup: "initialize" 2014-09-09 11:49:44 +02:00
Max Neunhoeffer bc54c047ba Fix another memleak. 2014-09-08 11:52:41 +02:00
Max Neunhoeffer 06a525929c Fix a memleak with hash index lookup in AQL. 2014-09-08 11:01:03 +02:00
Max Neunhoeffer eb6fab36e8 Fix a leak in FilterBlock. 2014-09-08 10:29:48 +02:00
Willi Goesgens 8f1123c8b9 Rangeinfo: fix handling of < and >; the handling of _undefined was wrong and we would never add these ranges. 2014-09-04 11:52:35 +02:00
James b6f9f11e5e added all node types to FilterToEnumCollFinder. 2014-08-29 17:44:32 +02:00
James 671824985e added all node types to FilterToEnumCollFinder. 2014-08-29 17:40:56 +02:00
James 46b40015ee renovating RangeInfo stuff to avoid mem leaks. 2014-08-29 11:52:19 +02:00
Jan Steemann d3624c3244 attempt to fix infinite ranges in skiplists 2014-08-28 16:54:45 +02:00
James 3f646034c8 cleaning up IndexRangeBlock::readSkiplistIndex 2014-08-28 15:12:50 +02:00
James 9644fc87c7 fixed bug in last. 2014-08-28 15:00:53 +02:00
James 05dac4f52d Merge branch 'aql2' of ssh://github.com/triAGENS/ArangoDB into aql2
Conflicts:
	arangod/Aql/Optimizer.cpp
2014-08-28 14:41:51 +02:00
James 1deed3ebce fixed bugs useIndexRange. 2014-08-28 14:39:26 +02:00
Jan Steemann 844955cafd disabled debug output 2014-08-28 14:10:41 +02:00
Max Neunhoeffer 338a9c6c54 Implement permutation of EnumerateCollectionNodes.
Also: restructure leveling of rules.
And:  remove some debugging output (and add some other).
2014-08-28 13:28:04 +02:00
James ee88997e8e skiplists in IndexRangeBlock working. 2014-08-27 21:07:34 +02:00
James c8667290b5 fixing bugs in last and removing debug prints. 2014-08-27 16:15:53 +02:00
James a3830c2566 IndexRangeNode now working with skiplists. 2014-08-27 14:51:56 +02:00
James ad3e6d22a1 Merge branch 'aql2' of ssh://github.com/triAGENS/ArangoDB into aql2 2014-08-26 13:02:58 +02:00
James bf952d37be IndexRangeBlock working for hash indexes. 2014-08-26 13:02:31 +02:00
Willi Goesgens 10603f904d Walker: the process of walking now is aborted if the before-hook returns true. 2014-08-25 15:48:21 +02:00
Jan Steemann 04fbe668cc Merge branch 'aql2' of https://github.com/triAGENS/ArangoDB into aql2 2014-08-22 17:58:12 +02:00
Jan Steemann 1d34fa4896 stub for IndexRangeBlock 2014-08-22 17:58:02 +02:00
Max Neunhoeffer 4b229c5873 Merge branch 'aql2' of ssh://github.com/triAGENS/ArangoDB into aql2
Conflicts:
	lib/Basics/JsonHelper.h
2014-08-22 17:02:06 +02:00
Max Neunhoeffer 8fd6cd1184 Implement clear unneeded registers. 2014-08-22 17:00:53 +02:00
Jan Steemann 55608ceae2 use index nodes 2014-08-22 13:53:01 +02:00
Jan Steemann 3a60913afe fix JSON serialization of indexes 2014-08-22 13:13:07 +02:00
Jan Steemann 5d5aaaa949 Merge branch 'aql2' of https://github.com/triAGENS/ArangoDB into aql2 2014-08-22 12:00:55 +02:00
Max Neunhoeffer 7d60eff20d Merge branch 'aql2' of ssh://github.com/triAGENS/ArangoDB into aql2 2014-08-22 10:54:38 +02:00
Max Neunhoeffer 9f868e9a4a Fix a use after free bug. 2014-08-22 10:54:12 +02:00
Jan Steemann 30c6b26b6d add plans! 2014-08-22 10:44:19 +02:00
Jan Steemann f932e9277c cloned EnumerateCollectionBlock into IndexRangeBlock 2014-08-22 10:16:32 +02:00
Jan Steemann dc025e909b added free function 2014-08-21 13:45:22 +02:00
Jan Steemann 1442b9ebeb pass ExecutionEngine to ExecutionBlock, added stats for ExecutionEngine 2014-08-21 12:33:13 +02:00
Jan Steemann 1edd170317 turned off optimization 2014-08-21 11:21:03 +02:00
Max Neunhoeffer b1be847af4 Add NoResultsBlock. 2014-08-21 10:32:38 +02:00
Jan Steemann 670b407185 disable filters that never produce results 2014-08-20 18:24:52 +02:00
Jan Steemann e4abcdc843 added optimizer rule 2014-08-19 13:59:05 +02:00
Jan Steemann e6e78811b5 fixed replace 2014-08-18 14:27:23 +02:00
Jan Steemann 7b3389b55c modification queries 2014-08-18 13:52:41 +02:00
Jan Steemann fccfca0e47 refactoring 2014-08-18 13:22:40 +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 56eb49dcf7 fixed compile error 2014-08-15 18:22:19 +02:00
Jan Steemann 9348f12f78 implemented insert node 2014-08-15 18:12:33 +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 19da250191 fixed error 2014-08-14 19:21:08 +02:00
Jan Steemann 2dbd8252c4 remove compile warning 2014-08-14 17:31:30 +02:00
Jan Steemann dedc2cb035 Merge branch 'aql2' of https://github.com/triAGENS/ArangoDB into aql2 2014-08-14 16:59:51 +02:00
Jan Steemann b19d632b4a RemoveBlock 2014-08-14 16:59:43 +02:00
Max Neunhoeffer fcdf57ff09 Merge branch 'aql2' of ssh://github.com/triAGENS/ArangoDB into aql2
Conflicts:
	arangod/Aql/ExecutionEngine.cpp
2014-08-14 15:07:10 +02:00
Max Neunhoeffer f248792865 Make WalkerWorker a template class.
Implement findNodesOfType for ExecutionPlans.
2014-08-14 15:04:59 +02:00
Jan Steemann 0546e9d8ff implemented stub of RemoveBlock 2014-08-14 14:46:53 +02:00
Jan Steemann 93cfa9e2e4 count number of documents in collection 2014-08-14 13:53:21 +02:00
Willi Goesgens e2732ccccc Refactor ExecutionBlock - move all methods into the cpp file. 2014-08-14 10:53:10 +02:00
Max Neunhoeffer 3e135323dd Change the API one more time. 2014-08-13 15:44:44 +02:00
Max Neunhoeffer 684384e313 Cleanup ExecutionBlocks w.r.t. exceptions and leakages.
Note:
  Aggregate not completely checked.
  Left some FIXMEs.
2014-08-13 00:27:34 +02:00
Max Neunhoeffer e2851d1b2d Adjust some indentation. 2014-08-12 22:57:56 +02:00
Max Neunhoeffer 1b088ada7f Take out some debugging output. 2014-08-11 14:30:13 +02:00
Max Neunhoeffer b6564690ee Take care of empty lists to loop over. 2014-08-11 13:15:13 +02:00
Jan Steemann 6eb9dcb32e some comments 2014-08-08 19:52:43 +02:00
Max Neunhoeffer 9ce702c1b0 Fix static analysis once more. 2014-08-08 13:27:06 +02:00
Willi Goesgens 8eb3cfeca3 Implement subquery block - these parameters also should be enabled. 2014-08-07 18:04:42 +02:00
Jan Steemann d30914afb2 Merge branch 'aql2' of https://github.com/triAGENS/ArangoDB into aql2
Conflicts:
	arangod/Aql/ExecutionBlock.h
	arangod/Aql/ExecutionEngine.cpp
2014-08-07 17:25:37 +02:00
Willi Goesgens 69ff2303c9 Implement subquery block 2014-08-07 16:56:35 +02:00
Max Neunhoeffer 1d6f7bc3d2 Sort out bind as a preparation for subqueries. 2014-08-07 11:56:26 +02:00
Max Neunhoeffer 901129394e More comments, more generic functionality. 2014-08-04 12:51: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 b6af736c60 smallness 2014-08-01 13:16:07 +02:00
Max Neunhoeffer 341675ffaf Destructor of ExecutionBlock must not destruct children. 2014-08-01 12:18:41 +02:00
Max Neunhoeffer e7e98262ea Redo instanciator using Walker and in ExecutionEngine. 2014-08-01 11:56:39 +02:00
Max Neunhoeffer c1b15188ff Rename *Plan to *Node. 2014-08-01 11:17:34 +02:00
Max Neunhoeffer cd56e35f1f Sort out static analysis. 2014-08-01 10:28:25 +02:00
Max Neunhoeffer 0a71c3ba73 Finish first draft of staticAnalysis.
Compiles but is untested.
2014-07-31 23:16:00 +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 1ff3d44e88 removed AQL_PENG 2014-07-31 12:30:16 +02:00
Max Neunhoeffer 98d82de6fb Create generic recursive walk functionality for Plans/Blocks. 2014-07-31 10:31:45 +02:00
Max Neunhoeffer 2ef0095797 Start static analysis of variables in ExecutionBlocks. 2014-07-30 23:50:03 +02:00
Max Neunhoeffer d09f2690da Get rid of _nrVars in ExecutionPlans. 2014-07-30 17:00:38 +02:00
Max Neunhoeffer 65b477ddbd Snapshot, compiles, does not work. 2014-07-29 13:40:54 +02:00
Jan Steemann 4ff91b8405 fixed Json construction 2014-07-29 09:09:10 +02:00
Jan Steemann ef2fa52149 make it link 2014-07-28 16:32:49 +02:00
Max Neunhoeffer 5684bb5b65 Add RootBlock and stuff. 2014-07-28 16:26:24 +02:00
Max Neunhoeffer f2b135ef36 Start infrastructure for execution engine. 2014-07-28 09:41:19 +02:00