1
0
Fork 0
Commit Graph

246 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
Jan Steemann 31a6547d4c fix replication resumption 2015-08-21 15:57:24 +02:00
Jan Steemann f0ef3d450f refactoring 2015-08-20 18:25:47 +02:00
Jan Steemann 4e771b2728 replication improvements 2015-08-17 18:41:05 +02:00
Jan Steemann 22cff81a5c added status methods for logfiles 2015-08-17 15:04:26 +02:00
Jan Steemann 2d91797685 remove useless reserve 2015-08-06 13:16:56 +02:00
Jan Steemann 658eed7654 hold write lock on databases less often 2015-08-05 14:18:23 +02:00
Jan Steemann 1af98f40fb added reserve() 2015-08-04 16:23:21 +02:00
Jan Steemann b591706484 fixed locking 2015-08-04 15:42:39 +02:00
Jan Steemann 6d7ccd7699 move shaper to cxx 2015-07-28 17:38:31 +02:00
Jan Steemann 3d3024a54e cppcheck 2015-07-28 09:51:24 +02:00
Jan Steemann 2ae83d03c5 split _logfilesLock into two separate locks 2015-07-27 16:24:57 +02:00
Jan Steemann 7e4b615248 simplify call to mmap 2015-07-27 16:24:25 +02:00
Jan Steemann d53c526aaa split legend cache into multiple buckets, to mitigate locking issues 2015-07-27 16:03:55 +02:00
Jan Steemann a677c425a6 lock condition less frequently 2015-07-27 13:31:09 +02:00
Jan Steemann e8205e5dc0 use new and delete for TRI_server_t 2015-07-21 11:57:04 +02:00
Jan Steemann a5db59cc47 remove some locks in HttpServer and friends 2015-07-17 17:48:45 +02:00
Willi Goesgens 11f640e874 try to create the database directories if they don't exist; some installers fail to transport empty directories. 2015-06-03 11:38:53 +02:00
Jan Steemann 4dde6e49cd goodbye barriers, welcome ditches 2015-05-28 10:23:30 +02:00
Jan Steemann 03461903fe fixed over-eager V8 context entering and exiting in non-cluster mode 2015-05-27 14:02:13 +02:00
Jan Steemann a9f2769ffa now compiles and links 2015-05-23 04:31:13 +02:00
Jan Steemann 8dbcf0e23f Visual Studio adjustments 2015-04-30 11:46:55 +02:00
Jan Steemann c352ba6a03 small logging refactoring 2015-03-26 03:09:07 +01:00
Frank Celler 4c5d57f1b8 merged Exceptions.h and Exception.h 2015-03-23 14:05:19 +01:00
Jan Steemann d1d4daefb8 updated documentation 2015-03-18 17:46:48 +01:00
Jan Steemann 9f65e16143 set logfile status under a lock 2015-03-18 17:45:33 +01:00
Jan Steemann 9295755202 track the number of (ignored) errors during recovery 2015-03-18 17:45:21 +01:00
Jan Steemann 5c8cfecc9e added method to force-change a logfile status 2015-03-18 17:44:23 +01:00
Jan Steemann 659ef9e6af made _uncollectedLogfileEntries an atomic variable 2015-03-18 17:39:36 +01:00
Jan Steemann cc72257363 abort recovery if one of a collection's datafiles cannot be opened 2015-03-17 18:28:26 +01:00
Jan Steemann bc4ad22ab6 parallel secondary index building when loading collections 2015-03-03 10:52:51 +01:00
Jan Steemann 39d72b1530 more sanity checks on startup & shutdown 2015-01-29 09:51:11 +01:00
Jan Steemann 70fba85a67 enforce an error code 2015-01-22 15:20:57 +01:00
Jan Steemann d534a41e21 recovery tests
Conflicts:
	arangod/Wal/LogfileManager.cpp

Conflicts:
	arangod/Wal/LogfileManager.cpp
2015-01-19 18:14:03 +01:00
Jan Steemann 63bf4c888a flush WAL status file after collection to shorten recovery 2015-01-18 21:06:57 +01:00
Jan Steemann b54dfae96f removed several JSON functions 2015-01-13 01:31:04 +01:00
Jan Steemann f3b142849f fixed leaks during reverts 2015-01-03 01:28:23 +01:00
Jan Steemann 20e7fe7a7a the great rename: array => object, list => array 2014-12-18 21:07:06 +01:00
Jan Steemann db1ddb880b wait for sync thread outside of lock 2014-12-17 14:21:24 +01:00
Jan Steemann 5d1e77f3ea more log output 2014-11-14 15:30:43 +01:00
Jan Steemann cbe8150e97 fixed potential reason for segfault 2014-11-06 12:59:50 +01:00
Jan Steemann d1bf47a14a fixed issue when rolling back remove operations that could not remove from indexes 2014-11-01 18:03:57 +01:00
Jan Steemann 8bb213e7ba sort and cache list expression values
emplace

fixed wrong assertion
2014-10-29 01:02:20 +01:00
Jan Steemann 13d240384f less namespace pollution 2014-10-28 00:24:37 +01:00
Jan Steemann 0e96a31b6a oops, forgot to commit 2014-10-24 23:55:31 +02:00
Jan Steemann 3a3c4a9f93 issue #1063: Docs: measuring unit of --wal.logfile-size 2014-10-24 23:43:58 +02:00
Jan Steemann 40ddb93eee flush log at shutdown 2014-10-18 00:44:44 +02:00
Jan Steemann bb0e11499d fixed races reported by helgrind 2014-10-16 19:32:14 +02:00
Jan Steemann dcb9427b6f rewrote transaction contexts 2014-10-16 15:53:28 +02:00
Jan Steemann b759815b68 fixed race condition in SynchroniserThread 2014-10-15 19:26:36 +02:00