1
0
Fork 0
Commit Graph

597 Commits

Author SHA1 Message Date
Michael Hackstein 7af92fb2ff IN values in index are now sorted 2016-03-21 15:43:01 +01:00
Michael Hackstein 2c100dff2e Merge branch 'spdvpk' of github.com:arangodb/arangodb into spdvpk 2016-03-21 14:58:24 +01:00
Michael Hackstein 69ad996767 Fixed implementation to multiply IN index lookups for hash and skiplist index. 2016-03-21 14:57:30 +01:00
Jan Steemann f458acc4c7 cleanup 2016-03-21 14:35:58 +01:00
Jan Steemann b672ce0985 test fixes 2016-03-21 12:15:40 +01:00
Max Neunhoeffer 268dc3c097 Fix geo index remove. 2016-03-21 09:12:56 +01:00
Michael Hackstein 5bc2274855 Fixed invalid search values in Graph Traverser. Now some more tests are green. Still failing 2016-03-18 16:47:55 +01:00
Michael Hackstein bb40b3c420 Fixed edge index lookup. Did fail for IN cases 2016-03-18 14:29:17 +01:00
Michael Hackstein 84454f49c4 Fixed Edge Index iterator to always retain the iterator data 2016-03-15 18:34:00 +01:00
Michael Hackstein 5d61b709bb Fixed OperationCursor and SkiplistIndex. The builder in OperationCursor did not retain the _buffer. 2016-03-15 08:56:37 +01:00
Michael Hackstein 380e4eda69 Another fix for skiplist index for Searches that should not hit any element 2016-03-10 16:22:15 +01:00
Michael Hackstein 34f9206a63 Fixed SkiplistIndex Lookup for Slice. Seems to be working in AQL. Needs to be tested in detail 2016-03-10 16:11:28 +01:00
Michael Hackstein eb8b09c85b Fixed Skiplist Index Lookup. Equallity Lookups now seem to work. Range Lookups will crash now. 2016-03-10 14:37:12 +01:00
Michael Hackstein b802ff9d25 Fixed memleak in HashIndex Lookup 2016-03-10 13:11:32 +01:00
Michael Hackstein 3cf571d59f Undefined behaviour in HashIndex. Slice is correct but is not iterated properly yet 2016-03-10 12:49:26 +01:00
Michael Hackstein 0d414b2aa6 Fixed PrimaryIndex iterator creation from AQL. Got my first FILTER x._key == 'test' query running. yeah 2016-03-10 11:10:58 +01:00
Michael Hackstein 23f845de05 Merge branch 'spdvpk' of github.com:arangodb/arangodb into spdvpk 2016-03-10 10:46:30 +01:00
jsteemann 279fb105e2 cppcheck 2016-03-09 22:57:49 +01:00
Jan Steemann b55b5d7386 AqlValue refactoring 2016-03-09 17:50:20 +01:00
Michael Hackstein f5f039e493 Added a static function to edgeIndex to build a search-Value in a builder. 2016-03-09 13:28:43 +01:00
Michael Hackstein a24e28024e Merge branch 'spdvpk' of github.com:arangodb/arangodb into spdvpk 2016-03-09 09:59:56 +01:00
Michael Hackstein c3c06a2f5c Modified EDGES AQL funciton to use new Transaction API instead and does not rely on the shaper any more. Also added a iteratorForSlice method to EdgeIndex. It is slightly more complicated than other indexes iteratorForSlice functions because of the special _from, _to indexing in one index. 2016-03-09 09:59:51 +01:00
Jan Steemann b393c3d9bb Merge branch 'devel' of https://github.com/arangodb/arangodb into spdvpk 2016-03-09 09:42:10 +01:00
Frank Celler dfa9047484 switch arangosh to new ApplicationFeatures and ProgramOptions 2016-03-08 23:32:43 +01:00
Jan Steemann 0c6e8bcd98 fixed replace 2016-03-07 16:49:26 +01:00
Jan Steemann 0c2fdb9fb9 less dependency on document-collection.h 2016-03-04 20:53:17 +01:00
Jan Steemann 6eea757c01 simplifications 2016-03-04 19:40:24 +01:00
Jan Steemann c157363f3c less dependencies 2016-03-04 17:21:09 +01:00
Jan Steemann eb82d96836 constexpr 2016-03-04 12:33:59 +01:00
jsteemann 60ac50e5c6 cppcheck 2016-03-02 22:09:32 +01:00
Jan Steemann 4c03f4bf8d simplification 2016-03-02 15:50:52 +01:00
Michael Hackstein 65abe721f3 Merge branch 'spdvpk' of github.com:arangodb/arangodb into spdvpk 2016-03-01 16:39:04 +01:00
Jan Steemann 298c96f2cc store information about datafile in upper bit 2016-03-01 16:29:09 +01:00
Jan Steemann 3fa4623dd1 made some methods private 2016-03-01 15:53:10 +01:00
Michael Hackstein 6e7f9ef49c Transaction OperationCursor now implements a skip method. 2016-03-01 14:37:40 +01:00
Jan Steemann acf308f3dc fixed test 2016-03-01 14:32:19 +01:00
Michael Hackstein f1d0875c4e Removed obsolete functions and skiplist key element. 2016-03-01 13:53:45 +01:00
Michael Hackstein fa8b4ae0e3 Removed Velocypack from FulltextIndex. And replaced TRI_string_vector_t with std::vector<std::string> 2016-03-01 13:35:47 +01:00
Michael Hackstein a48c1819bc Added an Implementation for AQL condition Iterator in HashIndex 2016-02-29 18:46:38 +01:00
Michael Hackstein ae7da462d0 Removed Import of *shape* in Indexes 2016-02-29 18:10:02 +01:00
Michael Hackstein b29b84687b Removed shape* include 2016-02-29 18:00:31 +01:00
Michael Hackstein cb40281543 Unshapified the GeoIndex 2016-02-29 17:58:26 +01:00
Michael Hackstein 7e086c901c Fixed n assignment where it should be an comparison 2016-02-29 17:07:07 +01:00
Michael Hackstein 09933bea41 Used the new MultiIndex iterator for AQL=>Skiplist iterator, if there is an IN used 2016-02-29 15:32:23 +01:00
Michael Hackstein 73b97bd489 Added implementation of a multi-index-iterator Iterator. This can be used as a wrapper around IN-Expanded index lookups and might be used in IndexNode as well. 2016-02-29 15:27:51 +01:00
Michael Hackstein e590f51d0f Added implementation for AQL Node => Skiplist Iterator function. Does not yet support IN statment, we need a multi Iterator for this. 2016-02-29 14:19:11 +01:00
Michael Hackstein b76c189990 Removed TRI_index_operator and all it's references. They are obsolete because of new VelocyPack index iterator on Skiplist index 2016-02-29 11:42:18 +01:00
Michael Hackstein cd8d49ead0 Replaced the old Skiplist Iterator with a new Implementation using VelocyPack instead of TRI_INDEX_OPERATOR 2016-02-29 11:32:43 +01:00
jsteemann 4845b3fc93 cleanup 2016-02-26 23:07:19 +01:00
Jan Steemann bd9293802d marker changes, unfinished 2016-02-26 19:39:17 +01:00
Michael Hackstein 4f832aa568 Fixed a bug in EdgeIndex lookup and added checks when inserting documents into an Edge Collection. They now need to have valid _from and _to entries 2016-02-26 15:48:48 +01:00
Michael Hackstein 7174a6225f Merge branch 'spdvpk' of github.com:arangodb/arangodb into spdvpk 2016-02-26 13:32:10 +01:00
Michael Hackstein ac173ca497 The Edge Index now indexes with VPackSlice instead of TRI_edge_header_t. Some functions that were using the Edge Index are disabled and will not work. These functions have to be modified to use the new Transaction API. 2016-02-26 13:31:10 +01:00
Jan Steemann ebf2d1520b removed TRI_doc_mptr_copy_t 2016-02-26 11:46:33 +01:00
Jan Steemann 3f07813b31 pacify compiler 2016-02-26 10:28:17 +01:00
Jan Steemann bc7787cf81 fixed logical confusion 2016-02-25 15:36:24 +01:00
Michael Hackstein 1f5202ad08 Removed obsolte TRI_hash_index_search_value_t. 2016-02-25 15:06:49 +01:00
Michael Hackstein 7b42fc7ae8 Unified lookup in PrimaryIndex to use identical format as HashIndex lookup does 2016-02-25 14:38:39 +01:00
Michael Hackstein 647cdc0ffe Implemented a indexScan iterator for Primary Index and moved the AQL iterator for it to VPack as well. Right now the AQL iterator is not functional is the memory management is not yet working. 2016-02-25 13:47:31 +01:00
Michael Hackstein 367f6c28e1 Merge branch 'spdvpk' of github.com:arangodb/arangodb into spdvpk 2016-02-25 12:45:29 +01:00
Michael Hackstein c509b60e11 Added a function to transform the Index Search Value of HashIndex to the Index-Key 2016-02-25 12:45:20 +01:00
Jan Steemann 8f2e2de451 Merge branch 'devel' of https://github.com/arangodb/arangodb into spdvpk 2016-02-25 10:46:13 +01:00
jsteemann 1823ae4fd2 removed unused forwards and functions 2016-02-25 00:48:06 +01:00
Max Neunhoeffer b072a01f7c Fix buildIndexValues. 2016-02-24 15:59:32 +01:00
Max Neunhoeffer d02ae8e7d1 Merge branch 'spdvpk' of ssh://github.com/ArangoDB/ArangoDB into spdvpk 2016-02-24 15:48:19 +01:00
Max Neunhoeffer aaaa50c6d0 Many index changes, compiles, does not run well. 2016-02-24 15:47:57 +01:00
Michael Hackstein a5442d19f3 Fixed a bug in expandInSearch values. And removed temporary test hack. 2016-02-24 14:46:21 +01:00
Michael Hackstein 9727a1f3a8 Started to add an implementation tu multiply queries with IN. THis is identical for all indexes and does not check validity. The general idea is that an index does not need to know anything about AND, OR, IN. It just has to know primitive types like EQ, LE, LT, GE, GT. 2016-02-24 13:29:26 +01:00
Max Neunhoeffer f2c5e43353 Fix compilation. 2016-02-23 15:57:39 +01:00
Jan Steemann 49181147e4 truncate optimization 2016-02-22 16:52:18 +01:00
Michael Hackstein 1367368b38 Added a version for ScanIndex with CursorType::Any 2016-02-22 15:42:57 +01:00
Michael Hackstein e9054fdf29 Added a All iterator for the primary index and made it available in the transaction 2016-02-22 13:25:51 +01:00
Jan Steemann ea3a7f3dab removed cap constraints 2016-02-22 12:37:16 +01:00
Michael Hackstein 756c056795 Added basic implementation to scan an index based on a transaction. However no index implements the new iterator yet. Next step. 2016-02-19 18:22:19 +01:00
Michael Hackstein ff07376fc9 Added stubs to get an index iterator from an index with VPackSlices 2016-02-19 16:29:14 +01:00
Jan Steemann 9898103bc1 initial vpack documents 2016-02-11 21:56:10 +01:00
Jan Steemann bc6fce75d4 removed some unnecessary explicits 2016-02-02 12:13:21 +01:00
jsteemann 3aed47d8e2 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2016-02-01 13:15:05 +01:00
Jan Steemann b7abf5a40d attempt to fix Windows build 2016-02-01 12:04:28 +01:00
Michael Hackstein e0455850fc Replaced doc_mptr_copy with doc_mptr which is the correct type in this case. 2016-02-01 11:40:18 +01:00
jsteemann 54c796b6e8 fixed issues identified by `-fsanitize=undefined` 2016-01-31 23:30:41 +01:00
jsteemann b635983d9c removed unused functions and headers 2016-01-31 19:08:39 +01:00
jsteemann 13481bbebc fix or annotate problems identified by clang-check 2016-01-31 03:32:31 +01:00
jsteemann 353c9732b7 removed last LOG_xxx macros 2016-01-30 04:03:18 +01:00
jsteemann 9482ee1cca use Logger 2016-01-30 00:08:35 +01:00
jsteemann ff21453255 logger transition: all files in arangod exception transactions.cpp 2016-01-29 23:28:44 +01:00
Jan Steemann cd4cbae6ce ported fixes to devel 2016-01-29 19:05:27 +01:00
jsteemann 7f662bac09 simplify code 2016-01-29 00:11:24 +01:00
Jan Steemann 9046e1831b clang-format 2016-01-27 13:43:46 +01:00
Michael Hackstein a3f0d2e279 Merge branch 'vpack' of github.com:arangodb/arangodb into devel 2016-01-25 13:09:05 +01:00
Michael Hackstein 5b2062b4e4 Removed legacy toJson function from Index.h. All callers now use VelocyPack directly 2016-01-25 11:42:31 +01:00
Jan Steemann 5e87baa131 renamed methods (thanks M$ for redefining free in debugging) 2016-01-25 11:03:44 +01:00
Michael Hackstein 0fba63e43f arangod/Indexes are now JSON / TRI_json_t free 2016-01-24 14:34:42 +01:00
Michael Hackstein a6f58ce14d Use forward declarations for VelocyPack instead of all includes everywhere 2016-01-24 14:29:31 +01:00
Michael Hackstein d37cea7644 Replaced TRI_json_t in HashIndex by VelocyPack 2016-01-24 11:17:51 +01:00
Michael Hackstein 191c2dc3a9 Merge branch 'devel' of github.com:arangodb/arangodb into vpack 2016-01-21 16:29:38 +01:00
Michael Hackstein b04f1bf9e2 Replaced IndexOperators using TRI_json_t by Operators using VPack. 2016-01-21 14:07:36 +01:00
Michael Hackstein 381eb1e876 Replaced creation of IndexOperators to use VelocyPack in SkiplistIndex 2016-01-21 11:22:25 +01:00
jsteemann 842384016d namespace cleanup 2016-01-21 00:20:22 +01:00
Michael Hackstein 1178d42004 Removed TRI_json_t from Index Constructors and replaced it by VelocyPack. SingleServerTests pass. Some clister tests fail 2016-01-20 16:19:24 +01:00
Jan Steemann 806bdaa7b2 better error handling 2016-01-20 14:04:10 +01:00
Michael Hackstein 3c6ac9f38f Removed all TRI_json_t inputs to AgencyComm and replaced them by VPack. This commit stil has an error s.t. indexes cannot be dropped in Cluster. WIP. 2016-01-20 12:53:55 +01:00
Michael Hackstein 51a683facb Added a toVelocyPack function to all indexes. Removed specialized toJson from all indexes. Generalized toJson invokes specialized toVelocyPack for compatibility reasons. 2016-01-19 15:40:37 +01:00
Jan Steemann cec57dcf32 adjusted signature 2016-01-18 17:37:41 +01:00
Jan Steemann f059b0e5f7 fixed index lookup issues 2016-01-18 17:35:54 +01:00
jsteemann 431900f17a changed namespace from triagens to arangodb 2016-01-17 00:44:53 +01:00
Jan Steemann 687d6133f0 comments reformatting 2016-01-11 09:52:39 +01:00
jsteemann 9f0576c65f don't rely so much on namespace std being present 2016-01-08 01:05:06 +01:00
Jan Steemann 3ad20c0cae auto-generated headers 2016-01-06 18:41:51 +01:00
Jan Steemann a3b026d9d1 removed useless sections from code, unified include guards 2016-01-06 14:15:22 +01:00
Jan Steemann f422576ee0 clang-format 2016-01-05 17:43:24 +01:00
jsteemann a6cb463e06 Merge branch 'devel' of https://github.com/arangodb/arangodb into vpack 2016-01-05 00:25:10 +01:00
Jan Steemann f1ed7cdf46 fixed memleaks that occurred during failure testing only 2015-12-23 20:59:04 +01:00
Max Neunhoeffer 394057fbda Merge branch 'devel' into vpack 2015-12-23 15:09:20 +01:00
Jan Steemann 8781c2d05d added tests 2015-12-23 14:38:48 +01:00
Jan Steemann 887e93babc index handling fixes 2015-12-23 14:01:14 +01:00
Max Neunhoeffer 225c8cd843 Work on TODOs. 2015-12-22 16:50:09 +01:00
Max Neunhoeffer e8e6dc8597 More VPackObjectBuilder usages. 2015-12-21 15:22:19 +01:00
jsteemann a058699312 use std::make_shared 2015-12-18 23:34:18 +01:00
Jan Steemann 36eac6ffd0 fixed index selection in some queries 2015-12-18 20:16:09 +01:00
Jan Steemann 2b3f3f997b Merge branch 'devel' of https://github.com/arangodb/arangodb into vpack 2015-12-17 10:59:30 +01:00
Michael Hackstein 37b4d2739b Adapted indexes to class version of TRI_col_info_t 2015-12-16 11:42:26 +01:00
Jan Steemann a694b7ef48 make_unique 2015-12-16 11:36:35 +01:00
Jan Steemann 8e7ac689a2 issue #1606: fail gracefully on invalid index definitions 2015-12-14 16:58:05 +01:00
Michael Hackstein 757577de42 Updated VPack addObject to openObject 2015-12-09 11:28:54 +01:00
Michael Hackstein 1e7108d9ca Optimized toVelocyPack functions in Index. Added special implementations for edge and primary indexes. All others TODO 2015-12-07 15:44:28 +01:00
Michael Hackstein 1969149ef3 Added a general toVelocyPack function for indexes 2015-12-07 14:54:38 +01:00
Jan Steemann 5c033f566b Merge branch 'devel' of https://github.com/arangodb/arangodb into vpack 2015-12-04 13:47:08 +01:00
Michael Hackstein 3ea14e66a3 Merge branch 'devel' of github.com:arangodb/arangodb into JHMH 2015-12-03 10:19:17 +01:00
Jan Steemann eb8899d9ae applied changes suggested by cppcheck 2015-12-02 10:17:14 +01:00
Michael Hackstein 7c4e59bf22 Revert "removed unused method" it is actually used in the new Graph
Traverser

This reverts commit 5d2951a15b.
2015-11-26 16:38:44 +01:00
Jan Steemann e29bc893b7 finalized index API changes 2015-11-25 16:44:01 +01:00
Jan Steemann db85c926be added transaction to AssocUnique APIs 2015-11-25 15:57:48 +01:00
Jan Steemann db078f1554 changed some APIs of AssocMulti 2015-11-25 15:40:01 +01:00
Jan Steemann 981c578812 changed other index APIs 2015-11-25 15:05:02 +01:00
Jan Steemann 5d2951a15b removed unused method 2015-11-25 14:59:43 +01:00
Jan Steemann 0ee556d07d added transaction to hash index APIs 2015-11-25 14:55:43 +01:00
Jan Steemann 19b2d28167 pass transaction to index APIs 2015-11-25 14:42:29 +01:00
Jan Steemann 75e4e6e815 added transaction to all signatures 2015-11-24 17:34:23 +01:00
Jan Steemann 5518244942 less iostream-ing 2015-11-24 13:55:06 +01:00
Jan Steemann 82eddeb120 allow using array indexes without specifying the `[*]` extension 2015-11-17 14:03:58 +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
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
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 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
Michael Hackstein c35ccc02d5 Fixed unique-constrain-violated behaviour in SkiplistIndex 2015-10-26 09:28:14 +01: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 66f3840563 attempt to fix leak 2015-10-22 18:24:35 +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
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
Michael Hackstein 7ea4130103 Fixed array indexing if the attribute is not set 2015-10-22 12:13:47 +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
Michael Hackstein 9a58955208 Added failure tests for SkiplistIndex 2015-10-21 13:57:00 +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 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
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 81cd1e9f62 fixed Windows compile issues 2015-10-19 12:43:11 +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 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 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 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 779c242846 modified usage of filters with potentially undefined variables 2015-10-14 11:02:42 +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 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 4ad490eb47 fixed fix 2015-10-13 10:02:24 +02:00
Jan Steemann 39e458142f fixed assertions 2015-10-13 09:59:11 +02:00
jsteemann 46ba49e1bd cppcheck 2015-10-12 22:54:27 +02:00
jsteemann 29b3741156 reworked cost calculations 2015-10-12 22:23:03 +02:00
Jan Steemann 6b2837190e different cost calculation, done except for skiplists 2015-10-12 18:49:47 +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
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 d548bb520b Fixed a true/false missmatch 2015-10-12 10:52:54 +02:00
Jan Steemann b5c9602407 specialization of conditions 2015-10-09 18:10:33 +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 e17edd336c Merge branch 'aql-jmmh-conditions' of https://github.com/arangodb/arangodb into aql-jmmh-conditions 2015-10-08 16:23:04 +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
Michael Hackstein b048f4015f Fixed potential memleaks 2015-10-08 09:47:54 +02:00
Jan Steemann 853fc41077 changed index selection formula for eq-based indexes 2015-10-07 18:58:45 +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 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
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 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
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
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
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 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