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