1
0
Fork 0
Commit Graph

7043 Commits

Author SHA1 Message Date
Michael Hackstein 2cbfce5cc2 Added CXX implementations for ABS, CEIL, FLOOR, SQRT 2015-10-30 10:26:52 +01:00
Jan Steemann c98eae05e1 use indexes in more cases 2015-10-30 10:12:26 +01:00
Michael Hackstein d7bbd1e9e2 Removed temporary allowPartialIndex from IndexInformation. This is an internal variable and should never bother the user 2015-10-30 09:25:21 +01:00
Wilfried Goesgens 9c3402876d Now we know to filter for conditions that we can't analyze. 2015-10-29 17:48:46 +01:00
Wilfried Goesgens a05e96b508 these AST-nodes are optional. 2015-10-29 17:47:36 +01:00
Wilfried Goesgens bb9039c855 Merge branch 'devel' of github.com:arangodb/ArangoDB into JHMH 2015-10-29 16:01:01 +01:00
Jan Steemann 9aa1ba1f68 potential fix for ::stringify() 2015-10-29 15:58:47 +01:00
Michael Hackstein cc35fdb7b0 Added the implementation and more tests for EDGES in CXX only 2015-10-29 15:52:46 +01:00
Wilfried Goesgens ba159428be Implement function to find all variable references in an expression. 2015-10-29 13:29:21 +01:00
Jan Steemann 581521949e Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2015-10-29 11:57:34 +01:00
Jan Steemann 01499dde43 added deadlock detection for lazy locking of collections 2015-10-29 11:57:22 +01:00
Michael Hackstein 82424a4623 Merge branch 'devel' of github.com:arangodb/arangodb into devel 2015-10-29 09:51:39 +01:00
Michael Hackstein e2d8bb2094 Added an additional assertion for nullptr in orderDitch. It was asserted on a subattribute of collection but never on collection itself 2015-10-29 09:51:30 +01:00
Michael Hackstein 6552c73d25 Added a CXX implementation of DOCUMENT 2015-10-29 09:50:40 +01:00
jsteemann 733a3000b7 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2015-10-28 21:43:08 +01:00
jsteemann cd745f3266 order ditches 2015-10-28 21:43:02 +01:00
Michael Hackstein 293bdf4458 Implemented a CXX version of MINUS 2015-10-28 17:29:51 +01:00
Michael Hackstein 18d72e526c Fixed memleak in ZIP 2015-10-28 16:45:47 +01:00
Michael Hackstein d8d37a3bd5 Added a CXX implementation for PARSE_IDENTIFER 2015-10-28 16:02:15 +01:00
Michael Hackstein 66ae927e3c Added a CXX implementation of ZIP. Made the CXX implementation of FLATTEN more relaxed. It now works with invalid maxDepth entries and falls-back to 1 there 2015-10-28 15:06:22 +01:00
Michael Hackstein 9e98d5b87b Added CXX implementation of FLATTEN incl tests. 2015-10-28 14:10:03 +01:00
Wilfried Goesgens 327b408a22 Start implementing early filtering of paths to exclude from the result 2015-10-28 12:37:13 +01:00
Wilfried Goesgens 5ef165a245 Autogenerated file. 2015-10-28 12:36:35 +01:00
Jan Steemann 31cacfb9f9 do not allow remaining in already-deleted database with _useDatabase() 2015-10-28 11:22:58 +01:00
Wilfried Goesgens 951165ab1e Merge branch 'devel' of github.com:arangodb/ArangoDB into JHMH
Conflicts:
	arangod/Aql/grammar.cpp
	arangod/Aql/grammar.h
	js/common/modules/org/arangodb/graph-examples/example-graph.js
2015-10-28 11:08:18 +01:00
jsteemann 5fff134c80 added CXX implementations of `WITHIN` and `NEAR` AQL functions 2015-10-27 23:24:00 +01:00
Michael Hackstein 021eb6ae4b Merge branch 'devel' of github.com:arangodb/arangodb into devel 2015-10-27 16:36:33 +01:00
Michael Hackstein c655cbc65f The cluster will not ask any other index than Skiplist or Hash if it can serve for condition. All others can only be used by functions and use different ways. 2015-10-27 16:36:19 +01:00
Jan Steemann da8519b1a2 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2015-10-27 16:16:57 +01:00
Jan Steemann 63bebc4fe2 index printing 2015-10-27 16:16:46 +01:00
Michael Hackstein 58cd64639b Merge branch 'devel' of github.com:arangodb/arangodb into devel 2015-10-27 14:19:14 +01:00
Michael Hackstein a94eb7fd49 In an array index with subattributes the document will be indexed with null if it has the array, but the subattribute is not existing. And it will not be indexed if it does not have the array 2015-10-27 14:19:06 +01:00
Michael Hackstein d7f3ca496d The Array Index now allows to query for null IN in sparse version 2015-10-27 13:00:49 +01:00
Jan Steemann 3c4655124a Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2015-10-27 11:16:19 +01:00
Jan Steemann d73a5b7ff7 fixed logic error in replication dump function 2015-10-27 11:16:03 +01:00
Jan Steemann 67d033c8b2 fixed segfault with string collection names 2015-10-27 11:14:52 +01:00
Michael Hackstein 52e372ab27 Added some more Array Indexing tests. And improved the pathbased index. Now it is checked when trying to array-index a non-array value. And if non existing attributes are added to the index or not. 2015-10-27 11:14:02 +01:00
Michael Hackstein d9eb549335 Merge branch 'devel' of github.com:arangodb/arangodb into devel 2015-10-26 17:22:06 +01:00
Michael Hackstein 817c9827e1 Added tests for Array-Indexing non Array elements. It should allow partial indexing in the skiplist and forbid indexing in the hash index now. 2015-10-26 17:22:01 +01:00
Jan Steemann 970c5a7e52 fixed SSL shutdown issue 2015-10-26 17:21:21 +01:00
Wilfried Goesgens 36f289ea16 We picked the Executionnode from the plan to a local variable, we can use it later on. 2015-10-26 13:52:32 +01:00
Wilfried Goesgens d113f2e17a We picked the Executionnode from the plan to a local variable, we can use it later on. 2015-10-26 13:51:35 +01:00
Michael Hackstein c35ccc02d5 Fixed unique-constrain-violated behaviour in SkiplistIndex 2015-10-26 09:28:14 +01:00
Frank Celler 4b99be0c30 added --enable-console to configure 2015-10-25 19:59:16 +01:00
Jan Steemann 3cf1b237ee dfdb improvements 2015-10-23 19:03:24 +02:00
Jan Steemann ad068ce49f Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2015-10-23 17:23:11 +02:00
Jan Steemann 50d5176adf potential fix for unique index constraint violation with array indexes 2015-10-23 17:22:37 +02:00
Max Neunhoeffer e6a81de395 Merge branch 'devel' of ssh://github.com/ArangoDB/ArangoDB into devel 2015-10-23 16:45:37 +02:00
Max Neunhoeffer cc45a0d352 Implement role switching. 2015-10-23 16:45:21 +02:00
Jan Steemann 025e470e3b added a single-array parameter variant for the AQL MERGE function 2015-10-23 15:29:53 +02:00
Jan Steemann 56ea700546 fixed parse error 2015-10-23 13:27:36 +02:00
Michael Hackstein d478f8dcc9 Merge branch 'devel' of github.com:arangodb/arangodb into devel 2015-10-23 12:50:02 +02:00
Michael Hackstein 0a175a4271 Removed getOne in SimpleAttribute Matcher. All of the attributes are in sorted order rendering getOne and getAny useless 2015-10-23 12:49:57 +02:00
Jan Steemann e2136ea21a do not allow index creation with multiple [*] in single attribute 2015-10-23 11:45:17 +02:00
jsteemann fad9782a4a removed unused functions 2015-10-23 01:22:41 +02:00
jsteemann 058fec96f6 removed some dependencies 2015-10-23 00:15:07 +02:00
Jan Steemann ec7bb3e820 fix for Windows build 2015-10-22 18:41:13 +02:00
Jan Steemann 66f3840563 attempt to fix leak 2015-10-22 18:24:35 +02:00
Jan Steemann 8751ee2866 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2015-10-22 18:03:32 +02:00
Jan Steemann 03da10bb51 attempt to fix failing Windows build 2015-10-22 18:03:07 +02:00
Jan Steemann 49d8e94daf added includes 2015-10-22 17:26:22 +02:00
Jan Steemann d428aeca93 fix some Visual Studio complaints 2015-10-22 17:23:21 +02:00
Jan Steemann 5a190d1110 fixed leaks, index speedup 2015-10-22 17:03:05 +02:00
Michael Hackstein 3af1f80dc9 Merge branch 'devel' of github.com:arangodb/arangodb into devel 2015-10-22 16:23:05 +02:00
Michael Hackstein c3c57d26a0 Improved skip in Enumerate collection 2015-10-22 16:22:56 +02:00
Frank Celler b7de227138 removed readline 2015-10-22 15:41:33 +02:00
Jan Steemann 07aa9a7daf Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2015-10-22 14:12:00 +02:00
Jan Steemann 0fee6fd856 attempt to speed up index queries 2015-10-22 14:11:54 +02:00
Jan Steemann 4dde92470f attempt to speed up index queries 2015-10-22 14:11:27 +02:00
Wilfried Goesgens e9928de21b start to fix graph implementation for explain() 2015-10-22 13:05:13 +02:00
Michael Hackstein 7ea4130103 Fixed array indexing if the attribute is not set 2015-10-22 12:13:47 +02:00
Wilfried Goesgens cd6cc35def Adjust the stage to the now non-void pointered index implementation. 2015-10-22 11:12:21 +02:00
Jan Steemann 35f01d1959 fixed assertion failure when trying to optimize multiple INs with OR 2015-10-21 17:41:57 +02:00
Michael Hackstein f083fc3b66 Added AQL failure tests for EdgeIndex and PrimaryIndex 2015-10-21 16:29:14 +02:00
Michael Hackstein 9fd375d684 Removed debug output 2015-10-21 15:45:11 +02:00
Michael Hackstein 383912a221 Added failure tests for SimpleAttributeEqualityMatcher 2015-10-21 15:16:55 +02:00
Michael Hackstein e828984837 Merge branch 'devel' of github.com:arangodb/arangodb into devel 2015-10-21 15:05:53 +02:00
Michael Hackstein afa7f8a2e3 Added failure tests for HashIndex. Now start with AttributeEqualityMatcher. 2015-10-21 15:00:58 +02:00
Jan Steemann 0d2197e77f changed documentation for index creation methods 2015-10-21 14:59:45 +02:00
Wilfried Goesgens dae95de667 Merge branch 'devel' of github.com:arangodb/ArangoDB into JHMH 2015-10-21 14:54:01 +02:00
Michael Hackstein 9a58955208 Added failure tests for SkiplistIndex 2015-10-21 13:57:00 +02:00
Michael Hackstein e13ddcf7b2 Merge branch 'aql-jmmh-conditions' of github.com:arangodb/arangodb into aql-jmmh-conditions 2015-10-21 12:55:16 +02:00
Michael Hackstein 7fb4679fb2 Added some failure tests for the IndexNode, ConditionFinder. Todo Index tests 2015-10-21 12:54:25 +02:00
Jan Steemann ba95ddf228 fixed cluster behavior 2015-10-21 12:12:08 +02:00
Jan Steemann 509ab83ed5 Merge branch 'devel' of https://github.com/arangodb/arangodb into aql-jmmh-conditions 2015-10-21 10:18:16 +02:00
Jan Steemann 56973d196e change to eventual write lock 2015-10-20 18:43:59 +02:00
Jan Steemann 8264c4db87 Merge branch 'aql-jmmh-conditions' of https://github.com/arangodb/arangodb into aql-jmmh-conditions 2015-10-20 18:11:12 +02:00
Jan Steemann aa3039cece fixes for cluster tests 2015-10-20 18:10:53 +02:00
Michael Hackstein 596d215a32 Fixed Sparse Skiplist indexes. They were used for e.g.: null IN x.a. Added the queries-array to test makefile 2015-10-20 17:18:17 +02:00
Michael Hackstein f181f62b9d Fixed usage of IN operator 2015-10-20 15:54:38 +02:00
Jan Steemann 60283f13b9 fixed memleaks 2015-10-20 12:05:52 +02:00
Jan Steemann b28393e458 cleanup 2015-10-20 11:44:01 +02:00
Jan Steemann e16c981d57 permute skiplist index conditions in other order 2015-10-19 18:55:08 +02:00
Jan Steemann 164f9c9a1c fixed some tests 2015-10-19 17:48:10 +02:00
Jan Steemann e2d97e623f merge multiple ORs 2015-10-19 17:28:43 +02:00
Michael Hackstein 4ceb10dc19 Index can now be used for sorting if only parts of the attributes are covered. The more attribitues are covered the more likely this index will be used 2015-10-19 16:59:13 +02:00
Jan Steemann eecb6a9949 Merge branch 'aql-jmmh-conditions' of https://github.com/arangodb/arangodb into aql-jmmh-conditions 2015-10-19 15:36:17 +02:00
Jan Steemann 663a92567b updated replace-or-with-in optimizer rule 2015-10-19 15:36:04 +02:00
Michael Hackstein 3a3ab872f0 Fixed internal error for plan instantiation if the condition is empty 2015-10-19 15:09:59 +02:00
Jan Steemann a169d872b1 sort conditions with INs 2015-10-19 13:27:20 +02:00
Jan Steemann 5babaefadc disable MSVC warning about long names 2015-10-19 12:56:14 +02:00
Jan Steemann 38c852cfc8 Merge branch 'aql-jmmh-conditions' of https://github.com/arangodb/arangodb into aql-jmmh-conditions 2015-10-19 12:45:57 +02:00
Jan Steemann 81cd1e9f62 fixed Windows compile issues 2015-10-19 12:43:11 +02:00
Michael Hackstein 4a8de4b3ef Merge branch 'aql-jmmh-conditions' of github.com:arangodb/arangodb into aql-jmmh-conditions 2015-10-19 12:30:19 +02:00
Michael Hackstein 276bfded36 Fixed distinct result of IndexNode. Was broken in reverse case. 2015-10-19 12:29:23 +02:00
Jan Steemann 8aabe4d59c fixed sort bugs 2015-10-19 11:57:44 +02:00
Jan Steemann e5761736d4 fixed usage of sparse indexes 2015-10-19 10:56:30 +02:00
Michael Hackstein 20fa1f6623 Started fixing of reverse IndexNode iteration. Does not yet work for IN 2015-10-17 20:08:37 +02:00
Michael Hackstein 8fceb242fc Fixed a bug with Filter evaluation. All conditions have been thrown away instead of only invalids 2015-10-17 20:05:17 +02:00
Michael Hackstein e2c5b9a026 Merge branch 'aql-jmmh-conditions' of github.com:arangodb/arangodb into aql-jmmh-conditions 2015-10-17 17:49:38 +02:00
jsteemann f075d6e4b5 sort IN values 2015-10-17 15:24:36 +02:00
Michael Hackstein 99164e8e68 Merge branch 'aql-jmmh-conditions' of github.com:arangodb/arangodb into aql-jmmh-conditions 2015-10-17 15:11:37 +02:00
jsteemann ef2c1bc3cc changed sortOrs execution position 2015-10-17 15:09:25 +02:00
Michael Hackstein e825558b69 Merge branch 'aql-jmmh-conditions' of github.com:arangodb/arangodb into aql-jmmh-conditions 2015-10-17 14:49:04 +02:00
jsteemann 08b1bcf69c fixed invalid usage of non-collection variables in Condition 2015-10-17 14:47:16 +02:00
Michael Hackstein 2137089369 Merge branch 'aql-jmmh-conditions' of github.com:arangodb/arangodb into aql-jmmh-conditions 2015-10-16 10:54:18 +02:00
jsteemann 04a9ee03c3 fixed an assertion failure 2015-10-15 23:27:14 +02:00
Michael Hackstein 988cfad3d6 The use-indexes rule will nw be used and explained if it created NoResult Nodes 2015-10-15 17:01:41 +02:00
Jan Steemann 6640f8e293 Merge branch 'aql-jmmh-conditions' of https://github.com/arangodb/arangodb into aql-jmmh-conditions 2015-10-15 16:19:42 +02:00
Jan Steemann 7f778b148a blind commit 2015-10-15 16:19:33 +02:00
Michael Hackstein 136e375b22 Fixed remove filter covered by index test. And fixed a bug in SkiplistIndexIterator where Nullptr could happen but was not expected 2015-10-15 15:27:35 +02:00
Jan Steemann a66cb3f9db Merge branch 'aql-jmmh-conditions' of https://github.com/arangodb/arangodb into aql-jmmh-conditions 2015-10-15 13:38:49 +02:00
Jan Steemann e49802bcc0 fixes for condition generation 2015-10-15 13:38:35 +02:00
Michael Hackstein c747cc9405 Merge branch 'aql-jmmh-conditions' of github.com:arangodb/arangodb into aql-jmmh-conditions 2015-10-15 11:05:12 +02:00
Michael Hackstein 11d959a781 Merge branch 'aql-jmmh-conditions' of github.com:arangodb/arangodb into aql-jmmh-conditions 2015-10-15 11:05:05 +02:00
Jan Steemann 56e2dfd078 re-introduced NoResultsNode 2015-10-15 11:04:25 +02:00
Michael Hackstein 5ce216dee4 Fixed a bug where the condition could not be a nullptr 2015-10-15 09:46:42 +02:00
jsteemann f5f61ea173 cppcheck 2015-10-15 01:32:25 +02:00
jsteemann c38445aa64 added comment 2015-10-15 00:57:10 +02:00
jsteemann 4a88b3e8c9 fixed some index conditions 2015-10-15 00:50:06 +02:00
Jan Steemann b792632726 preparations for condition validation 2015-10-14 18:29:00 +02:00
Jan Steemann 3744a56138 IN optimization 2015-10-14 17:25:20 +02:00
Jan Steemann 79357b9bbb Merge branch 'aql-jmmh-conditions' of https://github.com/arangodb/arangodb into aql-jmmh-conditions 2015-10-14 16:56:22 +02:00
Jan Steemann 98882efa61 optimizer fixes 2015-10-14 16:56:03 +02:00
Michael Hackstein 33bcf414c0 Fixed SkipSome in IndexNode 2015-10-14 14:10:05 +02:00
Michael Hackstein 7378d386ac Merge branch 'aql-jmmh-conditions' of github.com:arangodb/arangodb into aql-jmmh-conditions 2015-10-14 13:11:04 +02:00
Michael Hackstein cc0234eb95 Fixed the EdgeIndex iterator. It was broken for IN with more than one value 2015-10-14 13:10:59 +02:00
Jan Steemann 0ffb11c25e do not use sparse indexes for sorting 2015-10-14 12:03:52 +02:00
Jan Steemann d7154af03c do not use sparse indexes for sorting only 2015-10-14 11:07:19 +02:00
Jan Steemann 779c242846 modified usage of filters with potentially undefined variables 2015-10-14 11:02:42 +02:00
Jan Steemann 8f150e942e Merge branch 'devel' of https://github.com/arangodb/arangodb into aql-jmmh-conditions
Conflicts:
	CHANGELOG
2015-10-14 09:57:24 +02:00
Frank Celler d99d86260d logging will be done bevor the config file is parsed 2015-10-13 21:47:53 +02:00
Jan Steemann 1ebcea2352 remove-filter-covered-by-indexes rewrite 2015-10-13 17:59:40 +02:00
Jan Steemann 068d85b562 less header dependencies 2015-10-13 17:00:59 +02:00
Michael Hackstein 3846c037da Merge branch 'aql-jmmh-conditions' of github.com:arangodb/arangodb into aql-jmmh-conditions 2015-10-13 16:27:01 +02:00
Michael Hackstein 48a445d963 Merge branch 'aql-jmmh-conditions' of github.com:arangodb/arangodb into aql-jmmh-conditions 2015-10-13 16:26:55 +02:00
Jan Steemann fcdd95d7cd fixes 2015-10-13 16:26:43 +02:00
Michael Hackstein 021d4eb2cf Earlier change had a sideeffect. Reverted. 2015-10-13 16:26:38 +02:00
Michael Hackstein 4c6b0f283a AttributeNames from the attribute parser are now non-nested attributes. They offer a function to join nested elements 2015-10-13 16:26:11 +02:00
Jan Steemann 7d11a07a5a removed RangeInfo.h 2015-10-13 15:15:48 +02:00
Jan Steemann 197be68f7d removed IndexRange* 2015-10-13 15:12:32 +02:00
Jan Steemann deb0a132ae rewrite of optimizer rule `use-index-for-sort` 2015-10-13 15:00:09 +02:00
Jan Steemann f2efdc3dc3 fixed fix 2 2015-10-13 11:27:56 +02:00
Jan Steemann cd7c1bc453 preparations for sort optimizer rule 2015-10-13 10:37:07 +02:00
Jan Steemann 4ad490eb47 fixed fix 2015-10-13 10:02:24 +02:00
Jan Steemann 753552c37a Merge branch 'aql-jmmh-conditions' of https://github.com/arangodb/arangodb into aql-jmmh-conditions 2015-10-13 09:59:30 +02:00
Jan Steemann 39e458142f fixed assertions 2015-10-13 09:59:11 +02:00
Michael Hackstein 0f14a243ff Removed debug output 2015-10-13 09:56:08 +02:00
jsteemann 46ba49e1bd cppcheck 2015-10-12 22:54:27 +02:00
jsteemann 4191056151 removed remainders of "use-index-range" optimizer rule 2015-10-12 22:49:30 +02:00
jsteemann 61d2d760fb new IndexNode cost calculation 2015-10-12 22:39:01 +02:00
jsteemann 29b3741156 reworked cost calculations 2015-10-12 22:23:03 +02:00
jsteemann adebf6e7c9 removed some iostream includes 2015-10-12 21:40:46 +02:00
Jan Steemann 6b2837190e different cost calculation, done except for skiplists 2015-10-12 18:49:47 +02:00
Jan Steemann 95cfc81325 Merge branch 'aql-jmmh-conditions' of https://github.com/arangodb/arangodb into aql-jmmh-conditions 2015-10-12 17:47:17 +02:00
Jan Steemann 53796ed894 preparation for index node cost calculation 2015-10-12 17:46:15 +02:00
Michael Hackstein 9bcbdc3565 Fixed failures in the SkiplistIndex and removed use-index-range rule 2015-10-12 17:46:04 +02:00
Jan Steemann 2970f9d221 fixed primary and edge index 2015-10-12 15:53:43 +02:00
Jan Steemann 6c1956eabf Merge branch 'aql-jmmh-conditions' of https://github.com/arangodb/arangodb into aql-jmmh-conditions 2015-10-12 15:34:50 +02:00
Jan Steemann ffa777979c make IN values unique and sort em 2015-10-12 15:34:41 +02:00
Michael Hackstein eca1cc7ac6 Fixed a bug where an index node was created for sorting, even if no index could sort. 2015-10-12 15:09:36 +02:00
Michael Hackstein 7272af29aa Merge branch 'aql-jmmh-conditions' of github.com:arangodb/arangodb into aql-jmmh-conditions 2015-10-12 14:38:42 +02:00
Jan Steemann 8afee97aaf fixed double-free issues 2015-10-12 14:37:18 +02:00
Michael Hackstein a8ee15fca4 Merge branch 'aql-jmmh-conditions' of github.com:arangodb/arangodb into
aql-jmmh-conditions and fixed a compiler bug for mac outstream
2015-10-12 14:37:03 +02:00
Michael Hackstein 1c81f89a18 The new IndexNode can now serve with a SkiplistIndex when only a sort and no filter is given 2015-10-12 14:16:25 +02:00
Jan Steemann 47e5138db1 fixed specializeCondition for skiplists 2015-10-12 13:39:18 +02:00
Jan Steemann f0edd198bc added specializeOne() and specializeAll() 2015-10-12 13:02:52 +02:00
Michael Hackstein dcc34e5312 The condition finder now creates an IndexNode for SORT statement only, if any index would be suiteable for it. 2015-10-12 11:44:36 +02:00
Michael Hackstein 1852f9484e Merge branch 'aql-jmmh-conditions' of github.com:arangodb/arangodb into aql-jmmh-conditions 2015-10-12 10:53:04 +02:00
Michael Hackstein d548bb520b Fixed a true/false missmatch 2015-10-12 10:52:54 +02:00
Jan Steemann 9ca0b8efe8 Merge branch 'devel' of https://github.com/arangodb/arangodb into aql-jmmh-conditions
Conflicts:
	CHANGELOG
2015-10-12 10:44:16 +02:00
Jan Steemann 94bc7ed0ad removed unused prepare2 method 2015-10-12 10:42:53 +02:00
Jan Steemann b5c9602407 specialization of conditions 2015-10-09 18:10:33 +02:00
Jan Steemann 8c6d284cc3 Merge branch 'devel' of https://github.com/arangodb/arangodb into aql-jmmh-conditions 2015-10-09 16:17:18 +02:00
Jan Steemann 14a2df7684 simplified startup phase w/ options parsing and feature initialization 2015-10-09 15:25:26 +02:00
Jan Steemann 23ae3a9693 fixes for front end
Conflicts:
	js/apps/system/_admin/aardvark/APP/GruntFile.js
2015-10-09 14:26:46 +02:00
Frank Celler fcda8c59ff fixed statistics 2015-10-09 13:51:33 +02:00
Jan Steemann 833f683609 Merge branch 'aql-jmmh-conditions' of https://github.com/arangodb/arangodb into aql-jmmh-conditions 2015-10-08 18:21:07 +02:00
Jan Steemann c689fc0756 preparation work for index condition specialization 2015-10-08 18:20:10 +02:00
Michael Hackstein 4d2383d0b6 Merge branch 'aql-jmmh-conditions' of github.com:arangodb/arangodb into aql-jmmh-conditions 2015-10-08 17:53:24 +02:00
Michael Hackstein 2316e94731 Merge branch 'aql-jmmh-conditions' of github.com:arangodb/arangodb into aql-jmmh-conditions 2015-10-08 17:53:19 +02:00
Jan Steemann 404f725461 minor fixes 2015-10-08 17:43:37 +02:00
Michael Hackstein 9a151f9b47 SkiplistIndex can now use Arrays 2015-10-08 17:29:34 +02:00
Michael Hackstein 8d1a4889da SkiplistIndex does not state that it could serve for Array Indexes 2015-10-08 16:54:29 +02:00
Jan Steemann a4e7119226 simplify permutations constructor 2015-10-08 16:38:51 +02:00
Jan Steemann 875d89620f don't clear members in destructor - it's not necessary 2015-10-08 16:35:45 +02:00
Jan Steemann bf71cdecdb noexcept 2015-10-08 16:35:28 +02:00
Jan Steemann d572655d84 fixed compile warning 2015-10-08 16:28:04 +02:00
Jan Steemann e17edd336c Merge branch 'aql-jmmh-conditions' of https://github.com/arangodb/arangodb into aql-jmmh-conditions 2015-10-08 16:23:04 +02:00
Jan Steemann 6a4e9658c5 fixes for explainer and condition 2015-10-08 16:22:52 +02:00
Michael Hackstein e40a148b22 Internal cleanup of SkiplistIndex 2015-10-08 16:12:32 +02:00
Michael Hackstein 7301ef6ab5 Fixed compile error 2015-10-08 15:33:50 +02:00
Michael Hackstein 9488f20dec Fixed memleaks 2015-10-08 15:31:41 +02:00
Jan Steemann c6c6ba8f6f Merge branch 'aql-jmmh-conditions' of https://github.com/arangodb/arangodb into aql-jmmh-conditions 2015-10-08 15:10:38 +02:00
Jan Steemann 0d80a17002 generalize condition handling 2015-10-08 15:10:28 +02:00
Michael Hackstein 24b41e9860 Removed debug output 2015-10-08 15:03:47 +02:00
Michael Hackstein 345725bdf9 Fixed skiplistindex with equality and range conditions 2015-10-08 14:58:52 +02:00
Michael Hackstein 9639a9e669 Skiplist index now can handle upper and lower bounds and combined with equal and any. hunt leaks now 2015-10-08 13:35:45 +02:00
Michael Hackstein af4ff37334 Merge branch 'aql-jmmh-conditions' of github.com:arangodb/arangodb into aql-jmmh-conditions 2015-10-08 12:50:06 +02:00
Michael Hackstein ef6f2a5be5 Continued fixing leaks in SkiplistIndex 2015-10-08 12:49:51 +02:00
Jan Steemann fbfc7773ef serialization and deserialization of IndexNodes 2015-10-08 12:02:27 +02:00
Michael Hackstein b048f4015f Fixed potential memleaks 2015-10-08 09:47:54 +02:00
jsteemann 738009c69f fixed compile error 2015-10-07 20:33:15 +02:00
Jan Steemann 853fc41077 changed index selection formula for eq-based indexes 2015-10-07 18:58:45 +02:00
Jan Steemann d479fa11cc IndexBlock cleanup 2015-10-07 18:15:50 +02:00
Michael Hackstein 7d4f1f3005 Unified the Permutation State for Skiplist and HashIndex 2015-10-07 17:48:46 +02:00
Michael Hackstein f7d3304db7 Merge branch 'aql-jmmh-conditions' of github.com:arangodb/arangodb into aql-jmmh-conditions 2015-10-07 17:27:40 +02:00
Michael Hackstein d381cf2841 Included IN operator in Skiplist. Right now only attribute IN values 2015-10-07 17:27:35 +02:00
Jan Steemann 4bf3bb047b Merge branch 'devel' of https://github.com/arangodb/arangodb into aql-jmmh-conditions 2015-10-07 17:25:56 +02:00
Jan Steemann 5b423971ef support `value IN attr[*]` 2015-10-07 17:25:22 +02:00
Michael Hackstein cb57f39e06 Merge branch 'aql-jmmh-conditions' of github.com:arangodb/arangodb into aql-jmmh-conditions 2015-10-07 17:24:42 +02:00
Michael Hackstein ef78f03309 Merge branch 'devel' of github.com:arangodb/arangodb into devel 2015-10-07 17:05:02 +02:00
Michael Hackstein ab23a01263 Properly react to return value 2015-10-07 17:04:56 +02:00
Jan Steemann ef04ccdc8c fixed expansion node cloning 2015-10-07 17:03:17 +02:00
Jan Steemann 424dc81197 fixed undefined index lookup behavior 2015-10-07 16:34:01 +02:00
Michael Hackstein 5a026db641 Merge branch 'aql-jmmh-conditions' of github.com:arangodb/arangodb into aql-jmmh-conditions 2015-10-07 16:13:04 +02:00
Michael Hackstein cb57171ada Fixed an unitialized value and a wrong condition. SkiplistIndex works now for everything except IN. 2015-10-07 16:12:58 +02:00
Jan Steemann 85eacaa458 fixed memleaks 2015-10-07 16:12:20 +02:00
Michael Hackstein 16369c7ac5 Merge branch 'devel' of github.com:arangodb/arangodb into devel 2015-10-07 15:51:06 +02:00
Michael Hackstein 1ba2efed60 Fixed GraphNeighbors as locking was not woring for include data 2015-10-07 15:50:41 +02:00
Frank Celler 4b0911c799 added debugging header x-arango-v8-context 2015-10-07 13:37:35 +02:00
Jan Steemann a1de2bfcc1 Merge branch 'devel' of https://github.com/arangodb/arangodb into aql-jmmh-conditions
Conflicts:
	CHANGELOG
2015-10-07 10:18:21 +02:00
Frank Celler 8849e184ca fixed default language 2015-10-07 09:47:17 +02:00
Frank Celler 459c5b2c7e changed to atomic 2015-10-07 09:47:17 +02:00
Michael Hackstein db0e414776 Merge branch 'aql-jmmh-conditions' of github.com:arangodb/arangodb into aql-jmmh-conditions 2015-10-07 09:10:56 +02:00
Michael Hackstein 86ab20ffb0 Started adapting the Skiplist Index to the new index Node. WIP does not compile 2015-10-06 17:49:44 +02:00
Jan Steemann 06fedc469d indentation 2015-10-06 17:35:44 +02:00
Jan Steemann 8dfcc98694 use ctor/dtor for TRI_hash_index_search_value_t 2015-10-06 17:09:59 +02:00
Jan Steemann 55f82646d9 moved TRI_index_search_value_t into HashIndex.h 2015-10-06 16:39:12 +02:00
Jan Steemann 57cb864cc5 support edge queries with IN 2015-10-06 16:04:59 +02:00
Alan Plum 820e694d0c Re-implement cleanupCancelation 2015-10-06 15:10:43 +02:00
Jan Steemann 14dc0be744 primary index now supporting IN 2015-10-06 14:46:33 +02:00
Jan Steemann 8ee068ba40 refactoring 2015-10-06 13:31:56 +02:00
Jan Steemann a12eda295b aha! 2015-10-06 13:03:46 +02:00
Jan Steemann 692bcd39ce added TODOs 2015-10-06 12:24:54 +02:00
Jan Steemann 0d817c6cdc added TODOs 2015-10-06 12:21:05 +02:00
Jan Steemann 310442c8ac Merge branch 'aql-jmmh-conditions' of https://github.com/arangodb/arangodb into aql-jmmh-conditions 2015-10-06 11:24:02 +02:00
Jan Steemann b6c8d77d98 some bugfixes 2015-10-06 11:23:55 +02:00
Michael Hackstein 37a4ecfbb3 Modified the IndexIterator API to return TRI_doc_mptr_t instead of *_copy_t. Index Range node now manages a list of already returned documents, making the resulting documents distinct 2015-10-06 10:45:42 +02:00
Michael Hackstein 8761e5abde Fixed broken nested loop. 2015-10-06 09:41:30 +02:00
Jan Steemann 118f924598 support [*] operator 2015-10-05 19:15:22 +02:00
Michael Hackstein 1345659917 Implemented the HashIndexIterator interface for AQL. Now the new IndexNode can use Primary, Edge and Hash indicies ;) 2015-10-05 17:11:32 +02:00
Jan Steemann e46ba60715 changed signatures of attribute-access-detecting functions 2015-10-05 16:01:19 +02:00
Michael Hackstein 00c99f135a Merge branch 'aql-jmmh-conditions' of github.com:arangodb/arangodb into aql-jmmh-conditions 2015-10-05 13:56:12 +02:00
Michael Hackstein 41916760c3 Implemented the IndexNode Iterator for the EdgeIndex. Seems to be working. Also removed some void* parameters from EdgeIndex 2015-10-05 13:55:55 +02:00
Jan Steemann 37bc5b64ff fixed segfault 2015-10-05 13:49:23 +02:00
Jan Steemann 60728877e4 Merge branch 'devel' of https://github.com/arangodb/arangodb into aql-jmmh-conditions 2015-10-05 11:56:40 +02:00
Jan Steemann 391e9b1693 improved error message on startup 2015-10-05 11:53:22 +02:00
Jan Steemann d9d2784a84 make replication start with 2.6 configuration 2015-10-05 11:07:58 +02:00
Jan Steemann 7c428aceb9 increase default value of `--server.descriptors-minimum` to 1024 2015-10-05 11:07:03 +02:00
Jan Steemann 1c990b7324 Merge branch 'devel' of https://github.com/arangodb/arangodb into aql-jmmh-conditions
Conflicts:
	arangod/Aql/ExecutionNode.cpp
2015-10-05 10:32:36 +02:00
Michael Hackstein c8a48079f0 Primary Index AQL iterator now handles _key and _id as it is supposed to do 2015-10-05 10:19:26 +02:00
Jan Steemann 7d4c379598 small modifications, temporarily disabled interchange-adjacent-enumerations 2015-10-02 19:53:35 +02:00
Jan Steemann f7b207e582 removed unused variable 2015-10-02 18:05:11 +02:00
Jan Steemann 574f88a1f9 fixed invalid cast 2015-10-02 18:04:52 +02:00
Jan Steemann 32556a828e fixed potentially invalid cast 2015-10-02 17:40:34 +02:00
Jan Steemann 8e0ab92d1a Merge branch 'aql-jmmh-conditions' of https://github.com/arangodb/arangodb into aql-jmmh-conditions 2015-10-02 17:39:19 +02:00
Jan Steemann e0dcf4331d finish IN optimizations in Condition 2015-10-02 17:39:04 +02:00
Michael Hackstein 9bfd929cf5 Indexes compile again and some expressions seem to be evaluated. Might still crash. Start with --no-server with server it is still broken 2015-10-02 17:14:18 +02:00
Michael Hackstein 5de1a9b9b5 Merge branch 'aql-jmmh-conditions' of github.com:arangodb/arangodb into aql-jmmh-conditions 2015-10-02 17:03:57 +02:00
Michael Hackstein d77dfc55c3 Started implementing runtime evaluation of IndexNode expressions 2015-10-02 17:03:53 +02:00
Michael Hackstein 4c065f470c Registered Index Node in several places where it was not yet handled. 2015-10-02 17:02:39 +02:00
Jan Steemann a2731a6121 blind commit 2015-10-02 17:02:02 +02:00
Michael Hackstein 6403104863 Started with PrimaryIndex for _id in IndexNode 2015-10-02 17:01:56 +02:00
Jan Steemann 3a92fa8e16 merge IN with IN 2015-10-02 15:22:21 +02:00
Jan Steemann 7292384b37 deduplicate IN arrays 2015-10-02 14:05:27 +02:00
Jan Steemann 8247ec0dff Merge branch 'devel' of https://github.com/arangodb/arangodb into aql-jmmh-conditions 2015-10-02 12:59:13 +02:00
Jan Steemann fbdeb5ef5f make 2.7 replication compatible with 2.6 2015-10-02 12:55:15 +02:00
Jan Steemann 42b02427e6 fixed index usage 2015-10-01 17:27:57 +02:00
Michael Hackstein d6bdf78269 Fixed double free of AstNode 2015-10-01 17:01:50 +02:00
Michael Hackstein 9c38a47aa1 Merge branch 'aql-jmmh-conditions' of github.com:arangodb/arangodb into aql-jmmh-conditions 2015-10-01 17:01:27 +02:00
Jan Steemann fab5c5902d clarified instructions 2015-10-01 16:59:14 +02:00
Jan Steemann 0ce2356cce added getAll() 2015-10-01 15:57:26 +02:00
Michael Hackstein e55b5d59d5 Implemented IndexIterator for PrimaryIndex. The IndexBlock uses this Iterator. Still a double free as soon as the query is finished 2015-10-01 14:34:24 +02:00
Jan Steemann bc4e27bdc9 added getOne() 2015-10-01 13:25:03 +02:00
Jan Steemann 32bdc19522 Merge branch 'devel' of https://github.com/arangodb/arangodb into aql-jmmh-conditions 2015-09-30 17:47:00 +02:00
Jan Steemann 0ea2247eb0 scan-build 2015-09-30 17:28:52 +02:00
Jan Steemann 806272876c satisfy scan-build 2015-09-30 17:21:07 +02:00
Jan Steemann e71ff5a4f5 cppcheck 2015-09-30 16:50:57 +02:00
Jan Steemann 40a1cf3ce3 fixed segfault 2015-09-30 16:03:46 +02:00
Jan Steemann 91e8884518 added AggregateNode.* 2015-09-30 15:55:38 +02:00
Jan Steemann 50fa5a2138 added SortNode file 2015-09-30 15:42:48 +02:00
Jan Steemann 9041b7b2c9 file split 2015-09-30 15:29:32 +02:00
Jan Steemann d99f7a498d moved index nodes to their own files 2015-09-30 15:13:49 +02:00
Jan Steemann b5cf8ce942 moved cluster nodes out of ExecutionNode.* 2015-09-30 14:51:11 +02:00
Jan Steemann 47e1b3ceb8 stringify conditions 2015-09-30 14:35:18 +02:00
Jan Steemann 6405c82a32 removed global reverse-flag for IndexNode. this flag has to be moved into the separate indexes used by the node 2015-09-30 14:14:41 +02:00
Jan Steemann cddabd1e20 fixed compile errors 2015-09-30 09:30:46 +02:00
Michael Hackstein 468e632abb Merge branch 'aql-jmmh-conditions' of github.com:arangodb/arangodb into aql-jmmh-conditions 2015-09-30 08:38:26 +02:00
Michael Hackstein 0fab24aca5 Fixed double free of condition and reactivated IndexNode 2015-09-30 08:36:56 +02:00
Jan Steemann 67de5480e8 check filter condition and sort condition support for all index types 2015-09-29 17:38:55 +02:00
Jan Steemann 27bcd7ee84 better estimates 2015-09-29 15:30:44 +02:00
Jan Steemann 7df6726c3f calculate costs for equality lookups 2015-09-29 13:08:51 +02:00
Michael Hackstein 8f0bd93120 Disabled the IndexBlock again, not yet working 2015-09-29 10:18:46 +02:00
Michael Hackstein c0a88a1371 Merge branch 'aql-jmmh-conditions' of github.com:arangodb/arangodb into aql-jmmh-conditions 2015-09-29 10:04:15 +02:00
Michael Hackstein e35ea8995e Fixed used after free of condition node. Cloned the Condition AST whie handing it over. Still get a double free exception. IndexNodeis now handled. 2015-09-29 09:13:08 +02:00
Michael Hackstein 1e9c6f110b Started implementing the IndexBlock. Right now it expects an iterator for each used index that is created by an evaluated expression from the Block. Then it will go through all iterators in every get/skip some step 2015-09-28 19:30:10 +02:00
Jan Steemann 89b6329985 Merge branch 'devel' of https://github.com/arangodb/arangodb into aql-jmmh-conditions 2015-09-28 18:13:29 +02:00
Jan Steemann 84f59d112e unified index use checks 2015-09-28 18:13:04 +02:00
Jan Steemann 0d845955e2 Merge branch 'aql-jmmh-conditions' of https://github.com/arangodb/arangodb into aql-jmmh-conditions 2015-09-28 14:11:44 +02:00
Jan Steemann 3495816fa1 changed index signatures 2015-09-28 14:11:23 +02:00
Michael Hackstein cf7b0734b0 Fixed compile error 2015-09-28 13:50:26 +02:00
Michael Hackstein 0cdc8afcd5 Merge branch 'aql-jmmh-conditions' of github.com:arangodb/arangodb into aql-jmmh-conditions 2015-09-28 13:38:45 +02:00
Michael Hackstein 18f890895f Fixed executionNode, does compile again 2015-09-28 13:38:40 +02:00
Jan Steemann 35f2bdb9fd fixed 2015-09-28 13:31:53 +02:00
Michael Hackstein 5e0c1900f8 Added more implementation to new IndexNode 2015-09-28 11:53:23 +02:00
Michael Hackstein 18f71966e9 React to _condition is nullptr when hitting EnumerateCollection 2015-09-28 11:02:39 +02:00
Jan Steemann aebf442e7a note latest sort expression used in a query 2015-09-25 18:21:25 +02:00
Jan Steemann ccd06fc1a4 simplified ConditionFinder 2015-09-25 18:01:02 +02:00
Jan Steemann d5dabfb528 Merge branch 'aql-jmmh-conditions' of https://github.com/arangodb/arangodb into aql-jmmh-conditions
Conflicts:
	arangod/Aql/OptimizerRules.cpp
2015-09-25 17:41:10 +02:00
Jan Steemann d51c984f11 use findEndNodes 2015-09-25 17:39:23 +02:00
Jan Steemann c72c568b07 added findEndNodes 2015-09-25 17:38:46 +02:00
Michael Hackstein 17a45c8cd3 Fixed potential memleaks in failure cases 2015-09-25 17:38:04 +02:00
Jan Steemann 0f52db88c9 added EndNodeFinder 2015-09-25 17:37:50 +02:00
Michael Hackstein 368eeb95b3 Merge branch 'aql-jmmh-conditions' of github.com:arangodb/arangodb into aql-jmmh-conditions 2015-09-25 17:23:52 +02:00
Michael Hackstein 2a342fe40f The use-indexes rule now replaces EnumerateCollectionNodes with IndexNodes. Seems to work on visual test, needs automated test 2015-09-25 17:23:47 +02:00
Jan Steemann f2cbaa38e0 fixed condition printing 2015-09-25 16:35:18 +02:00
Michael Hackstein e0817f0263 Merge branch 'aql-jmmh-conditions' of github.com:arangodb/arangodb into aql-jmmh-conditions 2015-09-25 16:34:49 +02:00
Michael Hackstein 6d814f63eb Modified the condition finder to maintain a list of possible enumerate collections nodes 2015-09-25 16:34:44 +02:00
Jan Steemann 9472eb7b45 make it link again 2015-09-25 16:30:29 +02:00
Jan Steemann abc87b2d5f added IndexNode stub 2015-09-25 13:40:51 +02:00
Michael Hackstein 1941b7f880 Added a new IndexNode does not compile yet 2015-09-25 13:18:43 +02:00
Michael Hackstein 2ab13b81a4 The Condition will now successfully produce a list of Indexes that can be combined for the current EnumerateCollectionBlock. If this list is empty we can do nothing but a Full Collection Scan 2015-09-25 13:00:37 +02:00
Michael Hackstein 6eb23f14f4 The Condition findIndexes now tries to find an index for each AND block and fills a list of indexes, iff there is any element in the list we are able to use a CombinedIndexRangeNode, if not we still have to use the EnumerateCollectionNode 2015-09-25 11:45:31 +02:00
Michael Hackstein 6a11ad28ee Adapted all indices to the new planned interface so they tell us if they can serve for a condition and present their costs 2015-09-25 10:40:04 +02:00
Jan Steemann 4249095456 issue #1507: added optional *allowImplicit* sub-attribute for transactions 2015-09-24 15:50:00 +02:00
Michael Hackstein 180ffa74a3 Moved the conditionFinder to a seperate file 2015-09-24 14:16:25 +02:00
Michael Hackstein 6525755cc0 Fixed memleak 2015-09-23 17:04:37 +02:00
Michael Hackstein 8c3283f8a0 Fixed memleak 2015-09-23 16:29:28 +02:00
Michael Hackstein eae6394f22 Allowed the hashIndex to modify the DNF and-block node. It now successfully removes all entries it can be responsible for 2015-09-23 16:29:15 +02:00
Michael Hackstein 614902ee99 Replaced TRI_vector_pointer by std::vector in AstNode 2015-09-23 15:02:34 +02:00
Michael Hackstein aefc0edae0 Added a modifyable AST node to the index can serve and block functionality of all indicies. However non of them uses it yet 2015-09-23 14:38:23 +02:00
jsteemann 5c0ff48478 cppcheck 2015-09-22 23:40:57 +02:00
Michael Hackstein a891d8653b The hashindex is also able to tell if it can be used for a Condition Block 2015-09-22 17:23:56 +02:00
Michael Hackstein e6e795e198 Improved dev output. Now it is easier to see where more than one index is suiteable 2015-09-22 16:14:10 +02:00
Michael Hackstein 9882af23e3 The Edge Index is now able to state if it can be used by Condition or not. 2015-09-22 15:52:06 +02:00
Michael Hackstein 73077a17fc Implemented the foundation to identify indicies based on DNF Conditions. Primary is implemented as an example. Right now it is only printed that it can be used. TODO: actually use it. Other indicies 2015-09-22 15:39:07 +02:00
Michael Hackstein f1b0afd9a6 Started to implement functions to find indexes for each Condition sub part 2015-09-22 11:19:52 +02:00
Wilfried Goesgens 19fdb26ab7 Don't leak statistics we want to ignore for aardvark 2015-09-21 14:39:43 +02:00
Michael Hackstein 0d3a095736 Fixed a bug in AQL execution which caused LIMIT <skip> <total> to fail after sorting based on an attribute with skiplist index 2015-09-21 13:15:56 +02:00