1
0
Fork 0
Commit Graph

3720 Commits

Author SHA1 Message Date
jsteemann df3a3eff9f refactoring 2017-02-15 10:26:05 +01:00
jsteemann 01bf68549d simplifications 2017-02-14 22:48:51 +01:00
jsteemann bc080ae58f removed unused node type 2017-02-14 16:52:30 +01:00
jsteemann 12b973dc4b fix my compile errors 2017-02-14 16:41:31 +01:00
jsteemann 60e0b03b06 remove unused method 2017-02-14 16:23:07 +01:00
jsteemann 3ba6f1a1f5 Merge branch 'devel' of https://github.com/arangodb/arangodb into engine-api 2017-02-14 16:16:01 +01:00
jsteemann 8c9dd79aeb potential fixes for MSVC 2017-02-14 16:11:18 +01:00
jsteemann 0909ffe69b moved helper functions into their own file 2017-02-14 13:44:54 +01:00
jsteemann 80be198a39 moved helper classes into their own file 2017-02-14 12:35:34 +01:00
jsteemann 7e690a0c61 renaming 2017-02-13 15:18:40 +01:00
jsteemann eb73dbf960 renaming 2017-02-13 13:30:57 +01:00
jsteemann f09ec85127 renaming 2017-02-13 12:27:26 +01:00
jsteemann 8b273b5eaf Merge branch 'devel' of https://github.com/arangodb/arangodb into engine-api 2017-02-13 08:37:41 +01:00
jsteemann 1e78acad49 fix size_t vs uint64_t confusion 2017-02-10 23:43:47 +01:00
Michael Hackstein 48166a294c TraversalNode now does not know anything about EdgeIndexes any more. Removed isMMFilesEdgeIndex from Transaction, no obsolete 2017-02-10 18:18:23 +01:00
Michael Hackstein 07154391a2 Removed iteratorForSlice on Indexes and adapted index scan on transaction, because it can now only be used for ANY or ALL scans. 2017-02-10 15:47:24 +01:00
Simon Grätzer edab268572 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel
# Conflicts:
#	arangod/Aql/FunctionDefinitions.cpp
#	arangod/Aql/Functions.h
#	arangod/Utils/ExplicitTransaction.h
2017-02-10 15:21:24 +01:00
Michael Hackstein 6b5d4b1d3d Reimplemented EdgeCollectionInfo to use Ast Conditions instead of VelocyPack. 2017-02-10 15:11:36 +01:00
Michael Hackstein 16dda09b4a Preperation to remove knowledge of EdgeIndex from ShortestPathNode 2017-02-10 14:24:13 +01:00
jsteemann 103ceec2f5 Merge branch 'devel' of https://github.com/arangodb/arangodb into engine-api 2017-02-10 09:43:23 +01:00
jsteemann d024a6d00a remove logging for non-topics 2017-02-10 09:32:50 +01:00
jsteemann 05804be1a4 Merge branch 'devel' of https://github.com/arangodb/arangodb into engine-api 2017-02-09 17:53:34 +01:00
jsteemann b6218159c3 remove static_assert (thanks MSVC) 2017-02-09 17:42:38 +01:00
Michael Hackstein e13064e83b Merge branch 'engine-api' of github.com:arangodb/arangodb into engine-api 2017-02-09 17:15:51 +01:00
Michael Hackstein b43cf48252 Added a self-contained edge condition builder that allows to create AQL conditions without actually having an AQL query. The RestEdgesHandler uses it to serve requests for edges now. Removed undocumented endpoints PUT/POST /_api/edges as obsolete. 2017-02-09 17:15:42 +01:00
Max Neunhoeffer f5a22b18b3 Kill queries in registry at shutdown. 2017-02-09 16:54:13 +01:00
Max Neunhoeffer 6be0c909b6 Merge remote-tracking branch 'origin/devel' into maxtests 2017-02-09 14:39:51 +01:00
jsteemann 434fad5691 remove static_assert (thanks MSVC) 2017-02-09 13:39:01 +01:00
Max Neunhoeffer 298b9ffc3b Add AQLFeature. 2017-02-09 11:57:51 +01:00
Michael Hackstein fd7341bbfa Moved a generic Aql Edge Condition builder out of the TraversalNode. It shall be used for all edge queries on other places. 2017-02-09 10:35:41 +01:00
Michael Hackstein dfc9f29e69 Moved FunctionDefinitions to an AqlFunctionFeature. This now has a defined startup ordering 2017-02-08 15:45:59 +01:00
Michael Hackstein 7cec7a4628 Merge branch 'engine-api' of github.com:arangodb/arangodb into engine-api 2017-02-08 12:54:26 +01:00
jsteemann e75fe96546 try to fix compile warning 2017-02-08 09:33:01 +01:00
jsteemann 01d3ad67b1 Merge branch 'devel' of https://github.com/arangodb/arangodb into engine-api 2017-02-08 00:59:16 +01:00
jsteemann b76eeee92e reuse more AqlItemBlocks 2017-02-08 00:59:06 +01:00
jsteemann 59b3967273 Merge branch 'reuse-itemblocks' of https://github.com/arangodb/arangodb into engine-api 2017-02-07 20:25:48 +01:00
Simon Grätzer 9b9f91a81c Pegel: Adding support for "PREGEL_RESULT" in aql 2017-02-07 18:37:23 +01:00
Max Neunhoeffer 883c11ea45 Handle the case that ClusterComm is already shut down gracefully.
This touches every single place where ClusterComm is being used.
2017-02-07 15:31:40 +01:00
Michael Hackstein ebddba07ec Merge branch 'engine-api' of github.com:arangodb/arangodb into engine-api 2017-02-07 13:47:07 +01:00
jsteemann c8df58dcc6 Merge branch 'devel' of https://github.com/arangodb/arangodb into engine-api 2017-02-06 23:35:12 +01:00
jsteemann a3509aa041 centralize access to AqlItemBlocks memory management 2017-02-06 23:33:43 +01:00
jsteemann a7bc1ad213 use std::unique_ptr 2017-02-06 23:24:00 +01:00
jsteemann 4a15c16550 replace expensive std::deques with much simpler RollingVectors 2017-02-06 23:23:18 +01:00
Michael Hackstein a3aa963743 Merge branch 'engine-api' of github.com:arangodb/arangodb into engine-api 2017-02-06 17:44:53 +01:00
Michael Hackstein 44647f2392 Moved Fulltext and geo functions into MMFiles StorageEngine and allowed the engines to register specific functions. 2017-02-06 17:44:17 +01:00
jsteemann 6b3a4d1dc3 Merge branch 'devel' of https://github.com/arangodb/arangodb into engine-api 2017-02-06 15:48:54 +01:00
jsteemann 00dbf5aa9e Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2017-02-06 15:44:01 +01:00
jsteemann ba44acdcff simplify optimizer API a bit 2017-02-06 15:43:49 +01:00
Max Neunhoeffer 71dae630c3 Store ClusterComm singleton in shared_ptr. 2017-02-06 15:25:18 +01:00
jsteemann ab11410911 Merge branch 'devel' of https://github.com/arangodb/arangodb into engine-api 2017-02-06 13:05:11 +01:00
jsteemann 93426ca720 fix sorting issue in cluster 2017-02-06 09:44:33 +01:00
Michael Hackstein b3d457cd56 Merge branch 'devel' of github.com:arangodb/arangodb into engine-api 2017-02-05 15:01:58 +01:00
jsteemann c2671d7ba3 micro optimizations 2017-02-03 16:51:41 +01:00
Michael Hackstein 7083671116 Merge branch 'engine-api' of github.com:arangodb/arangodb into engine-api 2017-02-03 13:22:43 +01:00
Michael Hackstein 5e4b9e42b3 Fixed minor bugs in usage of callback-based index-api. Remove unused old next and nextBabies index iterator functions. 2017-02-03 13:22:06 +01:00
jsteemann 512672b3a4 make geo index work with nested attributes 2017-02-03 13:07:20 +01:00
jsteemann 819eeb18f9 don't tell GatherNode to sort data from an unsorted index 2017-02-03 11:47:52 +01:00
jsteemann 3c5edeb9b2 fix cluster AQL statistics 2017-02-03 11:47:36 +01:00
jsteemann 6e0da7929b simplify stats a bit 2017-02-03 11:47:09 +01:00
jsteemann f5a6818cdb don't tell GatherNode to sort data from an unsorted index 2017-02-03 11:17:56 +01:00
jsteemann 041da9685c Merge branch 'engine-api' of https://github.com/arangodb/arangodb into engine-api 2017-02-03 10:43:48 +01:00
jsteemann 950c3f40ad fix cluster AQL statistics 2017-02-03 10:43:40 +01:00
Michael Hackstein 08ff23492f Updated ShortestPathBlock to use the new callback based IndexApi 2017-02-02 15:51:54 +01:00
Michael Hackstein d5d22ca93e EnumerateCollectionBlock now uses callback to directly write indexoutput into AQLItemblock. 2017-02-02 14:41:33 +01:00
Michael Hackstein e8f621450c Merge branch 'engine-api' of github.com:arangodb/arangodb into engine-api 2017-02-02 12:38:20 +01:00
jsteemann 0e908a9617 simplify stats a bit 2017-02-02 10:21:03 +01:00
jsteemann 6b78f6c1ac fix negative value handling 2017-02-02 10:17:21 +01:00
jsteemann 0f80239a9d Merge branch 'devel' of https://github.com/arangodb/arangodb into engine-api 2017-02-02 08:40:30 +01:00
Michael Hackstein 364e07b164 Removed AQL::CollectionScanner. It can be drop-in replaced by OperationCursor 2017-02-01 20:57:44 +01:00
jsteemann 88518f6bf8 added "httpRequests" execution stats figure 2017-02-01 18:03:26 +01:00
jsteemann 4f1d588e0d Merge branch 'devel' of https://github.com/arangodb/arangodb into engine-api 2017-02-01 17:13:46 +01:00
jsteemann abc1bd4d66 use SmallVector optimization 2017-02-01 16:51:35 +01:00
Michael Hackstein 5f4027a75c Removed further unnecessary includes 2017-02-01 16:39:37 +01:00
Michael Hackstein 1a863f522b Removed unnecessary include and replaced by forward decl. 2017-02-01 16:35:11 +01:00
jsteemann fae1f7ba63 Merge branch 'devel' of https://github.com/arangodb/arangodb into engine-api 2017-02-01 13:00:34 +01:00
jsteemann c314f9190d added assertions 2017-02-01 11:44:30 +01:00
jsteemann fc4977157d fix static_assert in MSVC 2017-01-31 17:35:31 +01:00
jsteemann 600bd60edd fix MSVC compile warnings 2017-01-31 17:02:17 +01:00
jsteemann b8e1eb8d47 fix compile warnings in MSVC 2017-01-31 16:47:22 +01:00
jsteemann c62b952beb fixed class/struct confusion 2017-01-31 16:46:59 +01:00
jsteemann 62145baa2a Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2017-01-31 15:54:39 +01:00
Michael Hackstein e98c7d3b7c Merge branch 'devel' of github.com:arangodb/arangodb into devel 2017-01-31 15:31:25 +01:00
Michael Hackstein ef8ca78dfb Added more tests for traversal optimization. Fixed an crash-error when optimizing . 2017-01-31 15:30:59 +01:00
jsteemann fc5d7311b5 use general BlockCollector in all cases in which it is appropriate 2017-01-31 15:03:24 +01:00
Michael Hackstein 7ab8e823d6 Added a forgotten VPackBuilder.close() in Traversalnode to VPack. This caused the query planner to fail at certain cases 2017-01-31 14:33:10 +01:00
jsteemann 37b7a18040 Merge branch 'devel' of https://github.com/arangodb/arangodb into engine-api 2017-01-31 13:55:55 +01:00
jsteemann eec173c4ee optimize `IS_NULL(x)` to `x == null` 2017-01-31 12:17:35 +01:00
jsteemann 3c2a466c48 use block collector for IndexBlock 2017-01-31 12:16:53 +01:00
jsteemann 5cb4e3e685 Merge branch 'devel' of https://github.com/arangodb/arangodb into engine-api 2017-01-31 08:51:42 +01:00
Max Neunhoeffer 91c97d301a Lower timeout in query registry to 10min from 1h. 2017-01-30 23:59:46 +01:00
jsteemann d96ce9af37 Merge branch 'devel' of https://github.com/arangodb/arangodb into engine-api 2017-01-30 12:53:10 +01:00
jsteemann 802c384448 renaming 2017-01-30 09:02:57 +01:00
Michael Hackstein dcdc495c63 Fixed unintentially commited typo. 2017-01-27 19:30:26 +01:00
Michael Hackstein 2fe7a93f6e Improved TraversalCondition finder. It now does not crash anymore when filtering on TraverserOutput e.g. p.edges[0] == p.edges[1] and can make use of Array Indexes in certain cases. 2017-01-27 19:22:17 +01:00
Michael Hackstein 57b6174ff1 Merge branch 'devel' of github.com:arangodb/arangodb into devel 2017-01-27 17:57:21 +01:00
jsteemann 044499e454 added startup option --query.memory-limit 2017-01-27 17:33:57 +01:00
Michael Hackstein 9b5810d84b The TraversalConditionFinder will now normalize all filters, before checking if they are valid 2017-01-27 09:57:46 +01:00
Michael Hackstein f7ce2c9de6 Added a name to the dump indention variable. 2017-01-27 09:55:15 +01:00
Michael Hackstein ff4430f346 Intermediate version of TraversalConditionFinder. The checks weather a FILTER is feasable for optimization partly cleaned. Next step is complicated and dangerous. 2017-01-26 17:24:39 +01:00
jsteemann 0cb7d416d0 moved transaction collections into their own files 2017-01-26 16:51:57 +01:00
jsteemann 6a4842b229 Merge branch 'engine-api' of https://github.com/arangodb/arangodb into engine-api 2017-01-25 16:30:33 +01:00
jsteemann de41509d9d factored out TransactionState 2017-01-25 15:55:01 +01:00
Michael Hackstein 00448bfc26 Transaction::invokeOnAllElements now works with a callback taken DocumentIdentifierTokens instead of IndexElements. 2017-01-25 15:03:08 +01:00
Michael Hackstein 786ab413f8 Merge branch 'engine-api' of github.com:arangodb/arangodb into engine-api 2017-01-25 13:20:24 +01:00
Michael Hackstein ce6d3b3492 The Fulltext index now return DocumentIdentifierTokens instead of revisions. Removed one inderection rid <-> Index_doc which were a typedef. 2017-01-25 13:20:15 +01:00
jsteemann 00b1632ece factored out AccessMode from transaction.h 2017-01-25 11:57:21 +01:00
Michael Hackstein 883e95989f The GeoIndex now returns DocumentIdentifierTokens instead of revision ids. 2017-01-25 11:13:30 +01:00
Michael Hackstein 78b83eefc4 Renamed => getMoreMptr in OpCursor to getMoreTokens, Removed default Parameter 2017-01-25 10:46:37 +01:00
Michael Hackstein 2133b1448c Moved index API to return DocumentIdentifierTokens which are independent of the underlying storage engine. The agreement is, that the Engine gives a uint64_t sized identifier which allows to fetch any document back again. For MMFiles Engine this identifier is the revision. 2017-01-24 18:19:25 +01:00
jsteemann e3bcb90916 remove revisions cache 2017-01-24 10:48:07 +01:00
jsteemann c4d2ff3dce renaming 2017-01-23 15:36:11 +01:00
jsteemann 7fedb4e956 moved files into engine directory 2017-01-23 13:52:57 +01:00
Michael Hackstein 92ad574c97 Moved Indexes to StorageEngine 2017-01-23 13:32:23 +01:00
Michael Hackstein 8d16d101a2 Revert "Moved Indexes to StorageEngine"
This reverts commit c08716758a.
2017-01-23 13:18:26 +01:00
Michael Hackstein c08716758a Moved Indexes to StorageEngine 2017-01-23 13:16:42 +01:00
Michael Hackstein 3eaf53c0c9 Merge branch 'devel' of github.com:arangodb/arangodb into devel 2017-01-23 10:01:23 +01:00
Michael Hackstein 36e398f3f4 Fixed a bug with sort optimization in indexes. Also adapted tests. 2017-01-23 09:45:22 +01:00
jsteemann 3ba821d3f2 remove arbitrary and useless enum number values and let the compiler determine them 2017-01-19 16:20:46 +01:00
Max Neunhoeffer d038ba61e7 Implement attributePath access for SortElementVector and in GatherBlock.
Note: This is not yet used anywhere, so the changes should be entirely
neutral. We are going to use this in the optimizer rules
  scatterInClusterRule
and
  distributeInClusterRule
to make the GatherNode do a merge sort, if an index delivers sorted
streams of documents.
2017-01-18 15:32:59 +01:00
Kaveh Vahedipour 2d21b62007 agency compaction leaves last compaction-keep-size indices behind for reference 2017-01-17 12:15:18 +01:00
jsteemann feb954ca45 issue #2256 2017-01-12 12:20:11 +01:00
Mark 697962cb6c fixed windows compile errors 2017-01-10 14:10:14 +01:00
Wilfried Goesgens 8c39c975a4 improve error messages if FOR doesn't find proper values to work with 2017-01-10 13:17:04 +01:00
jsteemann fc1b913791 fixed some issues found by coverity build tool 2017-01-09 12:39:04 +01:00
jsteemann 3690f3c92e some more optimizations for arithmetic calculations 2017-01-06 11:01:16 +01:00
jsteemann 62aeddee6a speed up memory management 2017-01-02 13:39:27 +01:00
jsteemann 9dce58e418 slightly speed up conditions optimizer 2017-01-02 12:29:28 +01:00
jsteemann 0d14b52b69 fixed issue #2234 2017-01-02 09:19:15 +01:00
jsteemann 7a81798771 allow simplified ternary operator syntax 2016-12-28 21:34:55 +01:00
jsteemann b3309d62db added noexcept 2016-12-27 18:43:08 +01:00
jsteemann f9ca4d2a85 save some more heap allocations 2016-12-27 13:56:19 +01:00
jsteemann fd44f2e493 micro optimizations 2016-12-27 13:44:19 +01:00
jsteemann 8856caf875 micro optimizations for geo index 2016-12-20 15:53:49 +01:00
Jan Christoph Uhde 9ecd4665c7 distinguish between less and less equal in geoindex filter conditions 2016-12-20 12:15:58 +01:00
jsteemann 09dc22860e properly clean up 2016-12-20 08:45:17 +01:00
Jan Christoph Uhde 822200ae2c now use traverseAndModify to remove the condition in filter expressions 2016-12-19 14:32:11 +01:00
Jan Christoph Uhde e83ac6e8b9 delete ast node instead of replacing it with true
in some cases.
2016-12-19 12:30:47 +01:00
Jan Christoph Uhde 74cc50bc1a Merge branch 'obi-geo-index' into devel
* obi-geo-index: (49 commits)
  add missing line
  remove debug code
  only do not use geoindex in inner loop if we want to sort
  manually cloning fixes the issue
  another try to fix the plan
  add dump of ExectionPlan.
  add debugging info for geoindex
  better tests
  add tests - sort && filter and add check for IndexNodes
  partial rewrite - now we start at endnodes
  add link to geo-index doc to sourcefile to clarify goals
  move collection acccesspath check to identify section
  prepare to fix filter-sort
  check if nodes are really sorted
  fix geo-index for cluster case
  add cluster to .gitignore
  work on geo-index in cluster
  fixes
  avoid use of geo-index-rule in cases where it could yield an invalid result
  back to performance
  ...

Conflicts:
	arangod/Aql/OptimizerRules.cpp
2016-12-19 11:40:01 +01:00
Jan Christoph Uhde 49fba88487 add missing line 2016-12-19 11:33:45 +01:00
Jan Christoph Uhde 5234ac3621 Squashed commit of the following:
commit 3952bf2009
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date:   Mon Dec 19 11:00:52 2016 +0100

    remove debug code

commit 004da0c614
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date:   Mon Dec 19 10:52:42 2016 +0100

    only do not use geoindex in inner loop if we want to sort

commit 32e1c7eac4
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date:   Mon Dec 19 09:16:09 2016 +0100

    manually cloning fixes the issue

commit 75823fe879
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date:   Fri Dec 16 15:19:10 2016 +0100

    another try to fix the plan

commit 2a404cfabe
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date:   Wed Dec 14 12:21:21 2016 +0100

    add dump of ExectionPlan.

    Index Node seems to be created!

commit 0f8b496c57
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date:   Wed Dec 14 10:46:24 2016 +0100

    add debugging info for geoindex

commit 3d17672feb
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date:   Tue Dec 13 17:03:01 2016 +0100

    better tests

commit 615b85e5f5
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date:   Tue Dec 13 16:09:00 2016 +0100

    add tests - sort && filter and add check for IndexNodes

commit e5fcdb7386
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date:   Tue Dec 13 15:53:44 2016 +0100

    partial rewrite - now we start at endnodes

    and work upward towards singleton node

commit 7d93fe0bdd
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date:   Tue Dec 13 11:48:40 2016 +0100

    add link to geo-index doc to sourcefile to clarify goals

commit aac38c8a00
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date:   Tue Dec 13 11:42:49 2016 +0100

    move collection acccesspath check to identify section

    so we can compare nodes

commit b8cc674219
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date:   Tue Dec 13 10:59:02 2016 +0100

    prepare to fix filter-sort

commit 783a9aff89
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date:   Mon Dec 12 16:24:52 2016 +0100

    check if nodes are really sorted

commit 1d5e28d969
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date:   Mon Dec 12 15:36:43 2016 +0100

    fix geo-index for cluster case

commit 634eeabc0b
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date:   Mon Dec 12 13:46:20 2016 +0100

    add cluster to .gitignore

commit ae33a790fb
Merge: 1acfd65 27099a1
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date:   Mon Dec 12 13:31:54 2016 +0100

    Merge branch 'devel' into obi-geo-index

    * devel:
      Clarify the default value of req.body
      fix VS warning
      moveShard jobs running
      cppcheck
      cppcheck

commit 1acfd65467
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date:   Mon Dec 12 13:30:38 2016 +0100

    work on geo-index in cluster

commit 32d0bdc846
Merge: b660672 ad4ba24
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date:   Mon Dec 12 09:15:36 2016 +0100

    Merge branch 'devel' of github.com:arangodb/arangodb into obi-geo-index

    * 'devel' of github.com:arangodb/arangodb: (132 commits)
      try to fix travis build
      Generate unique Swagger operationIds
      Add support for Swagger tags
      Add swagger route to Foxx API
      Require at least one arg in route def
      ported velocypack compatibility fix from arangodb/velocypack
      use bulk allocator for index elements
      fix memleak
      fix test in cluster
      remove unused code
      fixed resilience
      Update zwagger
      Readd satellite node
      Fix link
      Document OAuth1
      Nicer OAuth2 docs
      properly start the tarball
      fix VS compile errors
      clones method in Jobs more useful
      we don't need the dpkg-shlibdeps workaround anymore.
      ...

commit b6606727ee
Author: jsteemann <jan@arangodb.com>
Date:   Thu Dec 8 11:13:10 2016 +0100

    fixes

commit 5416755049
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date:   Wed Dec 7 15:06:44 2016 +0100

    avoid use of geo-index-rule in cases where it could yield an invalid result

commit 3e24624c6e
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date:   Tue Dec 6 15:56:22 2016 +0100

    back to performance

commit a941808ea8
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date:   Tue Dec 6 10:29:38 2016 +0100

    remove debug code for performance testing

commit 2bae135b84
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date:   Tue Dec 6 10:12:12 2016 +0100

    add test case

commit 71be8c215a
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date:   Tue Dec 6 10:00:11 2016 +0100

    node replacement is now working

commit d1a3e4482d
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date:   Mon Dec 5 20:18:31 2016 +0100

    condition replace should be almost working

commit 275e36b603
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date:   Mon Dec 5 19:49:10 2016 +0100

    add pointer that needs to be replaced with true

    in sort or filter condition

commit 6b93b9d2eb
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date:   Mon Dec 5 19:38:01 2016 +0100

    bring functions in correct order

commit 5aabbb0ac0
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date:   Mon Dec 5 16:21:21 2016 +0100

    fix const-ness so the condition can be modiefied

commit c84223d598
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date:   Mon Dec 5 15:31:50 2016 +0100

    Add information if AstNode has been found in subexpression

    this information can be used in rewriting the condition and deciding
    if a sort node can be deleted or not

commit b0b660eb85
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date:   Mon Dec 5 15:19:06 2016 +0100

    add iterative preorder walk for and conditions

commit 5dcf61c9ba
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date:   Mon Dec 5 14:00:14 2016 +0100

    now work to a certain degree with binaray/naray-and in FILTER/SORT
    condition

commit 9b4e01eb3b
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date:   Mon Dec 5 13:17:01 2016 +0100

    move geoIndexRule to a positon before inexes have been touched by
    optimizer

commit 9d04b37e58
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date:   Mon Dec 5 12:46:23 2016 +0100

    within queries are now working

commit d858b9aa71
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date:   Fri Dec 2 16:15:23 2016 +0100

    further implement within

commit 72d4790c68
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date:   Fri Dec 2 12:22:07 2016 +0100

    remove boost::optional and make use of nodetype

commit e0220be12d
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date:   Fri Dec 2 11:53:31 2016 +0100

    stronger split between identification of candidates and application of geo index rule

commit f27a22db06
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date:   Fri Dec 2 11:20:09 2016 +0100

    fix debug code

commit fab9af483e
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date:   Fri Dec 2 11:00:39 2016 +0100

    add extra log topic for development

commit 56b6be851c
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date:   Fri Dec 2 10:44:42 2016 +0100

    add functions providing capability to check ast for parts of geoindex
    rules

commit 08ef943c83
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date:   Thu Dec 1 23:01:50 2016 +0100

    fix tests

commit 56614ac8c8
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date:   Thu Dec 1 16:30:09 2016 +0100

    switch unittests to chai and add failing test for FILTER condition

commit 8bb719c615
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date:   Thu Dec 1 15:59:10 2016 +0100

    add first tests for geoindex

commit e619ef3e4e
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date:   Thu Dec 1 12:21:51 2016 +0100

    now inspect sort and filter nodes

commit 5dbf5e14e3
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date:   Thu Dec 1 10:03:24 2016 +0100

    refactor geoOptimization into smaller fucntions

    this prepares the creation of the within rules

commit 2110736d36
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date:   Wed Nov 30 16:50:02 2016 +0100

    fix logical error in nextBabies

commit 972af3af4c
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date:   Wed Nov 30 15:44:46 2016 +0100

    add within to geoindex iterator

commit 80c89d5f97
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date:   Wed Nov 30 15:25:11 2016 +0100

    geo condition is now build with a extra parameter for within

commit 8bafcdfe92
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date:   Wed Nov 30 14:10:16 2016 +0100

    GeoIndexIterator now takes parameters via ConditionNode

commit 86c21eb733
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date:   Tue Nov 29 14:13:35 2016 +0100

    make use of geo index cursor api

commit 5b3be69e10
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date:   Tue Nov 29 11:48:32 2016 +0100

    WIP first working version of geoindex via aql
2016-12-19 11:06:32 +01:00
Jan Christoph Uhde 3952bf2009 remove debug code 2016-12-19 11:00:52 +01:00
Jan Christoph Uhde 004da0c614 only do not use geoindex in inner loop if we want to sort 2016-12-19 10:52:42 +01:00
Jan Christoph Uhde 32e1c7eac4 manually cloning fixes the issue 2016-12-19 10:02:02 +01:00
Jan Christoph Uhde 75823fe879 another try to fix the plan 2016-12-16 15:19:10 +01:00
jsteemann 10398b2977 speeds up some use cases of AQL CONTAINS 2016-12-14 12:22:30 +01:00
Jan Christoph Uhde 2a404cfabe add dump of ExectionPlan.
Index Node seems to be created!
2016-12-14 12:21:21 +01:00
Jan Christoph Uhde 0f8b496c57 add debugging info for geoindex 2016-12-14 10:46:24 +01:00
Jan Christoph Uhde 3d17672feb better tests 2016-12-13 17:03:01 +01:00
jsteemann 4d76ef962b added count(details = true) for sharded collections 2016-12-13 16:03:49 +01:00
Jan Christoph Uhde e5fcdb7386 partial rewrite - now we start at endnodes
and work upward towards singleton node
2016-12-13 15:53:44 +01:00
Jan Christoph Uhde 7d93fe0bdd add link to geo-index doc to sourcefile to clarify goals 2016-12-13 13:20:48 +01:00
Jan Christoph Uhde aac38c8a00 move collection acccesspath check to identify section
so we can compare nodes
2016-12-13 11:42:49 +01:00
Jan Christoph Uhde b8cc674219 prepare to fix filter-sort 2016-12-13 10:59:02 +01:00
jsteemann ac48dbec14 optimization for ItemBlock serialization 2016-12-13 10:00:28 +01:00
jsteemann 12a819fee0 optimizations for AqlValue serialization and deserialization 2016-12-12 20:53:25 +01:00
jsteemann b96897e296 fixed some issues detected by coverity build tool 2016-12-12 15:41:54 +01:00
Jan Christoph Uhde 1d5e28d969 fix geo-index for cluster case 2016-12-12 15:36:43 +01:00
Jan Christoph Uhde 1acfd65467 work on geo-index in cluster 2016-12-12 13:30:38 +01:00
Jan Christoph Uhde 32d0bdc846 Merge branch 'devel' of github.com:arangodb/arangodb into obi-geo-index
* 'devel' of github.com:arangodb/arangodb: (132 commits)
  try to fix travis build
  Generate unique Swagger operationIds
  Add support for Swagger tags
  Add swagger route to Foxx API
  Require at least one arg in route def
  ported velocypack compatibility fix from arangodb/velocypack
  use bulk allocator for index elements
  fix memleak
  fix test in cluster
  remove unused code
  fixed resilience
  Update zwagger
  Readd satellite node
  Fix link
  Document OAuth1
  Nicer OAuth2 docs
  properly start the tarball
  fix VS compile errors
  clones method in Jobs more useful
  we don't need the dpkg-shlibdeps workaround anymore.
  ...
2016-12-12 09:15:36 +01:00
jsteemann f0a4d69b69 use bulk allocator for index elements 2016-12-09 21:40:49 +01:00
Andreas Streichardt 283cf53a83 Readd satellite node 2016-12-09 15:30:03 +01:00
jsteemann 350da367bd fixes for Visual Studio 2016-12-08 17:32:46 +01:00
Andreas Streichardt 29e3c1487e Make satellite wait sync configurable 2016-12-08 16:49:51 +01:00
jsteemann b6606727ee fixes 2016-12-08 11:13:10 +01:00
Andreas Streichardt 82682f8d25 Wait for synchronous replication to settle 2016-12-07 18:38:15 +01:00
Andreas Streichardt c10f600ac7 Fix potential race 2016-12-07 18:38:14 +01:00
Jan Christoph Uhde 5416755049 avoid use of geo-index-rule in cases where it could yield an invalid result 2016-12-07 15:06:44 +01:00
Jan Steemann d2742f2ef3 fixed issue #2210 2016-12-07 12:29:05 +01:00
Andreas Streichardt 11bd9381d5 Add satellite collections 2016-12-06 16:40:50 +01:00
Jan Christoph Uhde 3e24624c6e back to performance 2016-12-06 15:56:22 +01:00
jsteemann 10dcca7c77 fixed compile warnings 2016-12-06 14:34:14 +01:00
jsteemann 369b2c7bc6 added optional memory limit for AQL queries 2016-12-06 13:23:41 +01:00
Jan Christoph Uhde a941808ea8 remove debug code for performance testing 2016-12-06 10:29:38 +01:00
Jan Christoph Uhde 71be8c215a node replacement is now working 2016-12-06 10:00:11 +01:00
Jan Christoph Uhde d1a3e4482d condition replace should be almost working 2016-12-05 20:18:31 +01:00
Jan Christoph Uhde 275e36b603 add pointer that needs to be replaced with true
in sort or filter condition
2016-12-05 19:49:10 +01:00
Jan Christoph Uhde 6b93b9d2eb bring functions in correct order 2016-12-05 19:38:01 +01:00
Jan Christoph Uhde 5aabbb0ac0 fix const-ness so the condition can be modiefied 2016-12-05 16:21:21 +01:00
Jan Christoph Uhde c84223d598 Add information if AstNode has been found in subexpression
this information can be used in rewriting the condition and deciding
if a sort node can be deleted or not
2016-12-05 15:31:50 +01:00
Jan Christoph Uhde b0b660eb85 add iterative preorder walk for and conditions 2016-12-05 15:19:06 +01:00
Jan Christoph Uhde 5dcf61c9ba now work to a certain degree with binaray/naray-and in FILTER/SORT
condition
2016-12-05 14:00:14 +01:00
Jan Christoph Uhde 9b4e01eb3b move geoIndexRule to a positon before inexes have been touched by
optimizer
2016-12-05 13:17:01 +01:00
Jan Christoph Uhde 9d04b37e58 within queries are now working 2016-12-05 12:46:23 +01:00
Jan Christoph Uhde d858b9aa71 further implement within 2016-12-02 16:15:23 +01:00
jsteemann 2aa414f731 fixed issue #2204 2016-12-02 13:59:48 +01:00
Jan Christoph Uhde 72d4790c68 remove boost::optional and make use of nodetype 2016-12-02 12:22:07 +01:00
Jan Christoph Uhde e0220be12d stronger split between identification of candidates and application of geo index rule 2016-12-02 11:53:31 +01:00
Jan Christoph Uhde f27a22db06 fix debug code 2016-12-02 11:20:09 +01:00
Jan Christoph Uhde 56b6be851c add functions providing capability to check ast for parts of geoindex
rules
2016-12-02 10:44:42 +01:00
Jan Christoph Uhde 56614ac8c8 switch unittests to chai and add failing test for FILTER condition 2016-12-01 16:30:09 +01:00
Jan Christoph Uhde 8bb719c615 add first tests for geoindex 2016-12-01 15:59:10 +01:00
Jan Christoph Uhde e619ef3e4e now inspect sort and filter nodes 2016-12-01 12:21:51 +01:00
Michael Hackstein bd7bb84994 Fixed wording in comment. 2016-12-01 10:36:59 +01:00
Michael Hackstein 9b056479e1 Minor code-smell fix. 2016-12-01 10:36:08 +01:00
Jan Christoph Uhde 5dbf5e14e3 refactor geoOptimization into smaller fucntions
this prepares the creation of the within rules
2016-12-01 10:28:40 +01:00
Jan Christoph Uhde 80c89d5f97 geo condition is now build with a extra parameter for within 2016-11-30 15:25:11 +01:00
Jan Christoph Uhde 8bafcdfe92 GeoIndexIterator now takes parameters via ConditionNode 2016-11-30 14:10:16 +01:00
Jan Christoph Uhde 5b3be69e10 WIP first working version of geoindex via aql 2016-11-29 11:48:32 +01:00
Michael Hackstein 7aea35e444 Fixed a bug when using a skiplist index in traversals like: [a, unused, _from]. If unused is not part of the condition the traverser ran into undef behaviour. 2016-11-29 10:01:34 +01:00
Jan Christoph Uhde e67296cc6e Merge branch 'obi-geo-index' into devel
* obi-geo-index:
  prepare merge with devel
  WIP: delete SortNode and replace EnumerateCollectionNode with IndexNode
  add todos and more description of what is going on
  avoid 3 copies
  check if index node has geoindex and if the access paths match
  implement parts of the geoindex optimizer rule
  add geo index rule
2016-11-28 16:03:29 +01:00