1
0
Fork 0
Commit Graph

1498 Commits

Author SHA1 Message Date
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
Michael Hackstein 4effa2291e Merge branch 'devel' of github.com:arangodb/arangodb into array_indexing 2015-08-26 10:41:27 +02:00
Jan Steemann f4c542795c getIndexes(true) 2015-08-26 09:48:48 +02:00
Jan Steemann 75ad81401b slightly improved logging 2015-08-25 17:35:54 +02:00
Michael Hackstein 40c1361244 Merge branch 'devel' of github.com:arangodb/arangodb into array_indexing 2015-08-25 16:40:31 +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 1af238a6d5 added tests for requireFromIncluded 2015-08-25 12:50:58 +02:00
Jan Steemann 03fa10dad8 less initial syncing when resuming replication 2015-08-24 17:39:11 +02:00
Jan Steemann 37da76546c re-introduced tracking of replication "clients" 2015-08-24 12:02:57 +02:00
Jan Steemann 893f9592f8 Merge branch 'devel' of https://github.com/arangodb/arangodb into replication 2015-08-24 09:58:04 +02:00
Jan Steemann 0defef6e0b do not fetch vocbase in loop 2015-08-22 23:24:36 +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
Jan Steemann 20af58dd09 Merge branch 'devel' of https://github.com/arangodb/arangodb into replication 2015-08-21 09:30:16 +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 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
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
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 59e8ea3fad Merge branch 'devel' of github.com:arangodb/arangodb into array_indexing 2015-08-19 11:56:34 +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 4e771b2728 replication improvements 2015-08-17 18:41:05 +02:00
Michael Hackstein e867181a72 Merge remote-tracking branch 'origin/eimerung_hashindex' into array_indexing 2015-08-17 15:58:53 +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 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
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
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