1
0
Fork 0
Commit Graph

3696 Commits

Author SHA1 Message Date
jsteemann 09919cfc36 fixed issue #2320 2017-02-23 10:14:42 +01:00
jsteemann 6c4ecf28aa also sanitize vpack custom types when sending vpack data to clients 2017-02-23 10:12:20 +01:00
Frank Celler e4da3d3948 allow passing of define USE_PLAN_CACHE in flags 2017-02-22 09:03:07 +01:00
jsteemann 99ea3c37bb attempt to fix broken AQL in cluster 2017-02-21 18:08:35 +01:00
jsteemann 04bc8124c3 try to fix crash 2017-02-21 17:33:22 +01:00
jsteemann def25b304a fix compile warning 2017-02-21 17:32:54 +01:00
jsteemann 9f7defa7de fix plan cache 2017-02-21 13:43:47 +01:00
jsteemann deb0ff1110 fix stringification of keys with _id type 2017-02-21 13:43:07 +01:00
jsteemann 511d0b29c7 deactive plan cache as final step before merge 2017-02-21 13:06:34 +01:00
jsteemann ed3a230939 some final cleanup 2017-02-21 13:04:24 +01:00
jsteemann c0c9fa4b19 Merge branch 'devel' of https://github.com/arangodb/arangodb into plan-cache 2017-02-21 12:18:55 +01:00
jsteemann f5c8932744 initial version of query execution plan cache, still very rough 2017-02-21 11:58:38 +01:00
jsteemann 12f1a7af29 fixed issue #2315 2017-02-21 09:11:50 +01:00
jsteemann 8ce7f6558d simplifications 2017-02-20 09:51:40 +01:00
Michael Hackstein fea2dbad79 Fixed compiler warning in Query.cpp 2017-02-20 09:21:54 +01:00
jsteemann be8d6b0a9e simplifications 2017-02-17 20:55:52 +01:00
Michael Hackstein 92f52b13d3 Merge branch 'engine-api' of github.com:arangodb/arangodb into engine-api 2017-02-17 17:29:53 +01:00
Michael Hackstein 91f303e963 Removed readRevision from LogicalCollection. You only get readDocument with a token. Moved it's logic into MMFilesCollection. removed the ignoreWal parameter from readDocumentConditional. It was always true anyways... 2017-02-17 17:29:49 +01:00
jsteemann ea87cc52b7 simplifications 2017-02-17 17:10:13 +01:00
jsteemann 535eca3ae0 make ctor explicit 2017-02-17 15:56:55 +01:00
jsteemann 10ddb52964 remove unused property 2017-02-17 15:41:45 +01:00
jsteemann c652a313da Merge branch 'devel' of https://github.com/arangodb/arangodb into engine-api 2017-02-17 14:03:59 +01:00
Jan Christoph Uhde 6ac5aa9691 fix spelling 2017-02-16 13:39:15 +01:00
jsteemann a09d13168d removed now unused declaration 2017-02-16 10:30:26 +01:00
jsteemann 089ff78d2d moved collection lock state into its own struct 2017-02-16 10:27:14 +01:00
jsteemann d49c5c3fc0 simplified internal APIs a bit 2017-02-15 12:42:07 +01:00
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