1
0
Fork 0
Commit Graph

7128 Commits

Author SHA1 Message Date
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
Jan Steemann 291891036f internal refactoring of query API 2015-09-18 17:33:39 +02:00
Jan Steemann d1c75013e7 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2015-09-18 17:28:10 +02:00
Jan Steemann 3c4c64cf14 allow multiple collection nodes 2015-09-18 17:27:10 +02:00
Wilfried Goesgens 15b1d7cfd5 Migrate sub-structured replies to swagger2 preproc docu style 2015-09-18 17:02:53 +02:00
Jan Steemann 3e4eab104c changed internal API 2015-09-18 17:00:39 +02:00
Jan Steemann aec802f126 removed unused functions 2015-09-18 16:53:22 +02:00
Michael Hackstein 1a7f414c16 Merge branch 'devel' of github.com:arangodb/arangodb into JHMH 2015-09-18 12:21:39 +02:00
Frank Celler c4d1fff729 new traversal 2015-09-18 10:40:28 +02:00
Jan Steemann fc553f4909 removed iostream includes 2015-09-17 18:46:42 +02:00
Michael Hackstein 1e5b246b6b Included the work of @dothebart that was created on optimizing the condition tree. 2015-09-17 18:27:47 +02:00
Jan Steemann 10edae06b4 cppcheck 2015-09-17 18:25:55 +02:00
Jan Steemann 8769c76971 fixed file descriptor leak 2015-09-17 17:52:06 +02:00
jsteemann 53106f22b1 fixed leak 2015-09-17 14:05:30 +02:00
Wilfried Goesgens b06d03e84f Cleanup documentation for remaining @-tags 2015-09-17 11:15:33 +02:00
jsteemann 0196dc0f51 documentation fixes 2015-09-16 19:58:59 +02:00
Jan Steemann 7dde1fe546 Merge branch 'devel' of https://github.com/arangodb/arangodb into aql-jmmh-conditions 2015-09-16 17:36:57 +02:00
Jan Steemann 2f10135e60 transplanted changes from aql-conditions 2015-09-16 17:36:17 +02:00
Jan Steemann b0798bbb19 first commit, broken 2015-09-16 17:22:09 +02:00
Jan Steemann 7eb93821a7 explicit 2015-09-16 17:15:37 +02:00
Jan Steemann 32113cc031 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2015-09-16 16:58:26 +02:00
Wilfried Goesgens 70a2c74c1b Update RESTAPI documentation handling to work with the swagger 2 api
- use the structures from the swagger for post / reply structures
  - add missing documentation snippets to their respective places
  - fix syntax of documentation blocks
2015-09-16 16:35:13 +02:00
Jan Steemann 907d98f3dd fixes for sync 2015-09-16 16:10:56 +02:00
Jan Steemann 693aa03d51 move pointer forward 2015-09-16 13:47:40 +02:00
jsteemann cb66b1106b less compaction retries 2015-09-16 01:20:17 +02:00
jsteemann 0670f504a4 fixed sizeDead / numberDead calculation on collection load 2015-09-16 01:19:42 +02:00
Jan Steemann dc7ac83354 incremental sync fixes 2015-09-15 14:20:08 +02:00
jsteemann 22e17814e3 additionally allow the following characters in document keys:
`(` `)` `+` `,` `=` `;` `$` `!` `*` `'` `%`
2015-09-15 00:16:08 +02:00
Jan Steemann d2d3594351 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2015-09-14 17:45:09 +02:00
Jan Steemann 75ccd7e2cc fixed incremental sync method 2015-09-14 17:44:12 +02:00
Max Neunhoeffer 49cc899f3c Merge branch 'devel' of ssh://github.com/ArangoDB/ArangoDB into devel 2015-09-14 16:40:35 +02:00
Max Neunhoeffer 60ea475238 Remove a wrong space. 2015-09-14 16:40:17 +02:00
Jan Steemann e08d840b47 replication API documentation 2015-09-14 15:30:00 +02:00
CoDEmanX 4158f7d12b Add AQL function DATE_DAYS_IN_MONTH(), extend DATE_FORMAT()
Conflicts:
	js/server/modules/org/arangodb/aql.js
2015-09-14 11:35:04 +02:00
Jan Steemann 09efe111a6 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2015-09-14 10:53:12 +02:00
Jan Steemann 2419ec939b re-added build directory 2015-09-14 10:52:21 +02:00
Wilfried Goesgens 176b150c46 Implement possibility to add reply grammers via the documentation. 2015-09-14 10:49:28 +02:00
Jan Steemann d9169f964e potential fix for 32 bit version 2015-09-12 21:26:59 +02:00
Jan Steemann ea4754546a clear AQL cache objects when starting a query, fixed a few TODOs in AQL date implementation 2015-09-11 21:23:07 +02:00
Jan Steemann 3f68ea3da0 Merge branch 'devel' of https://github.com/arangodb/arangodb into replication-sync-collections 2015-09-11 17:16:06 +02:00
Jan Steemann d7a3b51e1b additional sync method 2015-09-11 17:13:31 +02:00
Jan Steemann b0a924c5a8 sync 2015-09-11 11:56:38 +02:00
Willi Goesgens ac2acabd5d Work on formatting and grammer 2015-09-11 11:25:34 +02:00
Jan Steemann 41844d2b1e fixed typos 2015-09-11 10:32:37 +02:00
CoDEmanX 6fba9c5284 Additional AQL date functions: DATE_DAYOFYEAR, DATE_ISOWEEK, DATE_LEAPYEAR, DATE_QUARTER, DATE_ADD, DATE_SUBTRACT, DATE_DIFF, DATE_COMPARE and DATE_FORMAT.
Unit tests incomplete and untested. Behavior of some functions might need adjustments. ISO duration cache needs to be cleared on every AQL query to avoid a memory leak.

Please rebuild Aardvark and see TODOs in code. Also added Windows shortcuts to ignore list.
2015-09-11 06:23:36 +02:00
Jan Steemann bead727a32 initial work for better incremental synchronization 2015-09-10 18:17:58 +02:00
Willi Goesgens 778d2c84cb Work on sub-structured data to be propper formatted for swagger. 2015-09-10 10:57:42 +02:00
CoDEmanX 8cf82b1cf3 Add two missing backticks to unbreak docu blocks 2015-09-09 22:01:55 +02:00
Jan Steemann f077af1594 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2015-09-09 17:43:38 +02:00
Jan Steemann 6e290db783 fixed typos 2015-09-09 17:43:34 +02:00
Willi Goesgens e1ae661ae0 Work on multi-dimensional swagger post data 2015-09-09 17:40:51 +02:00
Willi Goesgens eb9e03f3f0 Upgrade the REST-API documentation to to swagger V2.0
Wrap lines in examples.
2015-09-09 15:21:18 +02:00
Frank Celler 3439838b44 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2015-09-09 14:49:42 +02:00
Frank Celler 3734a754b9 handle CTRL-C in console thread 2015-09-09 14:49:08 +02:00
Jan Steemann 0735277830 removed IndexWatermarks again... not needed 2015-09-09 14:22:58 +02:00
Jan Steemann 3e39dd088c better clear the block 2015-09-08 17:47:43 +02:00
Jan Steemann a7b51c39da added tests 2015-09-08 17:34:14 +02:00
Michael Hackstein fdde6a69c6 Added failure tests for new implementation of HashIndex. And fixed a memleak there. 2015-09-08 15:35:21 +02:00
Jan Steemann 560a039f3e added tests 2015-09-08 14:22:23 +02:00
Michael Hackstein 1afd19e550 Fixed the resizing of AssocUnique. It was different from AssocMulti which cased the nonUnique index to be faster than the unique one 2015-09-08 11:48:57 +02:00
Jan Steemann 29d37eb346 added diagnosis functions 2015-09-07 20:48:42 +02:00
Jan Steemann 8b599b5274 changed some include headers around 2015-09-07 17:09:10 +02:00
Jan Steemann b6a1684605 primary index speedup 2015-09-07 16:22:39 +02:00
Jan Steemann 7696423482 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2015-09-07 13:44:17 +02:00
Willi Goesgens aec58c64c6 Add cast for windows 2015-09-07 13:36:06 +02:00
Jan Steemann 39939fc1c9 primary index initial insertion speedup 2015-09-07 13:05:02 +02:00
Jan Steemann 0404cb098f temporarily disable watermarks 2015-09-07 11:08:22 +02:00
Jan Steemann 21ae579072 potential fix for issue #1474 2015-09-07 09:53:58 +02:00
CoDEmanX 8aa78dcb7f Fix some more typos 2015-09-05 17:18:04 +02:00
Jan Steemann b9c8972477 index watermarks preparations 2015-09-04 18:14:39 +02:00
Jan Steemann e602ca5662 issue #1471: document() vs documents() parameters (_key and _id) 2015-09-04 18:13:23 +02:00
Jan Steemann 6f2ad068ee whitespace 2015-09-04 14:57:16 +02:00
Jan Steemann 47360f4511 added tests 2015-09-04 14:21:31 +02:00
Jan Steemann 439279bf7e properly initialize member 2015-09-04 10:59:40 +02:00
Jan Steemann c6e44dde1d made two methods private 2015-09-04 10:59:28 +02:00
Jan Steemann cd3dd77e9a removed unused method 2015-09-04 10:59:18 +02:00
Willi Goesgens 771c291042 Merge pull request #1472 from CoDEmanX/devel
More Americanization
2015-09-04 09:15:30 +02:00
Jan Steemann 06760a2c45 fixed broken index scan 2015-09-03 22:49:53 +02:00
CoDEmanX 3a9648d78a More Americanization 2015-09-03 22:25:43 +02:00
Jan Steemann 4e0a3e6505 fix memory usage confusion 2015-09-03 20:12:50 +02:00
Michael Hackstein 5322b4b35b Merge branch 'devel' of github.com:arangodb/arangodb into devel 2015-09-03 16:25:29 +02:00
Michael Hackstein 630c8fd42f Improved Primary Sequential read 2015-09-03 16:25:24 +02:00
Jan Steemann 0e454b7a3e abort startup when wrong alignment is detected 2015-09-03 15:10:48 +02:00
Jan Steemann ec61d921f6 fixed typo 2015-09-03 13:55:07 +02:00
Michael Hackstein f5169e1ebc Merge branch 'devel' of github.com:arangodb/arangodb into devel 2015-09-03 13:54:08 +02:00
Michael Hackstein 74c9221d9d Removed numFields and replaced it by numPaths which is knonw by the inde superclass 2015-09-03 13:54:05 +02:00
Michael Hackstein 46e8a1e0fb Removed debug output 2015-09-03 10:16:15 +02:00
Michael Hackstein 5861fecdb7 The HashIndex is now able to be built up in a parallelized way 2015-09-03 10:16:15 +02:00
Michael Hackstein 26fdd92685 Updated the Primary index to new version of AssocUnique. 2015-09-03 10:16:15 +02:00
Michael Hackstein 481cb1b7dd Removed const in AssocMulti batch insert. It was non-const casted internally... 2015-09-03 10:16:15 +02:00
Jan Steemann c89cf82c6b constified 2015-09-02 17:37:28 +02:00
Jan Steemann 8ef9d1ea78 whitespace 2015-09-02 17:26:31 +02:00
Jan Steemann 28ba8dc10e simplified 2015-09-02 17:24:52 +02:00
Jan Steemann 62b4a165b3 removed unused cases 2015-09-02 17:16:40 +02:00
Jan Steemann 282e13afb4 preparation for index watermarks 2015-09-02 16:24:14 +02:00
Jan Steemann c01bebe917 do not destroy HttpsCommTask too early 2015-09-02 15:56:29 +02:00
Jan Steemann a40683bac0 properly shutdown SSL connections in case the accept fails
otherwise we may get into an endless loop of retries
2015-09-02 15:24:35 +02:00
Jan Steemann 31c9de3aef explicit cast to avoid VS warnings 2015-09-02 13:50:49 +02:00
Jan Steemann c91c13e08b test of ARM detection 2015-09-02 13:33:17 +02:00
Jan Steemann 2e617ac0cc Merge branch 'american-english' of https://github.com/CoDEmanX/ArangoDB into devel
Conflicts:
	arangod/Wal/Slots.cpp
	lib/Basics/debugging.cpp
	lib/Basics/files.cpp
2015-09-02 13:14:49 +02:00
Jan Steemann 6a3f479c98 simplifications 2015-09-02 10:28:50 +02:00
Jan Steemann 0e802d6438 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2015-09-02 10:20:18 +02:00
Jan Steemann a80d6635ab create fat datafiles
This prevents SIGBUS when a sparse datafile is accessed and the disk is full. In
this case the mmapped region is not necessarily backed by physical memory, and
accessing the memory may crash the program
2015-09-02 10:18:24 +02:00
CoDEmanX 956b396e43 Change spelling of 'initialize' to American English (actual code and files) 2015-09-01 17:29:22 +02:00
CoDEmanX b4593a7e82 Change spelling of 'initialize' to American English (comments and log messages only) 2015-09-01 17:07:21 +02:00
Michael Hackstein bb03d0001b Fixed memlead in index operator. Destructor was not virtual 2015-09-01 15:38:25 +02:00
Michael Hackstein 027445697d Renamed SkiplistIndex2 to SkiplistIndex ;) 2015-09-01 15:05:49 +02:00
Michael Hackstein 165d2f1630 Fixed a memory leak thx @jsteemann 2015-09-01 15:05:49 +02:00
Michael Hackstein 786126f307 Removed obsolete file 2015-09-01 15:05:49 +02:00
Michael Hackstein 40a56efa24 Using bounds checking when accessing the intervals of skiplist index 2015-09-01 15:05:48 +02:00
Michael Hackstein 2e3321a112 Explicitly initialized SkiplistIteratorInterval 2015-09-01 15:05:48 +02:00
Michael Hackstein 02b3a0614e Properly initialized objects of SkiplistInterval 2015-09-01 15:05:48 +02:00
Michael Hackstein b73718400e Fixed invalid read 2015-09-01 15:05:48 +02:00
Michael Hackstein c2b0220fd5 Style fix2 2015-09-01 15:05:48 +02:00
Michael Hackstein 2aed925ddc Fixed bugs in SkiplistIndex2. Introduced by refactoring 2015-09-01 15:05:48 +02:00
Michael Hackstein dd20dc4c7f Finished with C++ification of SkiplistIndex and index operators. Now to be tested. 2015-09-01 15:05:47 +02:00
Michael Hackstein 26d64776c1 C++ified index-operator. Removed the free function now everything is handled properly via destructors 2015-09-01 15:05:47 +02:00
Michael Hackstein 13b7e00436 Wrong renaming of index operator 2015-09-01 15:05:47 +02:00
Michael Hackstein e01f8f6b0f Fixes for C++ification of skiplist 2015-09-01 15:05:47 +02:00
Michael Hackstein f81b962058 Get the IndexRangeBlock used to C++ified Skiplist 2015-09-01 15:05:47 +02:00
Michael Hackstein 3c55dbb201 C++ified index operators. More to follow here 2015-09-01 15:05:46 +02:00
Michael Hackstein cb9e1b0e98 Moved some functionality from skiplist-helper into the skiplist and C++ified it. Not yet done 2015-09-01 15:05:46 +02:00
Claudius Weinberger f52beeacb0 fixed invalid index lookupus 2015-09-01 12:38:51 +00:00
Michael Hackstein b8b129d84c The primary index now uses the Hash-cache again 2015-08-31 11:33:12 +02:00
Jan Steemann 2499dca0a3 compile debug function conditionally 2015-08-31 10:32:01 +02:00
Jan Steemann a3ee707f6f less creations of empty headers maps 2015-08-30 22:11:18 +02:00
Jan Steemann 47695e9bd0 less headers used 2015-08-29 02:17:25 +02:00
Jan Steemann dfa749ecbc less headers included 2015-08-28 13:54:02 +02:00
Michael Hackstein b591220c01 Fixed Memory calculation of new Primary Index 2015-08-28 11:02:19 +02:00
Michael Hackstein 90db96a6dc Merge branch 'devel' of github.com:arangodb/arangodb into primary_eimer 2015-08-28 10:45:50 +02:00
Jan Steemann 22c8b5518e removed unused function 2015-08-28 10:30:23 +02:00
Michael Hackstein 3e2d5449ac The Primary index does not expose it's internals any more. 2015-08-28 10:23:43 +02:00
Michael Hackstein ef259e5088 Removed external resizing of index in document-collection 2015-08-28 10:19:39 +02:00
Michael Hackstein 4acdbff808 Primary Index does not need to free anything 2015-08-28 10:15:38 +02:00
Michael Hackstein 876853dd9f Fixed a bug with skip over primary index 2015-08-28 09:28:24 +02:00
Michael Hackstein 81fa8018b0 Improved primary index lookups to use parameter by reference instead of byPointer. less error prone. Fixed some issues with it. 2015-08-28 09:28:24 +02:00
Michael Hackstein d6839ad519 Fixed another BAD_ACCESS 2015-08-28 09:28:24 +02:00
Michael Hackstein d1ac131294 Fixed a bad access bug 2015-08-28 09:28:24 +02:00
Michael Hackstein e0e373fcf1 Removed shape counting test 2015-08-28 09:28:24 +02:00
Michael Hackstein 87b28a1277 Pleased the compiler for the new Primary Index in document-collection. 2015-08-28 09:28:23 +02:00
Michael Hackstein a786b797d7 Adoption of document-collection to new primary index 2015-08-28 09:28:23 +02:00
Michael Hackstein ea75372fbe The primary index cannot store const master pointer ;( 2015-08-28 09:28:23 +02:00
Michael Hackstein 082e49f2c1 Further adoptions of internal functionality to new Primary index 2015-08-28 09:28:23 +02:00
Michael Hackstein 610501ff7f Adopted the auth to new primary index 2015-08-28 09:28:23 +02:00
Michael Hackstein fa5e1cc66f Adopted the collection export to new primary index 2015-08-28 09:28:23 +02:00
Michael Hackstein efcaed8f6d Constified the index return values and removed obsolete functions in primary index 2015-08-28 09:28:23 +02:00
Michael Hackstein 035de49b2f Adopted the transactions to the new Primary Index implementation. Removed nth queries. 2015-08-28 09:28:22 +02:00
Michael Hackstein 6d4d41387b Implemented sequential read and any read in Transaction.h 2015-08-28 09:28:22 +02:00
Michael Hackstein 0e90f396d7 Piped through readRandom and readSequential in PrimaryIndex. Used in Transaction 2015-08-28 09:28:22 +02:00
Michael Hackstein b3ca4fd098 Implemented all functions required for AssocUnique in Primary index 2015-08-28 09:27:47 +02:00
Michael Hackstein 0d7b939f40 Typedef for AssocUnique in Primary. Added isEqualElmElm and isEqualKeyElm implementation 2015-08-28 09:27:47 +02:00
Jan Steemann 3c6a1cfe66 fix potential leak 2015-08-27 14:05:27 +02:00
Jan Steemann 2b6de5143b removed unused include 2015-08-27 11:17:07 +02:00
Jan Steemann fcc748d49c added slightly faster path for non-array inserts 2015-08-27 10:58:32 +02:00
Jan Steemann afb342eefd split big ExecutionBlock file into smaller files 2015-08-27 00:28:20 +02:00
Jan Steemann 1a2449193e skiplist code cleanup 2015-08-26 22:52:41 +02:00
Jan Steemann 92297c368a removed unused function 2015-08-26 22:00:40 +02:00
Jan Steemann 1184b7e705 removed unused functions 2015-08-26 21:59:15 +02:00
Jan Steemann a5a9e74e8b renamed functions 2015-08-26 21:49:31 +02:00
Jan Steemann cbd43b3839 renamed files 2015-08-26 21:49:15 +02:00
Jan Steemann 21793ff9f7 cppcheck 2015-08-26 21:36:44 +02:00
Jan Steemann 2a886e6648 some index code cleanup 2015-08-26 21:35:46 +02:00
Jan Steemann 09928c71c1 added common base class for hash and skiplist index 2015-08-26 18:14:24 +02:00
Jan Steemann 473ed2c418 return memory usage for all indexes 2015-08-26 17:13:41 +02:00
Michael Hackstein 2212be29c0 Merge branch 'devel' of github.com:arangodb/arangodb into devel 2015-08-26 17:10:14 +02:00
Michael Hackstein 7257bf0b9d Skiplist and HashIndex will now print their figures if requested 2015-08-26 17:10:02 +02:00
Max Neunhoeffer c0f1b72bab Add "sensible" madvise calls.
Essentially the strategy is: A newly created and a newly opened file
is advised to be "SEQUENTIAL ACCESS", because we will either write to
it or scan it sequentially. As soon as it is sealed, we switch the
advice to "RANDOM ACCESS", because this should be the normal pattern and
aggressive read-aheads tend to be bad. The collector and the compactor
switch a sealed file back to "SEQUENTIAL ACCESS" just before they scan
it and back to "RANDOM ACCESS", when they are done.

Furthermore, all data files in a collection are advised with "WILLNEED"
just before the collection is scanned during loading.

Finally, the actual hash table of AssocMulti is advised to be random
access, although this is an anonymous map given to us by malloc and not
a memory mapped file.
2015-08-26 16:45:26 +02:00
Jan Steemann d0bd94f4c5 fixed Json 2015-08-26 16:23:26 +02:00
Jan Steemann a3550e331e fixed makefiles 2015-08-26 16:17:45 +02:00
Jan Steemann 61243ebb7b Merge branch 'devel' of https://github.com/arangodb/arangodb into array_indexing
Conflicts:
	arangod/HashIndex/hash-array-multi.cpp
	arangod/Indexes/HashIndex.cpp
2015-08-26 15:01:29 +02:00
Jan Steemann 7329414456 fixed index size calculations 2015-08-26 14:55:58 +02:00
Michael Hackstein 4a3b8007bd Fixed memory calculation of HashIndexMulti. And added index information for it 2015-08-26 14:38:23 +02:00
Frank Celler 2d45445a10 added additional-threads option 2015-08-26 13:13:47 +02:00
Jan Steemann e73f546be2 added assertion 2015-08-26 12:51:31 +02:00
Jan Steemann 5bf32095a1 print abortion 2015-08-26 12:02:43 +02:00
Michael Hackstein 4effa2291e Merge branch 'devel' of github.com:arangodb/arangodb into array_indexing 2015-08-26 10:41:27 +02:00
Michael Hackstein 6ac7f83e3d Fixed rollback and added index information to log.performance 2015-08-26 10:34:42 +02:00
Jan Steemann b0c12a9d57 added indexFigures 2015-08-26 10:21:36 +02:00
Jan Steemann f4c542795c getIndexes(true) 2015-08-26 09:48:48 +02:00
Michael Hackstein c308065eec Removed obsolete hash index implementation 2015-08-26 09:46:49 +02:00
Jan Steemann 9374a25822 removed unused error code 2015-08-25 19:55:48 +02:00
Jan Steemann 242c706844 use unique_ptr 2015-08-25 19:22:57 +02:00
Jan Steemann 0d0e652bdc fixed VS compile warnings 2015-08-25 18:02:00 +02:00
Jan Steemann 75ad81401b slightly improved logging 2015-08-25 17:35:54 +02:00
Jan Steemann a440d65ee2 fix limits 2015-08-25 16:57:00 +02:00
Michael Hackstein 40c1361244 Merge branch 'devel' of github.com:arangodb/arangodb into array_indexing 2015-08-25 16:40:31 +02:00
Max Neunhoeffer 93caabb397 Fix fix. 2015-08-25 16:17:02 +02:00
Max Neunhoeffer 66498a56c3 Fix hash function for AssocMulti usage in hash-multi-index. 2015-08-25 16:13:43 +02:00
Jan Steemann 1911d4086d forgot to commit 2015-08-25 16:08:46 +02:00
Jan Steemann 7540059f36 uint32_t => uint64_t 2015-08-25 15:08:09 +02:00
Jan Steemann 52af8c5781 added comments 2015-08-25 13:16:07 +02:00
Max Neunhoeffer 7957df9215 Merge branch 'array_indexing' of ssh://github.com/ArangoDB/ArangoDB into array_indexing 2015-08-25 13:04:48 +02:00
Jan Steemann 1af238a6d5 added tests for requireFromIncluded 2015-08-25 12:50:58 +02:00
Max Neunhoeffer 203e9a5195 Make hashcache in AssocMulti switchable-off. Does not work yet. 2015-08-25 12:46:47 +02:00
Michael Hackstein 57c6103458 Revert "The AssocUnique index now requires only an element to insert it. They key is derived"
This reverts commit ea70a948e254716905a7619e72b41fbef4f66695.
2015-08-25 09:40:29 +02:00
Jan Steemann 03fa10dad8 less initial syncing when resuming replication 2015-08-24 17:39:11 +02:00
Michael Hackstein 2d6af6e872 The AssocUnique index now requires only an element to insert it. They key is derived 2015-08-24 17:14:39 +02:00
Michael Hackstein ba8264eada AssocUnique is now a templated index. Foundation to move primary index to use it 2015-08-24 16:41:16 +02:00
Michael Hackstein 855cc0fc96 Removed all functionality from hash-array. To be removed 2015-08-24 14:55:55 +02:00
Michael Hackstein f9647962d7 Moved HashIndex/hash-array.h to Basics/AssocUnique.h 2015-08-24 14:17:49 +02:00
Michael Hackstein 80e1f6decc Started templatefying hash-array to AssocUnique 2015-08-24 14:16:45 +02:00
Michael Hackstein 2dd0f7cf7f Continued @neunhoef 's on simplification of hash-index. The index itself will never free anything, calling class is responsible for freeing now. 2015-08-24 13:14:35 +02:00
Jan Steemann 37da76546c re-introduced tracking of replication "clients" 2015-08-24 12:02:57 +02:00
Michael Hackstein d43c515b56 Fixed a bug in hash index buckets. When resizing the table was not nulled correctly. 2015-08-24 11:22:53 +02:00
Jan Steemann b08713d768 added tests and documentation 2015-08-24 11:05:26 +02:00
Jan Steemann 893f9592f8 Merge branch 'devel' of https://github.com/arangodb/arangodb into replication 2015-08-24 09:58:04 +02:00
Michael Hackstein ac453f918e Merge branch 'array_indexing' of github.com:arangodb/arangodb into array_indexing 2015-08-23 18:24:48 +02:00
Michael Hackstein 44b8cc67ff Fixed some memleaks 2015-08-23 18:24:41 +02:00
Jan Steemann 0defef6e0b do not fetch vocbase in loop 2015-08-22 23:24:36 +02:00
Jan Steemann 387e3e9cd4 make removeByExample, replaceByExample and updateByExample use AQL internally 2015-08-22 23:22:24 +02:00
Jan Steemann b58ecfe206 added firstTick() 2015-08-21 17:11:40 +02:00
Jan Steemann 9e08b1ebc5 add tickRanges() function 2015-08-21 17:00:32 +02:00
Max Neunhoeffer 673956d484 Activate number of buckets. 2015-08-21 16:28:45 +02:00
Michael Hackstein 85c5885c76 Merge branch 'array_indexing' of github.com:arangodb/arangodb into array_indexing 2015-08-21 16:21:38 +02:00
Max Neunhoeffer f7126d4974 Fix a typo. 2015-08-21 16:21:18 +02:00
Max Neunhoeffer 1dce162b4b Merge branch 'array_indexing' of ssh://github.com/ArangoDB/ArangoDB into array_indexing
Conflicts:
	arangod/Indexes/HashIndex.cpp
2015-08-21 16:11:28 +02:00
Max Neunhoeffer 479f81f760 Buckets for hash-array, also C++-ize it. 2015-08-21 16:05:17 +02:00
Jan Steemann 31a6547d4c fix replication resumption 2015-08-21 15:57:24 +02:00
Michael Hackstein b708a7ae68 Merge remote-tracking branch 'origin/devel' into array_indexing 2015-08-21 15:34:49 +02:00
Michael Hackstein 85b58a6d8d Fixed sparse indexes 2015-08-21 14:07:32 +02:00
Michael Hackstein 9bb7c0dec6 The skiplist index is now able to index arrays as well 2015-08-21 11:04:04 +02:00
Jan Steemann 20af58dd09 Merge branch 'devel' of https://github.com/arangodb/arangodb into replication 2015-08-21 09:30:16 +02:00
Jan Steemann 8ee12f7a27 binary-safe back-references 2015-08-20 21:01:43 +02:00
Jan Steemann ffde050e0d check for empty collections list 2015-08-20 20:25:01 +02:00
Jan Steemann f0ef3d450f refactoring 2015-08-20 18:25:47 +02:00
Michael Hackstein 8491d84c96 Added forgotten header file for last commit 2015-08-20 15:27:49 +02:00
Michael Hackstein 838a91b125 Fixed rollback for insertion of multiple elements. Is now able to define a unique constrain on array entries 2015-08-20 15:13:56 +02:00
Michael Hackstein cd5fe6aceb Removed debug output 2015-08-20 15:11:18 +02:00
Michael Hackstein 4bb8508d82 Implemented a new improved version of the Array index insertion function. 2015-08-20 14:03:17 +02:00
Willi Goesgens 7b41912489 Merge pull request #1448 from CoDEmanX/devel
Fixes for Windows (.sh line endings, ignored files, remove bad file)
2015-08-20 09:37:31 +02:00
CoDEmanX f35bd8728f Fix target path for js files
Folder must be omitted from destination path, or a another folder will be created as parent and break file structure.
2015-08-20 03:23:14 +02:00
Jan Steemann 97d67e4399 use binary-safe string representations 2015-08-20 01:46:20 +02:00
Jan Steemann 1be3733a64 moved some handlers around
fix disappeared handlers
2015-08-20 01:26:52 +02:00
Jan Steemann ea382e1f4c removed triagens::rest::Handler 2015-08-20 01:26:50 +02:00
Jan Steemann c5f36e6cd5 fixed forward declaration 2015-08-19 17:54:06 +02:00
Jan Steemann 4e595fda13 simplifications 2015-08-19 17:18:05 +02:00
Jan Steemann f587b2ca6a replication refactoring 2015-08-19 16:13:53 +02:00
Jan Steemann 878641f674 some replication refactoring 2015-08-19 15:32:24 +02:00
Max Neunhoeffer 844e028389 Merge branch 'devel' of ssh://github.com/ArangoDB/ArangoDB into devel 2015-08-19 14:46:28 +02:00
Max Neunhoeffer ff135a10ad Add some overrides to silence a clang compiler warning. 2015-08-19 14:46:06 +02:00
Jan Steemann 90dafd61c0 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2015-08-19 13:11:52 +02:00
Jan Steemann 56966f7081 fix warning 2015-08-19 13:07:04 +02:00
Jan Steemann 6268a20124 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2015-08-19 12:56:51 +02:00
Jan Steemann e01e874073 don't use void* 2015-08-19 12:56:32 +02:00
Michael Hackstein 241905c42c Merge branch 'devel' of github.com:arangodb/arangodb into array_indexing 2015-08-19 12:51:53 +02:00
Jan Steemann 63f9782fc3 removed unused arango_fe 2015-08-19 12:51:38 +02:00
Michael Hackstein 1a4d59d954 Merge branch 'devel' of github.com:arangodb/arangodb into array_indexing 2015-08-19 11:57:12 +02:00
Jan Steemann 6680f3bb5a fix Mac build 2015-08-19 11:56:41 +02:00
Michael Hackstein 59e8ea3fad Merge branch 'devel' of github.com:arangodb/arangodb into array_indexing 2015-08-19 11:56:34 +02:00
Jan Steemann 6076bc632e fixed Makefile 2015-08-19 11:37:51 +02:00
Jan Steemann 2c640965b8 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2015-08-19 11:19:46 +02:00
Jan Steemann 9f0384284f moved files 2015-08-19 11:19:37 +02:00
Willi Goesgens 01a1273a87 Merge pull request #1444 from aurelijusb/documentation
Small documentation improvements
2015-08-19 10:23:36 +02:00
Michael Hackstein 5c0ec7d318 Indexed my first array and was able to get it out again \o/. Unique constraint is not yet working though 2015-08-19 09:55:46 +02:00
Jan Steemann bc7e0f7bbd issue #1445: Object literal simplificatin does not support pseudo-variables NEW and OLD 2015-08-19 09:25:46 +02:00
Jan Steemann 8677da48b1 replication API enhancements, not yet ready 2015-08-18 18:08:20 +02:00
Jan Steemann 7a366c605d small refactoring 2015-08-18 14:24:19 +02:00
Jan Steemann 05c9005fcc small refactoring for replication applier functions 2015-08-18 14:13:26 +02:00
Jan Steemann 3c14a44c1b simpler parsing of replication input 2015-08-18 13:33:51 +02:00
Michael Hackstein 481a106a7d Implemented a helper function to extract all values in an array to be inserted 2015-08-18 11:37:09 +02:00
Michael Hackstein 2bcef2e03b Added a function that recursivly allocates and fills index_elements if one or more paths have to be expanded. 2015-08-18 09:09:36 +02:00
Jan Steemann 338dd7e100 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2015-08-17 18:41:13 +02:00
Jan Steemann 4e771b2728 replication improvements 2015-08-17 18:41:05 +02:00
Jan Steemann ffe4fb556b pacify VS 2015-08-17 17:05:52 +02:00
Michael Hackstein b0df08822f Removed obsolete function for HashIndex insertion 2015-08-17 16:10:43 +02:00
Michael Hackstein 33c3c0474e Removed obsolte header file in old hashindex 2015-08-17 16:04:18 +02:00
Michael Hackstein e867181a72 Merge remote-tracking branch 'origin/eimerung_hashindex' into array_indexing 2015-08-17 15:58:53 +02:00
Jan Steemann 22cff81a5c added status methods for logfiles 2015-08-17 15:04:26 +02:00
Max Neunhoeffer 6ac0913dbe Adapt to changed VocShaper. 2015-08-17 12:57:52 +02:00
Max Neunhoeffer f279bf5778 Fix unit tests with latest hash index changes. 2015-08-17 12:57:52 +02:00
Max Neunhoeffer dac7fb06e0 Finish change to hash index. Compiles, unit-tests still broken in one place. 2015-08-17 12:57:52 +02:00
Max Neunhoeffer 5fe46dbcb9 Some more changes. Not yet through. 2015-08-17 12:57:52 +02:00
Max Neunhoeffer 7217111192 First step for hashindex, this revision is broken.
Changes are only done half-way.
2015-08-17 12:57:52 +02:00
Michael Hackstein 0baf8143d9 Fixed a bug in the usage of HashIndex tables, with the new index element. 2015-08-17 12:43:14 +02:00
Michael Hackstein 33935db4b6 Attribtue missing will not be returned when inserting elements into the index any more. 2015-08-17 12:43:14 +02:00
Michael Hackstein ae989cf2ca Skiplist index now uses the unified index_element. 2015-08-17 12:43:14 +02:00
Michael Hackstein 1d774ade12 Removed hash_index_element and used the unified index_element instead. Also moved allocation of a new index entry closer to the spot where it is actually filled. This allows for lazy allocation. 2015-08-17 12:43:14 +02:00
Michael Hackstein 8a4ce5bb8b Added a new general purpose index_element 2015-08-17 12:43:13 +02:00
Michael Hackstein 5a5d1de7ea Moved the insertion of elements into an indox to the super class. Is only used for Skiplist and Hash. Might probably be used by other indicies later 2015-08-17 12:43:13 +02:00
Michael Hackstein d69c9a920e Fixed an issue with expanded attribteus to pid strings 2015-08-17 12:43:13 +02:00
Jan Steemann 453aa78633 use std::vector 2015-08-17 12:43:13 +02:00
Max Neunhoeffer 1ba7587fc0 Rename ThreadProtector to DataProtector. 2015-08-17 12:43:12 +02:00
Jan Steemann 56231413be use unique_ptr 2015-08-17 12:43:12 +02:00
Jan Steemann a8428877e7 some cleanup 2015-08-17 12:43:12 +02:00
Jan Steemann 28da1d5066 use std::vector 2015-08-17 12:43:11 +02:00
Michael Hackstein 8e3e2d547d Do not push <Class const> into vector. It does not work everywhere 2015-08-17 12:43:11 +02:00
Jan Steemann 98106510d2 remove CONST_CAST helper 2015-08-17 12:43:11 +02:00
Max Neunhoeffer 43a4ba0285 Delete a TRI_vector_t usage. 2015-08-17 12:43:10 +02:00
Jan Steemann fc900b6451 remove compiler warning 2015-08-17 12:43:10 +02:00
Max Neunhoeffer aac9f393d8 Fix bugs with database lists on coordinator. 2015-08-17 12:43:10 +02:00
Jan Steemann 205d1e73ed fix Visual Studio compile errors 2015-08-17 12:43:09 +02:00
Michael Hackstein d7d00a5d0d Fixed index comparision with multiple components. Introduced by AttributeName format. 2015-08-17 12:43:09 +02:00
Max Neunhoeffer a18faae89f Untemplatify ThreadProtector for those with gcc < 4.9.2.
We will revert this later once everybody has gcc >= 4.9.2.
2015-08-17 12:43:09 +02:00
Jan Steemann ba84a982b6 use unique_ptr 2015-08-17 12:43:09 +02:00
Jan Steemann 907e6368c6 some unused function cleanup 2015-08-17 12:43:09 +02:00
Jan Steemann 5494563601 removed forward for non-existing type 2015-08-17 12:43:08 +02:00
Michael Hackstein c2338d80d0 A user can now create an indux on attribute[*] which will put an index on attribute and ignores the expand flag. Does not harm any feature in AQL now. 2015-08-17 12:43:08 +02:00
Max Neunhoeffer d474c31513 Use ThreadProtector for lists of databases. 2015-08-17 12:43:07 +02:00
Michael Hackstein 17a8f73a06 Now the input for indexes is parsed using the new attribute parser. This means the flags for expanded Attributes are set. Also introduced a transformation function to transform an attributeName list back into a string. 2015-08-17 12:43:07 +02:00
Jan Steemann 40aab297fb remove useless reserve 2015-08-17 12:43:06 +02:00
Jan Steemann cc42bd1c85 log logfiles location on startup 2015-08-17 12:43:06 +02:00
Jan Steemann a775195737 fixed potential value overruns 2015-08-17 12:43:06 +02:00
Michael Hackstein 8fbb2739b0 The indexes can now use the new AttributeName struct which contains a flag if the attribute should be Array-Indexed. Right now this flag is hard-coded to false in all cases and not persisted. 2015-08-17 12:43:05 +02:00
Jan Steemann 91ac382c33 fixed invalid iterator 2015-08-17 12:43:05 +02:00
Jan Steemann c245f103e1 no explicit make_pair 2015-08-17 12:43:05 +02:00
Jan Steemann d0fd1ea373 use unique_ptr 2015-08-17 12:43:05 +02:00
Jan Steemann 46565e4daf fix parallel insertion 2015-08-17 12:43:05 +02:00
Jan Steemann 171119ed01 hold write lock on databases less often 2015-08-17 12:43:04 +02:00
Aurelijus Banelis 9c7c1ad88b Documentation: include createEdgeCollection in example
As it is useful for newcomer to know, how to create "vertex" and "relation".
It is first example, so all inforamtion should be included to try example.
2015-08-16 18:57:12 +03:00
Aurelijus Banelis cd9df3460e Documentation: Example of user data in _createDatabase 2015-08-15 22:22:27 +03:00
Jan Steemann 95a346edd2 fix leak 2015-08-14 18:17:22 +02:00
Jan Steemann 12d2a754fa remove unused header 2015-08-14 18:17:05 +02:00
Jan Steemann 18ba2d5659 fail if a task with non-parsable code is registered 2015-08-14 11:56:54 +02:00
Jan Steemann 7a7e14556f fix v8 assertion 2015-08-14 11:39:01 +02:00
Jan Steemann 006bf3d2c1 Revert "fix assertion"
This reverts commit 9e1ffac077452187acd4d652b4480495f4a2b608.
2015-08-14 11:37:39 +02:00
Jan Steemann 0aa3bb6104 fix assertion 2015-08-14 11:37:00 +02:00