1
0
Fork 0
Commit Graph

50 Commits

Author SHA1 Message Date
Tobias Gödderz 8d649903f7 Aql by line mixed fixes (#8349) 2019-03-14 19:38:41 +01:00
Vasiliy 69479f1dce issue 523.1: address build issues, ensure FlushFeature subscriptions are cleared during stop(), assert that they are deallocated (#8193)
* issue 523.1: address build issues, ensure FlushFeature subscriptions are cleared during stop(), assert that they are deallocated

* backport: account for Flush subscriptions validly surviving past FlushFeature::stop()

* fix comment typo
2019-02-22 00:08:17 +03:00
Tobias Gödderz 1adb438412 Calculate registersToKeep correctly to avoid redundant copying of empty registers (#8168) 2019-02-15 12:55:18 +01:00
Luschgy b7b84beebf Feature/aql blocks by line (#6553)
* Fixed hidden merge conflict

* Added BlockFetcher, added a minimal test for SingleRowFetcher

* move RegInfo in types.h

* fix getSomeLogic

* Added the AqlItemMatrix implementation. Not yet tested!

* Fixed nr called => Waiting ratio in AllBlocksFetcherMock

* fix compiling

* add RegInfo to produceRow

* BlockFetcherHelper now returns a matrix

* pass RegInfo as requested into AqlItemRow ctor

I would still keep it out as the ItemRow should be a thin view.

* allow to change the AqlItemRows cheaper / remove _sourceRow member

* implement copyRow for AqlItemRow

* organize cleanup for outputblock used in getsome / shrink if necessary

* Added tests for SingleRowFetcher, cleanup in AqlItemRow

* start mocking

* Added test helpers, began work on a more complex test for SingleRowFetcher

* Re-added RegInfo again to AqlItemRow

* helper, added test case for FilterExecutor

* merge fixed compile

* Removed trx name where it is actually not used

* Made some functions TEST_VIRTUAL for mocking.

* implemented Sort executor

* Fixed the BlockFetcherHelper API, to always return a matrix if it is not waiting

* Implemented a SortExecutor test with data

* disable borken test

* Fixed test on SortExecutor. Green now, needs some more testing

* change a bit how the AqlItemRow is used in a test

* Added another test for the SingleRowFetcher

* Added more tests for SingleRowFetcher

* fix getRegisterInfo

* Moved RegInfo into ExecutorInfos. Also now use the FilterExecutor implementation in production code instead of FilterBlock. Starting integration testing.

* add more asserts

* Fixed undefined behaviour in TestCode.

* Do not shrink an empty output block

* switch to block pointers in AqlItemRow

* return blocks in the row fetcher

* Updated grammar.cpp

* Updated (fixed) tests to verify returnBlock

* Improved const-ness

* Changed BlockFetcher constructor in order to make it mockable

* Implemented BlockFetcherMock and rewrote some tests with it

* Updated a comment

* Updated comments

* init commit - EnumerateListExecutor, including EnumerateListExecutorInfos

* add potential fix for ItemMatrix

* Replaced fakeit with BlockFetcherMock in another GIVEN block

* Replaced the last fakeit mocks with BlockFetcherMock and removed fakeit

* Updated function definition

* included missing arary included

* Renamed AqlItemRow to InputAqlItemRow

* Split AqlItemRow into Input~ and Output~ classes

* EnumerateListExecutor + Tests

* Added tests for AqlItemRows

* Added test file for AqlItemRows...

* Made the ostream operator for AqlItemBlocks available to Logger and Catch info

* build error

* Added a second test for AqlItemRows. Need to make input space invalid now, sth. acidential referencing will show up

* Introduce a block ID in the InputAqlItemRow

* Copy output values correctly, avoid InputAqlItemRow pointers

* Added a test for registerClearout

* Fixed tests

* Added a test for adding new values

* Added a test for an incomplete row write to not count as produced.

* Fixed getSome and a test

* Added a test for larger AQL values in AqlItemRows

* Fixed compile error in hidden merge conflict

* Added tests for Filter counter in FilterExecutor

* OutputAqlItemRow now takes responsibility of the block

* Handed responsibility of blocks in ExecutionBlockImpl to OutputAqlItemRow

* EnumerateListExecutor should be close to its finish. Tests need to be fixed, not ready yet.

* better swap

* OutputAqlItemRow now takes ExecutorInfos

- added several assert
- implemented a more strict and safe produced() logic

* enum list test

* Added a more specific error message

* Removed OutputAqlItemRow.changeRow()

* fix invalid block freeing

* changed order of input/output registers

* Fixed a test

* Fixed matrix width in test

* fix failure tests

* finished enumlist tests

* Implemented AllRowsFetcher and tests for it

* Bugfix in skipSome stub

* insert sort and enumerate list executors

into exectuion nodes' create functions

* fixed singlerowfetcherhelper, added tests

* small fixes

* add missing Infos

* restore accidentally deleted scorer

* make it compile

* fix executor info creation / usage

* make use of output var in EnumarateListNode

* Added Executor::Stats and FilterStats

* Extended FilterExecutor tests with stats, added node tracing to getSome

* Fixed Sort-&EnumerateList- Executor to use the new return type with stats

* Fixed compile error in tests

* Changed *ExecutorInfo constructors and classes to contain the necessary register informations

* Made an ExecutorInfo construction more readable

* Updated comments

* Fixed checks in OutputAqlItemRow::setValue()

* Add comparison method to SortRegister. Forbid construction without one.

* Implemented ExecutionBlockImpl::initializeCursor

* more mocking inside ExecutionBlockImplTest

* Minor changes

* Avoid AqlValueGuard destroying the value copied into the output block

* Disabled failure tests that do not apply to the new Sort implementation

* further mocking of test modules

* Removed constexpr for compatibility with outdated gcc versions

* add some failure tests - getsome works differently

therefor we do not test the old behavior

* fix sort node

* clean up alq item matrix

* Removed the transaction methods from read-only access to AqlValues (get and at) and repliced by CollectionNameResolver where necessary. Still left: some calls extract VPackOptions from the Transaction. Compare needs a BuilderLeaser only.

* textexecutionhelper, execimpl test

* Eliminated FilterBlock

* Eliminated the EnumerateListBlock

* first successful running test of executorblockimpl

* Eliminated SortBlock

* fixed testexecutor helper

* Made the ExecutorInfos private to the executors again.

* Implement and use AqlItemBlockShell (#6562)

* Added AqlItemBlockShell

* Minor changes

* Mostly replaced AqlItemBlock with ~Shell.

Current state:
- arangod compiles
- OutputAqlItemRow has yet to be changed
- catch tests have yet to be fixed

* Use AqlItemBlockShell in OutputAqlItemRow

* Added registersToKeep to AqlItemBlockShell

* Removed ExecutorInfos from OutputAqlItemRow

* Split AqlItemBlockShell into Input~ and Output~

* Changed tests so they compile again - they're still not yet working.

* Fixed tests

* fixed building, modified impl test

* Removed now superfluous BlockFetcherMock functions

* more execimpl testing

* Removed block IDs

* more impl testing

* Reduced dependencies of BlockFetcher construction

* Bugfix, cleared documentation

* Removed debug-output

* Adressed minor code review remarks

* Moved method definitions into .cpp files to avoid includes

* Added assertions

* Added comments

* Addressed several more review comments

* Added missing includes

* more testing, not finalized yet

* added missing header file

* added a test for execution block impl

* removed old comment

* Improved lookup algorithm to identify correct block/row combination in AqlItemMatrix

* added test for ExecutionBlockImpl

* move utility to the right position

* Bugfix and a TODO note

* Bugfix: use a uniform ResourceMonitor in tests

* Made OutputAqlItemRow::setValue clone by default and copy on move

* Replaced the getRow lookup with a binary search

*  enumerate tests

* Disable emplacing of AqlValues in ItemBlock

* Reenabled std::enable_if will warn until oskar is using c++17 as standard.

* Add helper function to create a shared pointer of an unordered_map<RegisterId>

* CalculationExecutor (#6570)

* add CalculationExecutor skeleton

* first shot of CalculationExecutor

* fix minor bugs

* handle references

* use new shared pointers

* commit to share work

* fix failure test

* reformat with clang-format

* add test for CalculationExecutor

* fix CalcualtionExecutor test

* clean up

* Removes unused code

* clean up includes

* fix/remove comments

* add changes requrested by hacki

* ReturnExecutor (#7932)

* add skeleton to CMakeLists.txt

* build most parts of the ReturnExecutor

* This commit removes ReturnBlock and adds some debug messages

removed inheritRegisters functionality

* finish ReturnExecutor

* add test for return executor

* remove unused code

* add stats and clean up includes

* verify result in ReturnExecutorTest and move *Stats to "Aql/Stats.h"

* Fixed algorithm to find correct row in a MultiRow Input

* fix full count and failure tests (#7969)

* fix full count and failure tests

* fix filter test

* WIP: fixes

* fixed

* NoResultsExecutor (#7953)

* add NoResultsExecutor

* clean up

* some review changes

* fix test

* fix

* fix WAIT -> DONE

* remove unused code (#7995)

* create skeleton for SingletonExecutor (#7957)

* create skeleton for SingletonExecutor

* WIP: continue implementation

* WIP: add fetcher skel

* WIP: add inject function to ConstFetcher

* rename SingletonExecutor to IdExecutor

* WIP: replace singleton node

* WIP: More Debugging on IdExecutor

* WIP: IdExecutor

* WIP: add failure tests

* make iresarch test work but not pass

* WIP: add ConstFetcherHelper

* fix test

* fix tests

* fix iresearch tests

* fix wording

* add review changes

* add review change to SingleRowFetcher as well

* fix test

* fix error when increasing index

* temporarily remove fold-expression

* clean up

* Fix gcc compile error

* Feature/aql limit executor (#7982)

* limit executor

* removed not needed tri assert

* rm _invariable in limitnode

* find out if we are in a subquery

* queryDepth in limit infos

* added missing queryDepth

* finalizing limit executor

* added more tests, fixed a condition

* add assert to test

* added missing fullcount check

* typo

* minor changes, fixed test

* test

* wrong check

* fixed tests

* false merge

* remove basic blocks

* remove basic block includes

* include sort order

* removed not needed basic blocks

* removed not needed basic blocks

* fix test

* Feature/remove input output shells (#8090)

* Added template parameters to allow for block pass-through to be chosen at compile time

* Adapted the tests to match the new template parameters

* Adapted ConstFetcher and IdExecutor to match the new templated fetcher

* Implemented pass-through, fixed SingleRowFetcherTest

* Fixed implicit merge conflicts

* Fix assumptions that are violated by block pass-through

* Added 2 regression tests

* Fixed test expected data

* Fix nullptr dereference

* Fix handling of non-invalidated input variables

* Fix nullptr dereference

* Fix handling of non-invalidated input variables

* Fixed compile error

* Fixed a useless and leaking allocation

* Try a less implicit fix

* Allow IdExecutor and ConstFetcher to be used with pass-through

* Performance patches from @mchacki

* Fixed merge conflicts, and bugs in ConstFetcher

* Fixed atMost pass-through, and blocks that call their parents too often

* Removed InputAqlItemBlockShell (except from tests)

* Removed OutputAqlItemBlockShell (except for tests)

* Moved implementations of OutputAqlItemRow methods in the header

* Moved SingleRowFetcher::fetchRow to the header to allow inlining

* Reenabled returnInheritedResults optimization

* Enable passThrough for ReturnExecutor with inherited results

* Specialized CalculationExecutor to avoid unneccessary conditional jumps

* Made tests compile again (but are currently broken)

* Fixed ReturnExecutor test

* Move created InputRows out of AqlItemMatrix

* Limit- and EnumerateList Executors no longer fetch from upstream after DONE

* Added comments

* Added experimental AqlItemBlock optimizations

* Removed _numEntries, added comments

* Allow executors to pass an "atMost"-limit to the SingleRowFetcher (for LIMIT)

* Let the LimitExecutor pass atMost upstream

* Bugfix for FullCount

* Feature/aql enumeratecollection executor (#8028)

* initial commit

* enum coll executor

* buildable version of enumeratecollectionexecutor

* wrong usage of outVariable

* Added template parameters to allow for block pass-through to be chosen at compile time

* Adapted the tests to match the new template parameters

* Adapted ConstFetcher and IdExecutor to match the new templated fetcher

* more fixes, still some tests failing

* Implemented pass-through, fixed SingleRowFetcherTest

* Fixed implicit merge conflicts

* adding missing set value (remember optimize todo), optimized constructor

* removed old enumerate collection blocks

* Fix assumptions that are violated by block pass-through

* Added 2 regression tests

* Fixed test expected data

* Fix nullptr dereference

* Fix handling of non-invalidated input variables

* Fix nullptr dereference

* Fix handling of non-invalidated input variables

* Fixed compile error

* Fixed a useless and leaking allocation

* added broken uncompilable executor test

* Try a less implicit fix

* fix mocking

* enumerate collection executor test

* remove class, use only static function.

* clean up test after merging with main branch

* Allow IdExecutor and ConstFetcher to be used with pass-through

* Performance patches from @mchacki

* Fixed merge conflicts, and bugs in ConstFetcher

* Fixed atMost pass-through, and blocks that call their parents too often

* Removed InputAqlItemBlockShell (except from tests)

* Removed OutputAqlItemBlockShell (except for tests)

* Moved implementations of OutputAqlItemRow methods in the header

* Moved SingleRowFetcher::fetchRow to the header to allow inlining

* Reenabled returnInheritedResults optimization

* Enable passThrough for ReturnExecutor with inherited results

* Specialized CalculationExecutor to avoid unneccessary conditional jumps

* Made tests compile again (but are currently broken)

* Fixed ReturnExecutor test

* Limit- and EnumerateList Executors no longer fetch from upstream after DONE

* Removed an assertion which seems to be incorrect during bootstrap.

* Inlined AQL ItemMatrix and removed unused elements in other Executors

* Now inline + Move in AqlItemMatrix, seems to be overall best performing

* Bugfix: Do not returnInheritedResults on DBServers

* Fixed LIMIT test, and made it more thorough.

* Fixed createion of NoResultBlock creation in IResearch Nodes. Also relaxed an assertion

* Reactivated failure point, now identical with anotherone in OutputRow, need to unified

* Bug fix: do not mutate the offset in the LimitExecutor (#8109)

* Introduced test

* Fixed LimitExecutor to not mutate its infos, so it works correctly in subqueries

* Fixed crashes in CatchTests

* Fixed non-maintainer build

* try to fix subqueries

* Fix isInSubQuery for non-singleton nodes.

* remove useless while true

* Feature/aql blocks by line dan sort (#8143)

* Add SortNode::SorterType to SortExecutorInfoss.

* prepare imple of sort executor

* WIP: add some code for dan sort

* WIP: working at pushRows

* WIP - try to add Dan's heap-sort

* re add missing test

* 2 fixes

* fix

* Dan's tests are working

* remove unused variable

* remove SortBlock.cpp from CMakeLists.txt

* remove hack and provide an extra method to set the _baseIndex

* Simplified ContrainedSortExecutor.

* fix forgotten variable

* update doc

* Assert that we do not use functions that might return wrong results.

Preconditions or invariants the functions rely on are broken. Therefore
the functions can not be used. This is asserted in maintainer mode.

* add function to restore row invariant

* do not emplace and pop_back if not necessary

* Use clear registers in case we can move the rows.

* WIndows opst zirkus

* Actually destroy AqlItemValue

* Feature/traversal executor by line (#8000)

* Added stubs for TraversalExecutor, no implementation, not compiled in yet

* Included production code of TraversalExecutor and made it compile. Now implement

* Implemented production code for trivial tests, if no row is reaching the traverser.

* Fixed TraversalExecutor code to pull all rows from above and added tests. No traversal yet, this is next

* Intermediate blind commit might not work

* Fixed compile issue in test code

* Created a shared place for Mocks in tests and moved the StorageEngineMock there, also started a shared place for mock servers, most test will need the same server in order to work.

* Fixed travesalExecutor tests. Now able to create tests with actual input.

* Added successful test in TraversalExecutor, that Traverser as started with correct start vertices (by inputRegister)

* Further test cases

* Added stubs for TraversalExecutor, no implementation, not compiled in yet

* Included production code of TraversalExecutor and made it compile. Now implement

* Implemented production code for trivial tests, if no row is reaching the traverser.

* Fixed TraversalExecutor code to pull all rows from above and added tests. No traversal yet, this is next

* Intermediate blind commit might not work

* Fixed compile issue in test code

* Created a shared place for Mocks in tests and moved the StorageEngineMock there, also started a shared place for mock servers, most test will need the same server in order to work.

* Fixed travesalExecutor tests. Now able to create tests with actual input.

* Added successful test in TraversalExecutor, that Traverser as started with correct start vertices (by inputRegister)

* Fixed leftovers from rebase

* Refixed mocks in different folder

* Fixed Mock import

* Fixed Calculators Exector Test to use the unified mocked server.

* Implemented logic for the TraversalExecutor. Also added tests for it. Not fully complete though

* Added validation of result values

* Added usage of constant register in traversal executor

* Included filter variables in traersal executor. Added test for const input. And moved MMDR into base traverser class for simplicity

* Added ostream operators on AQLValue and AqlInputRow. Not 100% done yet but good enough

* Added a shutdownable ExecutionBlock. Some blocks need to implement a specific shutdown still. I added this class to make it easier to eliminate them when the time is due.

* Removed ostream operator for INPUT row again, does for some reason not compile on Linux0o

* Fixed initialization order

* Removed classwrapper for shutdown.

* Applied review changes

* Refixed failing tests, API is not subject to change

* Fixed CatchTest (wrong usage of string literal in test case)

* Feature/shortest path executor (#8042)

* Added stubs for TraversalExecutor, no implementation, not compiled in yet

* Included production code of TraversalExecutor and made it compile. Now implement

* Implemented production code for trivial tests, if no row is reaching the traverser.

* Fixed TraversalExecutor code to pull all rows from above and added tests. No traversal yet, this is next

* Intermediate blind commit might not work

* Fixed compile issue in test code

* Created a shared place for Mocks in tests and moved the StorageEngineMock there, also started a shared place for mock servers, most test will need the same server in order to work.

* Fixed travesalExecutor tests. Now able to create tests with actual input.

* Added successful test in TraversalExecutor, that Traverser as started with correct start vertices (by inputRegister)

* Further test cases

* Added stubs for TraversalExecutor, no implementation, not compiled in yet

* Included production code of TraversalExecutor and made it compile. Now implement

* Implemented production code for trivial tests, if no row is reaching the traverser.

* Fixed TraversalExecutor code to pull all rows from above and added tests. No traversal yet, this is next

* Intermediate blind commit might not work

* Fixed compile issue in test code

* Created a shared place for Mocks in tests and moved the StorageEngineMock there, also started a shared place for mock servers, most test will need the same server in order to work.

* Fixed travesalExecutor tests. Now able to create tests with actual input.

* Added successful test in TraversalExecutor, that Traverser as started with correct start vertices (by inputRegister)

* Fixed leftovers from rebase

* Refixed mocks in different folder

* Fixed Mock import

* Fixed Calculators Exector Test to use the unified mocked server.

* Implemented logic for the TraversalExecutor. Also added tests for it. Not fully complete though

* Added validation of result values

* Added usage of constant register in traversal executor

* Included filter variables in traersal executor. Added test for const input. And moved MMDR into base traverser class for simplicity

* Added ostream operators on AQLValue and AqlInputRow. Not 100% done yet but good enough

* Added a shutdownable ExecutionBlock. Some blocks need to implement a specific shutdown still. I added this class to make it easier to eliminate them when the time is due.

* Removed ostream operator for INPUT row again, does for some reason not compile on Linux0o

* Fixed initialization order

* First draft of shortest path executor

* Fixed logic bugs, Local AQL tests succeed

* Added first version of ShortestPathExecutor tests. Edge output tests are missing yet.

* Added EDGE output tests

* Replaced TraversalStats with NoStats, they have never been tracked...

* Removed obsolete ShortestPathBlock.

* Removed classwrapper for shutdown.

* Applied review changes

* Refixed failing tests, API is not subject to change

* windows macro opst circus

* Clear registers per block, not per row (#8164)

* Fixed compilation under linux again...
2019-02-14 19:13:08 +01:00
Frank Celler ac9f375fb5 big reformat 2018-12-26 00:54:03 +01:00
Jan 0dd1776467
Make recovery more reliable (#7297) 2018-11-19 13:59:18 +01:00
Jan 0d48677619
Bug fix/aql optimizer improvements 2308 (#6241) 2018-08-24 13:42:22 +02:00
Jan edb24deafe
cleanup collection/vocbase interface of ExecutionNodes (#5557) 2018-06-08 15:28:48 +02:00
Andrey Abramov e117a97fb4
Feature/arangosearch scatter node (#5536)
* remove collection dependency from scatter

* simplify `createBlock` API

* remove useless IResearchViewScatter node

* some fixes

* code cleanup

* scatter arangosearch view

* cleanup

* fix compilation errors

* fix test issues

* store shared_ptr rather than raw pointer in IResearchViewNode

* refactor ScatterBlock

* refactor DistributeBlock

* ensure no leaks during execution node cloning

* some fixes

* code cleanup

* remove vocbase from `DistributeNode`

* add missing ifdef

* fixes after review
2018-06-06 20:42:53 +03:00
Jan f55df6786a
blind commit of work, as I managed to break my local git repository (#5456) 2018-05-25 13:07:28 +02:00
Simon 35992ad67b Coordinator storage engine (#5405) 2018-05-22 19:30:27 +02:00
jsteemann ba81e7aa82 remove unnecessary casts 2018-05-11 17:54:36 +02:00
jsteemann 27e985d5d0 safer casts for ExecutionNode types 2018-05-10 20:08:37 +02:00
Wilfried Goesgens 7d6e580780 Refactoring & code cleanup (#5138) (#5142) 2018-04-24 14:42:23 +02:00
Andrey Abramov f6c184df33 Factory method for execution block (#4729) 2018-03-05 15:02:30 +01:00
Jan 86ef7d4018 Bug fix/fixes 1711 obi (#3730) 2017-11-17 16:34:33 +01:00
Jan 5abf0c1185 Bug fix/fixes 1511 (#3711) 2017-11-16 14:18:51 +01:00
Frank Celler a5a25754ed Feature/reduce extraction to projection (#2792)
* reduce extractions to projections

* recycle string buffers in SocketTask

* micro optimizations for mmfiles indexes

* added special lookup function for _key

* moved function into the correct file

* speed up key buffer allocations a bit

* added noexcept specifier

* correctly name variable

* explicitly move bounds

* fix and speedup from/toPersistent functions

* reuse string from ManagedDocumentResult for multiple lookups

* use move-assign

* a bit less work for single server

* speedup AQL function HASH

* single fetch optimization

* performance optimization for the case when no documents need to be returned

* make reduce-extraction-to-projection a RocksDB-only optimizer rule

* cppcheck

* try to fix compile error on MacOS

* bug fix for MacOSX

* missing namespace (in Windows compile)
2017-07-14 08:40:29 +02:00
Frank Celler 40d73d5a8b Revert "[WIP] Feature/reduce extraction to projection (#2735)"
This reverts commit 5bfcff30cd.
2017-07-12 12:52:14 +02:00
Jan 5bfcff30cd [WIP] Feature/reduce extraction to projection (#2735)
* reduce extractions to projections

* recycle string buffers in SocketTask

* micro optimizations for mmfiles indexes

* added special lookup function for _key

* moved function into the correct file

* speed up key buffer allocations a bit

* added noexcept specifier

* correctly name variable

* explicitly move bounds

* fix and speedup from/toPersistent functions

* reuse string from ManagedDocumentResult for multiple lookups

* use move-assign

* a bit less work for single server

* speedup AQL function HASH

* single fetch optimization

* performance optimization for the case when no documents need to be returned

* make reduce-extraction-to-projection a RocksDB-only optimizer rule
2017-07-12 11:22:29 +02:00
Michael Hackstein 43c4987023 Adapted the traverser code to make conditions for the used index and for post-filtering non-overlapping. If the post-filtering is empty it is not evaluated at all. 2017-06-09 17:01:26 +02:00
jsteemann 2994988210 attempt to fix broken graph stuff 2017-04-20 22:14:30 +02:00
Michael Hackstein e3febed2b5 ShortestPath and TraversalNode now call GraphNode::toVelocyPack as expected, not the Base ExecuteionNode::toVelocypackGeneric by accident 2017-04-20 17:19:30 +02:00
Michael Hackstein 4f899bfd2c Integreated a ShortestPathEngine on DBServers and wired it up with ShortestPathNode and Options. The path seems to be computed correctly in clsuter now, but the vertices are not yet retrieved. 2017-04-20 13:57:14 +02:00
Michael Hackstein 0fa1980064 More unified merge of Traverser- and ShortestPath- into GraphNode. Now the ShortestPathNode creates TraverserEngines on the Cluster. Finally everything ready to wire computation together 2017-04-19 15:23:37 +02:00
Michael Hackstein 50ce09cd98 Added a generic GraphNode as a base-class for Traversal and ShortestPath. It should handle Graph parsing and Engine creation. 2017-04-19 10:10:47 +02:00
Michael Hackstein 1087065ea5 Merge branch 'devel' of github.com:arangodb/arangodb into engine-api 2017-04-13 17:34:25 +02:00
Michael Hackstein 1119257d49 ShortestPathOptions now contain forward and backward lookupinfos for all edge collections in use. 2017-04-11 15:00:21 +02:00
Michael Hackstein 7e3ce102b1 The ShortestPathBlock and -Node now use a pointer to the same options instead of managing one each. 2017-04-11 14:08:21 +02:00
Michael Hackstein cf7136264b Removed V8Traverser files and made ShortestPathOptions an extension of Graph::BaseOptions. Now they are ready to use LokkupInfos as well. Now starting to move logic around 2017-04-10 16:26:23 +02:00
Michael Hackstein 052c4942fc Removed superflous aql::ShortestPathOptions and replaced it by traverser::ShortestPathOptions. Api is not fixed yet. 2017-04-10 11:02:01 +02:00
jsteemann 81dcfbbe3d pass trx into numberDocuments 2017-03-31 11:33:16 +02:00
Michael Hackstein 3925f946c5 Revert "Squashed commit. Moved over SmartSearch Shortest Path feature"
This reverts commit f7eb96bc8d.
2017-03-24 18:23:20 +01:00
Simon Grätzer 7007db2f44 Windows: Fix ShortestPathNode 2017-03-24 17:23:31 +01:00
Michael Hackstein f7eb96bc8d Squashed commit. Moved over SmartSearch Shortest Path feature 2017-03-24 15:31:39 +01:00
jsteemann ea0be728d7 fix compile error 2017-03-16 12:16:29 +01:00
Michael Hackstein eded404e3a Replaced costEstimate of ShortestPath by a hardCoded one which does not require knowledge of edgeIndex 2017-03-16 10:07:50 +01:00
jsteemann f5c8932744 initial version of query execution plan cache, still very rough 2017-02-21 11:58:38 +01:00
Michael Hackstein 16dda09b4a Preperation to remove knowledge of EdgeIndex from ShortestPathNode 2017-02-10 14:24:13 +01:00
Michael Hackstein e22014a272 Merge branch 'MIT' of github.com:arangodb/arangodb into generic-col-types 2016-09-06 09:33:23 +02:00
jsteemann 4839d65b36 moved things out of TRI_collection_t 2016-09-02 11:56:48 +02:00
jsteemann c6efe26198 cppcheck 2016-08-25 14:04:23 +02:00
jsteemann 5f06a5c025 Merge branch 'devel' of https://github.com/arangodb/arangodb into readcache 2016-08-23 12:13:08 +02:00
Jan Steemann b296468a18 more optimizations 2016-08-22 17:36:04 +02:00
jsteemann 1cfee8059a remove TRI_json_t remainders 2016-08-18 16:13:52 +02:00
Michael Hackstein e8ff84c8da cppcheck fixes and dead code cleanup. 2016-08-11 11:15:38 +02:00
Michael Hackstein 64d7f690da Removed AqlTransaction wherever possible. Added an InjectTransaction for the aql query, used by TraverserEngine. Also fixed TraverserEngine from/to velocypack functions. 2016-07-28 17:05:00 +02:00
jsteemann 89e0c11b44 refactoring 2016-07-26 16:25:38 +02:00
jsteemann 2e417e08d6 fixed includes 2016-06-15 23:23:38 +02:00
Michael Hackstein 832d2a94f3 Squashed commit of the following:
commit 6b5b1fc821f304ce0445220bbf781060bd2995af
Merge: c987b9f 1754e78
Author: Michael Hackstein <michael@arangodb.com>
Date:   Tue Jun 7 12:55:24 2016 +0200

    Merge branch 'AQL_GRAPHICATION' of github.com:arangodb/arangodb into AQL_GRAPHICATION

commit c987b9f71f75a95a45a32d5cb15ed5570b2ff938
Merge: c4437e2 274cfeb
Author: Michael Hackstein <michael@arangodb.com>
Date:   Tue Jun 7 12:55:07 2016 +0200

    Merge branch 'devel' of github.com:arangodb/arangodb into AQL_GRAPHICATION

commit 1754e78736bf3f93c32b0c7c4a5d5569f3c834d9
Author: jsteemann <jan@arangodb.com>
Date:   Tue Jun 7 12:01:24 2016 +0200

    fixed leaks

commit 6f8be7707623c10b1365d12db61011f73ca3e36a
Author: jsteemann <jan@arangodb.com>
Date:   Tue Jun 7 11:53:58 2016 +0200

    don't emit "expected" errors

commit c4437e29c72a54f46942c616447ddee377cce478
Merge: e567d81 f4e2ead
Author: Michael Hackstein <michael@arangodb.com>
Date:   Tue Jun 7 11:40:53 2016 +0200

    Merge branch 'AQL_GRAPHICATION' of github.com:arangodb/arangodb into AQL_GRAPHICATION

commit e567d810b2ff624fc4acc8c12948cd89b4592b8d
Author: Michael Hackstein <michael@arangodb.com>
Date:   Tue Jun 7 11:40:44 2016 +0200

    Removed now unused SHORTEST_PATH code. Use the AQL Node instead.

commit f4e2eadbf03fecf7d0f0aa699caaf1198ca79443
Merge: 3d24da5 52f20f8
Author: jsteemann <jan@arangodb.com>
Date:   Tue Jun 7 11:30:40 2016 +0200

    Merge branch 'AQL_GRAPHICATION' of https://github.com/arangodb/arangodb into AQL_GRAPHICATION

commit 3d24da5b0060025ae7c133600bfae40b11c6ed70
Author: jsteemann <jan@arangodb.com>
Date:   Tue Jun 7 11:30:25 2016 +0200

    simplify initialize()

commit 52f20f842dd966b046e428eb08429f036240e112
Author: Michael Hackstein <michael@arangodb.com>
Date:   Tue Jun 7 11:04:08 2016 +0200

    Removed an unused ClusterComm->drop

commit c4bc6fa53340ab9de39bb0ef2d573ca77197c580
Author: jsteemann <jan@arangodb.com>
Date:   Tue Jun 7 11:00:36 2016 +0200

    do not show "expected" errors on shutdown

commit 50c170737311ae031addec8fb251cd5c1a2fbf5b
Merge: 7da771b 0141cdd
Author: Michael Hackstein <michael@arangodb.com>
Date:   Tue Jun 7 11:00:34 2016 +0200

    Merge branch 'AQL_GRAPHICATION' of github.com:arangodb/arangodb into AQL_GRAPHICATION

commit 7da771bb2bc3daa6c332507e021d37f536d17080
Author: Michael Hackstein <michael@arangodb.com>
Date:   Tue Jun 7 10:59:55 2016 +0200

    Fixed VertexUniqueness::PATH in cluster Traverser. And Fixed global edge Uniqueness in cluster.

commit 0141cdd1ca929f14ac5d66a2fcf6da5faf7b0e7f
Author: jsteemann <jan@arangodb.com>
Date:   Tue Jun 7 10:30:16 2016 +0200

    pass by const reference, not by copying

commit 8b96da25cdbee4a8a6508470500ae19a8ddbc129
Merge: 7b79575 d87aa2b
Author: Michael Hackstein <michael@arangodb.com>
Date:   Tue Jun 7 09:07:30 2016 +0200

    Merge branch 'devel' of github.com:arangodb/arangodb into AQL_GRAPHICATION

commit 7b79575a28871307f25284e1b9141a684ecc5b23
Author: Michael Hackstein <michael@arangodb.com>
Date:   Tue Jun 7 09:04:45 2016 +0200

    Attempt to improve getFilteredEdges in cluster.

commit 963e93e4f00afedeaa5fc960d629a6ea7e62f0ed
Author: Michael Hackstein <michael@arangodb.com>
Date:   Mon Jun 6 17:05:23 2016 +0200

    Fixed cloning of ShortestPathNode. Also fixed explainer to display Shortest Path Node.

commit 884df03a15ca936367bc79fdf339f633ae6d88a5
Merge: 3a28e21 2477077
Author: Michael Hackstein <michael@arangodb.com>
Date:   Mon Jun 6 16:10:10 2016 +0200

    Merge branch 'devel' of github.com:arangodb/arangodb into AQL_GRAPHICATION

commit 3a28e210cc6e6097febd7fb0629723ee38dced48
Author: Michael Hackstein <michael@arangodb.com>
Date:   Mon Jun 6 16:09:56 2016 +0200

    Now allow to stringify the name of SHORTEST_PATH_NODE.

commit f3898a0a4bb37af46de50a740f43f4e00076c9fb
Merge: a284d2f 7574e60
Author: Michael Hackstein <michael@arangodb.com>
Date:   Mon Jun 6 16:03:11 2016 +0200

    Merge branch 'AQL_GRAPHICATION' of github.com:arangodb/arangodb into AQL_GRAPHICATION

commit 7574e6005a3b377f23180d1a4ff1d07262576144
Author: jsteemann <jan@arangodb.com>
Date:   Mon Jun 6 16:01:35 2016 +0200

    attempt to init remote blocks in AQL queries

commit a284d2f4803371e2f43af28b36ca77c9d7722f8a
Author: Michael Hackstein <michael@arangodb.com>
Date:   Mon Jun 6 15:37:38 2016 +0200

    Added ShortestPathNode as TypeName

commit 6a283fad9469622d1b6f5a955b17a98861ff839c
Merge: cfaf2c0 d54030e
Author: Michael Hackstein <michael@arangodb.com>
Date:   Mon Jun 6 13:38:57 2016 +0200

    Merge branch 'devel' of github.com:arangodb/arangodb into AQL_GRAPHICATION

commit cfaf2c06885aa65b5289e2b8c3866bcf791989f8
Author: Michael Hackstein <michael@arangodb.com>
Date:   Mon Jun 6 11:33:37 2016 +0200

    Fixed Path Uniqueness of vertices in local case

commit 372298c78732dcdf936e3796287d2f7d3c10e3a8
Merge: d55fe00 442c7d0
Author: Michael Hackstein <michael@arangodb.com>
Date:   Mon Jun 6 11:32:29 2016 +0200

    Merge branch 'devel' of github.com:arangodb/arangodb into AQL_GRAPHICATION

commit d55fe0074f78d0cd567ca1c8d8873f06aba3855f
Merge: 3179c30 9e3c9e3
Author: Michael Hackstein <michael@arangodb.com>
Date:   Mon Jun 6 10:50:26 2016 +0200

    Merge branch 'devel' of github.com:arangodb/arangodb into AQL_GRAPHICATION

commit 3179c30b068ac384fa8d7723dac95d2ba5731949
Merge: 20bca1c 9fa9d49
Author: Michael Hackstein <michael@arangodb.com>
Date:   Mon Jun 6 10:50:09 2016 +0200

    Merge branch 'devel' of github.com:arangodb/arangodb into AQL_GRAPHICATION

commit 20bca1c25956789f695765aab498112776296e71
Merge: 4f148ba e843719
Author: Michael Hackstein <michael@arangodb.com>
Date:   Mon Jun 6 09:32:41 2016 +0200

    Merge branch 'devel' of github.com:arangodb/arangodb into AQL_GRAPHICATION

commit 4f148baafef979a61d8d195b6bed7cdea058ff2e
Author: Michael Hackstein <michael@arangodb.com>
Date:   Fri Jun 3 16:33:23 2016 +0200

    Fixed vertex uniqueness in Cluster case. Still fails in single though

commit 533be3b15c4d2899c1c287cc6f5224260210c7d2
Merge: fc3d65e a3032db
Author: Michael Hackstein <michael@arangodb.com>
Date:   Fri Jun 3 13:58:50 2016 +0200

    Merge branch 'devel' of github.com:arangodb/arangodb into AQL_GRAPHICATION

commit fc3d65ebf529344e8870898efb1ec965a88ee106
Author: Michael Hackstein <michael@arangodb.com>
Date:   Fri Jun 3 13:33:47 2016 +0200

    Replaced callback function in PathEnumerator to get Vertices by a real struct, due to issue with virtual function.

commit cac533bbaf195eb1bad5e9428402e3aeb895551f
Author: Michael Hackstein <michael@arangodb.com>
Date:   Thu Jun 2 18:06:38 2016 +0200

    Fixed Namespace issue. was okay for clang but not for g++

commit 4f046ad5d43a5654c8e9e35dc178d325588a8f4e
Author: Michael Hackstein <michael@arangodb.com>
Date:   Thu Jun 2 17:56:28 2016 +0200

    Fixed memmory issues for ShortestPath in cluster. Seems to be working now. Let full test run start.

commit f8ace613fefaefd5236e0fae47a98c13baff5b77
Author: Michael Hackstein <michael@arangodb.com>
Date:   Thu Jun 2 15:20:46 2016 +0200

    First Implementation of ShortestPath in cluster. Seems to be working with default weight but not with attribute-based weight.

commit 49ddf78902f2c814c6dddccc1d4fef7318eeb098
Merge: 31b81f3 b469cea
Author: Michael Hackstein <michael@arangodb.com>
Date:   Thu Jun 2 09:17:53 2016 +0200

    Merge branch 'devel' of github.com:arangodb/arangodb into AQL_GRAPHICATION

commit 31b81f39530138204bd2f2f9bae33f81a7948cd5
Author: Michael Hackstein <michael@arangodb.com>
Date:   Wed Jun 1 17:50:54 2016 +0200

    Unified the shortest Path finders. The shortest path block now directly creates a finder and reuses it throughout the AQL. It does not go via V8Traverser any more. Next Step: Expander Functions for cluster ShortestPath.

commit db402142e4f664f9997853c9f77b60a5d30fa7c6
Author: Michael Hackstein <michael@arangodb.com>
Date:   Wed Jun 1 14:40:58 2016 +0200

    Removed _api/graph test. The _api/graph does not exist any more

commit a481570346935be11553047f40957e1cf719a9de
Author: Michael Hackstein <michael@arangodb.com>
Date:   Wed Jun 1 14:40:06 2016 +0200

    Fixed inconsistency in RocksDB functions.

commit 2dc6811f9b7632ab12f7a534e7bb8673cfaed526
Author: Michael Hackstein <michael@arangodb.com>
Date:   Wed Jun 1 14:39:37 2016 +0200

    Fixed all tests after removing blueprints module

commit e2d68832e6744b6c11d8b5ecd24f50892aafd0f0
Author: Michael Hackstein <michael@arangodb.com>
Date:   Wed Jun 1 11:43:38 2016 +0200

    Removed all libraries for the deprecated graph-blueprints module. They can all be replaced by general graphs now. The have been deprecated since 2.4

commit 51330ea34c117e2ed19dc3dd249f460dbb75b281
Author: Michael Hackstein <michael@arangodb.com>
Date:   Wed Jun 1 10:38:15 2016 +0200

    Fixed DISTANCE_TO and SHORTEST_PATH in general-graph module. It was not moved to AQL only yet.

commit c876fe736306f0bac1655e37ed6acf75976ac1ec
Author: Michael Hackstein <michael@arangodb.com>
Date:   Wed Jun 1 09:22:19 2016 +0200

    Removed now obsolete graph AQL JS code.

commit 18891b346dcd519486c0540bc68b05b2359caf43
Author: Michael Hackstein <michael@arangodb.com>
Date:   Wed Jun 1 09:20:54 2016 +0200

    Replaced GRAPH_ECCENTRICITY by a call in the general graph module and relaced all it's tests.

commit 06371d4d2fbd8e77e0caed82d595f250835a909b
Merge: d17c3c7 8dde0e8
Author: Michael Hackstein <michael@arangodb.com>
Date:   Tue May 31 18:44:03 2016 +0200

    Merge branch 'devel' of github.com:arangodb/arangodb into AQL_GRAPHICATION

commit d17c3c7d927abba24beffde6da2990e095d4b1c3
Author: Michael Hackstein <michael@arangodb.com>
Date:   Tue May 31 18:29:01 2016 +0200

    Removed BETWEENNESS and ABSOLUTE_BETWEENNESS from AQL and moved it to the general-graph module.

commit efa566ba99394eb2367fe7734fe09868302b5c14
Author: Michael Hackstein <michael@arangodb.com>
Date:   Fri May 27 14:11:22 2016 +0200

    Removed GRAPH_CLOSENESS from AQL and Tests. Reimplemented it in general-graph module instead

commit 0eff3d38947627414972603d95e36ed6beb7a8de
Author: Michael Hackstein <michael@arangodb.com>
Date:   Fri May 27 12:28:57 2016 +0200

    Entirely removed GRAPH_ABSOLUTE_CLOSENESS from AQL. general_graph still offers _absoluteCloseness(). Now general_graph also offers _farness() which is identical and the correct academic name for the result of this function. Also tests are adopted.

commit b3e7678343c380cceb5ae71bca3071ce855baf9e
Author: Michael Hackstein <michael@arangodb.com>
Date:   Fri May 27 11:10:50 2016 +0200

    Removed ABSOLUTE_ECCENTRICITY function from AQL Executor and deleted the JS code for it

commit 904527ce53475485ff1a89f51991a6781573d97a
Author: Michael Hackstein <michael@arangodb.com>
Date:   Fri May 27 10:57:13 2016 +0200

    Reimplemented ABSOLUTE_ECCENTRICITY as AQL only variant.

commit 42a5230b6fabf14ced7a51636a7342a52504a32d
Author: Michael Hackstein <michael@arangodb.com>
Date:   Fri May 27 10:56:37 2016 +0200

    Reactivated bi-directional search in ShortestPath. Was deactivated by accident and algorithm is only correct if activated.

commit 9d61dfd18e1cdb900c39f9bc6d2bb7466a86c7d7
Author: Michael Hackstein <michael@arangodb.com>
Date:   Wed May 25 16:25:35 2016 +0200

    Entirely removed GRAPH_RADIUS from AQL. Moved tests to general-graph module _radius() function. Same for _diameter.

commit 4a8e51483e292b501d1d2ad9983513bc99312bef
Author: Michael Hackstein <michael@arangodb.com>
Date:   Wed May 25 14:52:53 2016 +0200

    Replaced call of _diameter with a new AQL query not using the deleted GRAPH_DIAMETER function

commit 15fc45e438515980ea39d711fcfca5edd78a5bea
Author: Michael Hackstein <michael@arangodb.com>
Date:   Wed May 25 13:05:39 2016 +0200

    Entirely removed GRAPH_DISTANCE_TO from AQL

commit bdaa20cff54170abdcd2f9ec4d246765151d71e5
Author: Michael Hackstein <michael@arangodb.com>
Date:   Wed May 25 12:55:20 2016 +0200

    Implemented all functions in the ShortestPathNode it is now clone-able and serves estimates. Also added Flags for ShortestPath and Traversal in the JSON representation.

commit ae6c922f56c4498aaaba7f76ffb37a0560ca1476
Author: Michael Hackstein <michael@arangodb.com>
Date:   Tue May 24 17:09:15 2016 +0200

    Removed debug output in test

commit dce2ea1e2f1c5244c26bb9fa3b783454aa4e8163
Author: Michael Hackstein <michael@arangodb.com>
Date:   Tue May 24 17:07:12 2016 +0200

    Removed GRAPH_DISTANCE_TO from test. It was identical to SHORTEST_PATH anyways...

commit c4b48bc9457fd7112feb96f9e619568ad79d29ec
Author: Michael Hackstein <michael@arangodb.com>
Date:   Tue May 24 17:00:12 2016 +0200

    Removed GRAPH_SHORTEST_PATH from stresstest and brute test

commit 87a0b725d1cef05473eff0a2b48c3ac52a549192
Author: Michael Hackstein <michael@arangodb.com>
Date:   Tue May 24 16:57:52 2016 +0200

    Removed SHORTEST_PATH and GRAPH_SHORTEST_PATH from Tests. Replaced them by there new IN DIRECTION SHORTEST_PATH equivalent.

commit 72c3cbf69dcf6aa4f167d77b29271e217ce0e2bc
Author: Michael Hackstein <michael@arangodb.com>
Date:   Tue May 24 16:55:50 2016 +0200

    Removed SHORTEST_PATH and GRAPH_SHORTEST_PATH from AQL Executor.

commit 6499ca12802f45f69e30e09fbbcebdcbca88deaa
Author: Michael Hackstein <michael@arangodb.com>
Date:   Tue May 24 14:17:35 2016 +0200

    Shortest Path now honors a distance attribute. Basic AQL graph tests are green yay ;). Now former general-graph tests are next.

commit 316280400585d9af5e09f4365c39fe80423d9eef
Author: Michael Hackstein <michael@arangodb.com>
Date:   Tue May 24 09:48:21 2016 +0200

    Fixed variable usage in Shortest Path. However now it does not terminate

commit 84359e3223cbf01b283b9bda2f6de8b367df236e
Author: Michael Hackstein <michael@arangodb.com>
Date:   Tue May 24 09:17:46 2016 +0200

    Shortest Path now correctly rejects invalid start nodes

commit c8a831e0d6b95445ea3cd276d0c0c0ad2ceb4901
Author: Michael Hackstein <michael@arangodb.com>
Date:   Tue May 24 09:13:06 2016 +0200

    Fixed a bug with autocasting to bool where it was not expected

commit 0300e1b4aa120fc04db7da620a905ed86bedd068
Author: Michael Hackstein <michael@arangodb.com>
Date:   Mon May 23 18:08:29 2016 +0200

    First shortest-path runs are successful. First tests are getting green again. Make Tests Green Again

commit d593f3317e8578e307c2246e65d3452d78cf043e
Author: Michael Hackstein <michael@arangodb.com>
Date:   Mon May 23 15:58:22 2016 +0200

    Added reading of start and target vertex in ShortestPath Block.

commit 46ce5b7a3cf6abb4a01d8e004b34ad2118573430
Author: Michael Hackstein <michael@arangodb.com>
Date:   Mon May 23 15:23:25 2016 +0200

    Fixed Constructor variable ordering

commit 23d666d929bdf84c302fe4729faeab2ab77886b8
Author: Michael Hackstein <michael@arangodb.com>
Date:   Mon May 23 15:20:44 2016 +0200

    Added the required parameters and implementation to return the result in ShortestPathBlock. Tests still RED
    . Next actually compute the path

commit 015da1ccdf50ca1123d600ac4b1afb460ad2b2dc
Author: Michael Hackstein <michael@arangodb.com>
Date:   Mon May 23 13:32:42 2016 +0200

    Prepared the ShortestPathFinder to get injected the result container instead of creating it's own one. Deactivated parts of the OLD api, shall be deleted soon.

commit bd72afa565ecaea38a4979180d4aadc0edbf52d7
Author: Michael Hackstein <michael@arangodb.com>
Date:   Fri May 20 15:40:56 2016 +0200

    Added infrastructure for new Shortest Path Node in AQL. It is not Functional yet and will throw errors. Tests are RED

commit 15b76dc27c118f60ee58cf2154ba84ee1311f8e7
Merge: 625e305 893802e
Author: Michael Hackstein <michael@arangodb.com>
Date:   Fri May 20 15:38:51 2016 +0200

    Merge branch 'devel' of github.com:arangodb/arangodb into AQL_GRAPHICATION

commit 625e305ca163fcbe928e5353bd06f4232664a0ee
Author: Michael Hackstein <michael@arangodb.com>
Date:   Thu May 19 16:23:14 2016 +0200

    Activated the AQL syntax for new non function SHORTEST_PATH in AQL. Also adapted One test file for new Syntax. However the feature is NOT implement at this point. Some Tests are RED

commit a935e9d9f962a2bcb6fdeed5facec2486ab4dc06
Author: Michael Hackstein <michael@arangodb.com>
Date:   Thu May 19 12:49:18 2016 +0200

    Removed _paths test. It does not exist any more

commit 1c182858a4d9427b0be9ec5749b587e40f804386
Author: Michael Hackstein <michael@arangodb.com>
Date:   Thu May 19 12:47:06 2016 +0200

    Fixed AQL_GRAPH tests

commit 5cd4e79ab77123db322defc5dd2f9417bc99e80e
Author: Michael Hackstein <michael@arangodb.com>
Date:   Thu May 19 11:42:47 2016 +0200

    Fixed all tests in aql-general-graph

commit a8ddd72ffa2ee29d085ea4c5002190149200a3b8
Author: Michael Hackstein <michael@arangodb.com>
Date:   Thu May 19 11:39:24 2016 +0200

    Removed GRAPH_COMMON_PROPERTIES from tests and AQL.

commit 4c0be7fdd3d610a2196aec3e93338bf3851f3606
Merge: 98e270e 7ca4d39
Author: Michael Hackstein <michael@arangodb.com>
Date:   Thu May 19 11:17:59 2016 +0200

    Merge branch 'devel' of github.com:arangodb/arangodb into AQL_GRAPHICATION

commit 98e270e47a1f85df47c54e4461457bdb10331696
Merge: ff177cc 1f9f46b
Author: Michael Hackstein <michael@arangodb.com>
Date:   Thu May 19 09:35:15 2016 +0200

    Merge branch 'devel' of github.com:arangodb/arangodb into AQL_GRAPHICATION

commit ff177ccf47cda7778212621df7b512c8a6a859ee
Author: Michael Hackstein <michael@arangodb.com>
Date:   Wed May 18 18:04:36 2016 +0200

    Removed PATHS() from AQL and tests. It can be replaced by Path Pattern Matching.

commit e568d5966e516c1bc6be9da79b01fd740bf2c4ff
Author: Michael Hackstein <michael@arangodb.com>
Date:   Wed May 18 17:38:49 2016 +0200

    Removed GRAPH_PATHS from Tests and from AQL. It is easily replaceable by Pattern Matching.

commit 107b2890397b4076042dc9b08ea2a7c1ab7f0284
Author: Michael Hackstein <michael@arangodb.com>
Date:   Wed May 18 16:59:36 2016 +0200

    Removed GRAPH_COMMON_NEIGHBORS from aql.js

commit dd7f6b4b68099c9c861b05dd2506cbd0f8b9c22d
Author: Michael Hackstein <michael@arangodb.com>
Date:   Wed May 18 16:54:39 2016 +0200

    Fixed some COMMON_NEIGHBORS transformation. Uniqueness is not guarenteed accross start vertices. It was with GRAPH_COMMON_NEIGHBORS.

commit 863a2e3b4728add2bad088c021d3bcf54ec6f569
Merge: 9a940aa 0064e25
Author: Michael Hackstein <michael@arangodb.com>
Date:   Wed May 18 15:19:40 2016 +0200

    Merge branch 'devel' of github.com:arangodb/arangodb into AQL_GRAPHICATION

commit 9a940aa8d8d9c74d26b819d54d743c369dcfa350
Author: Michael Hackstein <michael@arangodb.com>
Date:   Wed May 18 11:07:12 2016 +0200

    Added a new uniqness version for vertices. Not complete yet

commit 8c3db5519ff85b13a24c326c5982102226272635
Author: Michael Hackstein <michael@arangodb.com>
Date:   Wed May 18 09:13:03 2016 +0200

    Replaced GRAPH_COMMON_NEIGHBORS with their new equivalent in AQL in the tests.

commit 7c9782900d798019965c4ab685c24d624dd53238
Author: Michael Hackstein <michael@arangodb.com>
Date:   Tue May 17 16:35:32 2016 +0200

    AQL does not export GRAPH_NEIGHBORS any more

commit e23c3f2b9993d62290da7966419b58e9d391efe2
Author: Michael Hackstein <michael@arangodb.com>
Date:   Tue May 17 16:35:06 2016 +0200

    Replaced vertexUniqueness with uniqueVertices and edgeUniqueness with uniqueEdges as proposed in the preliminary documentation document.

commit b589f6c1113f5e02016eac0a49c0b5ea9f42620e
Author: Michael Hackstein <michael@arangodb.com>
Date:   Tue May 17 15:28:53 2016 +0200

    Removed GRAPH_NEIGHBORS from Tests and replaced them by their corresponding AQL equivalent. Only two of them are red because uniqueness is not correct yet.

commit 0bc36996429493e9ceadcb3ea82a126f2cfa66fa
Merge: 9d0473a 39083cb
Author: Michael Hackstein <michael@arangodb.com>
Date:   Tue May 17 12:48:25 2016 +0200

    Merge branch 'devel' of github.com:arangodb/arangodb into AQL_GRAPHICATION

commit 9d0473aeada534cd47e99dab3ceae4f91ed4ebbb
Author: Michael Hackstein <michael@arangodb.com>
Date:   Tue May 17 12:48:13 2016 +0200

    Implemented base version of vertex Uniqueness in AQL traversal. Single Server only.

commit 980fd6aaa09666dbe55e3811fb6430d49bfd5a1a
Author: Michael Hackstein <michael@arangodb.com>
Date:   Tue May 17 11:02:24 2016 +0200

    Edge Uniqueness levels also implemented in Cluster Case. Not yet tested due to errors in the agancy right now.

commit 73e3bf1da26afbdf0dffe815629003364e2469c4
Author: Michael Hackstein <michael@arangodb.com>
Date:   Tue May 17 10:57:51 2016 +0200

    Implemented all levels of edgeUniqueness in local Traversal case.

commit 2aba559e8db4ab7ac4d297590723277bd9a305cd
Author: Michael Hackstein <michael@arangodb.com>
Date:   Tue May 17 10:42:54 2016 +0200

    Now the options test actually checks for correctness of result.

commit 2b36bf92f3cf8ff6d0bc80079fddfebf36c1df92
Author: Michael Hackstein <michael@arangodb.com>
Date:   Tue May 17 10:38:01 2016 +0200

    Started Adding tests for OPTIONS in AQL Traversal

commit 86874ae290da2ba39e5cd42ec5ddaab0487091b2
Merge: f182f24 f6b7bd2
Author: Michael Hackstein <michael@arangodb.com>
Date:   Tue May 17 10:37:30 2016 +0200

    Merge branch 'devel' of github.com:arangodb/arangodb into AQL_GRAPHICATION

commit f182f244fdc38c6648fc5527a518ab41e73c6865
Author: Michael Hackstein <michael@arangodb.com>
Date:   Fri May 13 09:45:14 2016 +0200

    Typo fix

commit 15b63ef8a2c9b02af5917634319a5a461905402a
Author: Michael Hackstein <michael@arangodb.com>
Date:   Thu May 12 17:29:06 2016 +0200

    AQL Traverser now reacts to option: edgeUniqueness (NONE or PATH). Test yet missing.

commit 1ebd4abd45e085679eb3ef24b6cff6d6debe4f0a
Author: Michael Hackstein <michael@arangodb.com>
Date:   Thu May 12 15:34:03 2016 +0200

    Added infrastructure to insert OPTIONS into AQL Traversals. Right now they are only parsed not used.

commit 5440118412b43024beb451e47cc59e33591dbf84
Author: Michael Hackstein <michael@arangodb.com>
Date:   Thu May 12 13:29:51 2016 +0200

    Removed NEIGHBORS() from tests and replaced them by new syntax. Tests are RED.

commit 9fc6ec448d970b27cda16abc7f51217d8e2ba3de
Merge: 8084e28 07aa8b4
Author: Michael Hackstein <michael@arangodb.com>
Date:   Thu May 12 11:31:43 2016 +0200

    Merge branch 'devel' of github.com:arangodb/arangodb into AQL_GRAPHICATION

commit 8084e2804d4e4c537c9c7719303362b08e2fe0bc
Author: Michael Hackstein <michael@arangodb.com>
Date:   Thu May 12 11:30:09 2016 +0200

    Started Moving NEIGHBORS => AQL PPM. Test is RED.

commit afda95eb59b97f43b2b3ad891bb404d69ca5414e
Author: Michael Hackstein <michael@arangodb.com>
Date:   Thu May 12 10:55:42 2016 +0200

    Removed GRAPH_EDGES from AQL.

commit 3766babe444781555f5373287aa98f45b7a32406
Author: Michael Hackstein <michael@arangodb.com>
Date:   Thu May 12 10:53:20 2016 +0200

    Removed the old Graph Datasource from Traversals. Only the newer generalGraph is available.

commit 6ace9c992d3d06c5cb9c9e24c117e821412f63f1
Author: Michael Hackstein <michael@arangodb.com>
Date:   Wed May 11 16:31:42 2016 +0200

    Removed _getConnectingEdges from Test. Is not supported any more.

commit fbd28aae6f11782e34fcfb51887c89c878705f0a
Author: Michael Hackstein <michael@arangodb.com>
Date:   Wed May 11 14:55:03 2016 +0200

    Removed GRAPH_EDGES from AQL tests

commit e032683ccf79f185808bfadc154b587af39b5818
Author: Michael Hackstein <michael@arangodb.com>
Date:   Wed May 11 12:42:06 2016 +0200

    Removed EDGES function from AQL.

commit 42b2c31d1eddb6b2790d21d6aedfeb6c3892919f
Author: Michael Hackstein <michael@arangodb.com>
Date:   Wed May 11 11:10:08 2016 +0200

    Replaced EDGES() in Tests by the new corresponding usage of Path Pattern Matching

commit 110d1b497f7df4b94709bfd2149c72dbf4f28e8c
Author: Michael Hackstein <michael@arangodb.com>
Date:   Wed May 11 11:08:09 2016 +0200

    Fixed minor bugs in Cluster Path Pattern Matching. It did not react properly on Invalid user input.

commit 8f47a3a01c0928825c13ceba5f60c3e1fe5e4691
Author: Michael Hackstein <michael@arangodb.com>
Date:   Tue May 10 17:13:33 2016 +0200

    Removed unused AST reference in Index Lookups for Ast Conditions
2016-06-07 13:58:21 +02:00