1
0
Fork 0
Commit Graph

68 Commits

Author SHA1 Message Date
Frank Celler cb0aaa435f backport Scheduler from devel (#5533) 2018-06-28 13:26:04 +02:00
Dan Larkin-York a4c0e28571 Avoid memset on non-POD types for portability. (#5559) 2018-06-12 13:12:46 +02:00
Dan Larkin-York 041dbc04be Fix a small logic issue in cache resize metadata method. (#4630) 2018-02-20 18:46:07 +01:00
Simon Grätzer cfd500c53c Fixing an issue with intermediate commits (#4006)
* Fixing an issue with intermediate commits

(cherry picked from commit 7f61fb9be0f22904be21e9dd26c3870035a5b318)

* Only check collection counts without intermediate commits

* Fixing assert
2017-12-12 23:15:41 +01:00
Jan e8ef1a21b6 fix some issues found by coverity code scan (#3256) 2017-09-21 10:26:59 +02:00
Jan 5165155ed1 Bug fix/fixes 0609 (#3227)
* do not use V8 variant of AQL functions in early optimization stage when a C++ variant is available

* additionally, simplify AQL function definitions and aliases

* warn when more than 90% of max mappings are in use

* added C++ variant of replication catchup

* added `--log.role` option

* updated CHANGELOG

* removed non-existing scheduler.threads option from config

* removed useless __FILE__, __LINE__ invocations

* updated CHANGELOG

* allow a priority V8 context

* remove TRI_CORE_MEM_ZONE

* try to fix Windows errors & warnings

* cleanup

* removed memory zones altogether

* exclude system collections from collection tests
2017-09-13 16:28:21 +02:00
Simon Grätzer 88d01b89b5 Optimizations for Caches and Graph Traversals (#3169) 2017-08-31 18:33:10 +02:00
Dan Larkin e2fdab431c Fix compiler warnings and needlessly failing catch tests. (#3171) 2017-08-31 17:27:25 +02:00
jsteemann 5677baf561 fixed some MSVC warnings 2017-08-30 13:11:55 +02:00
Dan Larkin 6a068d062e Changed some tasks to post through Scheduler instead of directly. (#3159) 2017-08-30 10:41:41 +02:00
Dan Larkin 18e8c19271 Improvements to CachedValue internals and handling. (#3126)
* Added checks everywhere for CachedValue::construct.

* Enforce 16MiB limit on keys and 4GiB limit on values.

* Protected members behind function calls in anticipation of format change.

* Shrunk CachedValue struct.

* Fixed alignment of CachedValues.

* Fixed improper comparison.
2017-08-28 15:07:16 +02:00
Frank Celler 6d08d4f4aa Bug fix/scheduler delete (#3077)
* removed delete call

* cleanup

* lower cpu activity of log thread too

* fix log messages

* do not enter threads into unordered_set, as it is unneeded

* do not compile in calls to disabled plan cache

* moved AQL regex cache from thread local variables to a class of its own

* more sensible thread creation and destruction
2017-08-25 12:00:17 +02:00
Jan a212f45a86 Bug fix/issues 2308 (#3117)
* remove API docs for endpoints that were deleted in 3.0

* remove unused variable

* set all scalar values in the ctor, so check tools do not complain

* move Result objects

* prevent potential nullptr access

* remove ambiguous boolean parameter with no clear meaning

* make code check tools happy

* don't allow copying cache Findings, allow moving Results

* the debug functionality for counting RocksDB key ranges was broken

this produced sporadic test failures

* remove superfluous iostream include

* fix range checks

* don't leak if an error happens during database removal

* try to simplify Result a bit

* try to deletion checks a bit more robust
2017-08-24 14:47:22 +02:00
Simon Grätzer b76b53d87a Fix edge cache behaviour (#3079)
* fixing cache resizing bug

* reenabling test
2017-08-22 10:40:52 +02:00
Dan Larkin 77c63bdc9f Fixed a deadlock issue in cache shutdown. (#2661) 2017-06-26 16:30:32 +02:00
Dan Larkin a3ae2b7191 Augmented cache API and fixed a potential deadlock scenario. (#2579)
* Augmented cache API and fixed a potential deadlock scenario.

* The RocksDBEdgeIndex now tries to read up to 10 times form the cache on lock_timeout. Instead of rewriting everything after first attempt
2017-06-19 17:28:04 +02:00
Dan Larkin a0c4e3d9df Improved RocksDB engine statistics with docs and rest endpoint (#2598)
* Improved statistics reporting for RocksDB engine (including cache info).

* Added documentation about db._engineStats().

* Added rest endpoint for engine stats.
2017-06-18 22:55:25 +02:00
jsteemann f40a6b622f removed unused includes 2017-06-08 13:37:30 +02:00
Michael Hackstein 52406567cd Replaced EdgeCursors callback to return cid,rev instead of _id. Does less costly copying and comparision internally 2017-05-31 17:49:46 +02:00
Dan Larkin a4aa1eedd2 Updated plain cache to properly count evictions. 2017-05-30 13:04:30 -04:00
Michael Hackstein b9d2faa7cc Added warmup function for indexes.
Squashed commit of the following:

commit bc0472d212b2efef0d7b1b8a36f2b43e8432ba86
Merge: eb47631 5f87674
Author: Michael Hackstein <michael@arangodb.com>
Date:   Mon May 29 09:39:31 2017 +0200

    Merge branch 'devel' of github.com:arangodb/arangodb into feature/rocks-index-warmup

commit eb476310b0ca6165be10b37b960933886c2757f5
Merge: d725f21 32149d2
Author: Michael Hackstein <michael@arangodb.com>
Date:   Mon May 29 09:00:41 2017 +0200

    Merge branch 'devel' of github.com:arangodb/arangodb into feature/rocks-index-warmup

commit d725f21f7d61f7c79ba31fc0338881e35f4d8f48
Author: Michael Hackstein <michael@arangodb.com>
Date:   Fri May 26 15:53:23 2017 +0200

    Activated collection warmup in Cluster Mode. Added a test for collection warmup (SingleServerOnly)

commit 132bf4f9565b0dcf4ec9f84e93897b482a67ce7f
Author: Michael Hackstein <michael@arangodb.com>
Date:   Fri May 26 12:46:20 2017 +0200

    Implemented client-side warmup. It can now be triggered via http and arangosh

commit 78ea449dff86118814a2f87bdb59dc16544d92b6
Author: Michael Hackstein <michael@arangodb.com>
Date:   Fri May 26 11:25:40 2017 +0200

    Fixed assertion.

commit dae80f6277dde1a52eadda506858cc36e235bd55
Author: Michael Hackstein <michael@arangodb.com>
Date:   Fri May 26 11:08:46 2017 +0200

    Improved the CuckooIndexEstimator computeEstimate function. It is now much better on collections with many different values

commit 7abf57876511ba369d7a577e1995d4575e98c7c8
Author: Michael Hackstein <michael@arangodb.com>
Date:   Fri May 26 11:06:43 2017 +0200

    Edge index warmup will now first check if a document is stored and if not will insert it. Furthermore it resizes the cache with an estimate of how many documents will be most likely inserted

commit 890d8ad4cdfd155249f060fedd5c798b9531d556
Author: Michael Hackstein <michael@arangodb.com>
Date:   Fri May 26 11:04:47 2017 +0200

    Adjusted thresholds in transactional cache. Wastly increased the amount of tries to get the lock. Lowered the fill-grade boundaries

commit 60972ab7151a3acb78e1aae4149de11d0da7aceb
Author: Michael Hackstein <michael@arangodb.com>
Date:   Fri May 26 10:45:38 2017 +0200

    Added new Logtpopic CACHE that should be used to log important information regarding caches, like debug ouput on evictions / resizing, or memory-pressure resizing going on

commit 2dfacb9aef6e3fde169032514baca386786d059c
Author: Michael Hackstein <michael@arangodb.com>
Date:   Fri May 26 10:44:21 2017 +0200

    Fixed an assertion in index iterator. It expected _from/_to to be cached but we modified to cache entire document

commit f05beccef65853c30eda1859a39c28ea2295bc71
Merge: 13c6abf 5c46430
Author: Michael Hackstein <michael@arangodb.com>
Date:   Fri May 26 07:56:58 2017 +0200

    Merge branch 'devel' of github.com:arangodb/arangodb into feature/rocks-index-warmup

commit 13c6abfbc2ddb451a689011110411df68247435e
Author: Michael Hackstein <michael@arangodb.com>
Date:   Wed May 24 09:52:01 2017 +0200

    Added a getExtra feature for the edgeIndex. It now returns the complete edge as extra (temporary). Modified the EdgeCache to cache token and edge document (temporary). Added a warmup Function to collections that is used to warmup the index caches on demand.
2017-05-29 09:40:58 +02:00
Dan Larkin 5ec026b659 Added sizeHint method for caches to improve warmup procedures. 2017-05-24 13:45:53 -04:00
Dan Larkin e935c83762 Exposed isMigrating() method on caches. 2017-05-24 10:44:34 -04:00
Dan Larkin 71846d0ad7 Added hinting so cache table is aware of eviction rate problems. 2017-05-23 19:05:50 -04:00
Dan Larkin 78c80c3a3d Doubled size of cache buckets to increase associativity. 2017-05-23 17:51:47 -04:00
Dan Larkin 8decc3c8b8 Fixed some uninitialized values. 2017-05-17 09:38:31 -04:00
Andreas Streichardt af4da5796f More windows warnings 2017-05-16 17:00:31 +02:00
Dan Larkin 5817de528f Adjusted some cache constants and added eviction rate tracking. 2017-05-15 13:24:30 -04:00
jsteemann 11cf6ed5c6 re-set fillgrades back to original values 2017-05-15 16:47:41 +02:00
jsteemann fc44711531 adjust fillgrades as suggested by @neunhoef 2017-05-15 15:03:29 +02:00
jsteemann f49a32dff9 added missing casts 2017-05-15 14:39:27 +02:00
jsteemann ac6c5a79d7 minor enhancements for the cache 2017-05-15 14:29:14 +02:00
jsteemann a325870e13 fix invalid usage of refcount 2017-05-15 12:06:08 +02:00
Jan Christoph Uhde b7ca835671 release findings sooner if they contain many entries 2017-05-12 16:09:12 +02:00
Dan Larkin 0d89b6d0a4 Changed default cache size to something reasonable. 2017-05-11 16:15:06 -04:00
jsteemann ecff3cbb90 remove unused include 2017-05-10 12:58:09 +02:00
jsteemann a00a24e458 remove unnecessary includes 2017-05-10 12:57:22 +02:00
Dan Larkin f4a8b6911f Fixed data layout of cache buckets for 32-bit systems. 2017-04-27 18:25:42 -04:00
Dan Larkin eaac6c013c Fixed issue with cache transactions. 2017-04-07 16:58:22 -04:00
Simon Grätzer 61791509d6 Merge branch 'engine-api' of https://github.com/arangodb/arangodb into engine-api 2017-04-06 12:41:59 +02:00
Simon Grätzer fce51594ac Fixing hash index semantics 2017-04-06 12:41:47 +02:00
jsteemann 617e23e25a cppcheck 2017-04-06 11:48:07 +02:00
jsteemann 8b57f1996e Merge branch 'devel' of https://github.com/arangodb/arangodb into engine-api 2017-04-06 11:19:41 +02:00
Simon Grätzer a90e62bc02 Conversion errors 2017-04-06 10:50:40 +02:00
Dan Larkin ae84e8ac84 Cache workaround to pass upgrade test. 2017-04-05 12:55:16 -04:00
jsteemann eaba8c5db0 make begin() behave correctly when there is OOM 2017-04-05 14:51:09 +02:00
Dan Larkin dd0a7c8869 Move assertions to maintainer mode conditional blocks. 2017-04-04 19:17:23 -04:00
Dan Larkin c339b641b8 Fixed allocation bug for many-cache situation. 2017-04-03 11:44:37 -04:00
Dan Larkin 9590d911ea Removed some alignas directives. 2017-03-27 17:32:44 -04:00
Dan Larkin c2f370f99b Fixed an alignment bug in cache. 2017-03-24 13:39:05 -04:00