Commit graph

33 commits

Author SHA1 Message Date
RhodeCode Admin
093cf251d5 caches: make sure we init caches on repo names withou '/' to not create a new cache subpath 2022-09-01 22:00:13 +02:00
RhodeCode Admin
4508de422b caches: fixed error for unique non-ascii cache keys 2022-07-25 15:07:29 +02:00
RhodeCode Admin
98cc67d889 caches: added debug and timings 2021-10-12 13:40:31 +02:00
RhodeCode Admin
d811485440 locks: handle refresh thread already started 2021-07-27 10:08:28 +02:00
RhodeCode Admin
8fe339248e caches: fixed wrong except 2021-07-24 08:11:42 +02:00
RhodeCode Admin
7170e63907 caches: use the same lock instance, otherwise we won't release it.
Also handle AlreadyAquired so locks skip that case and not throw a 500 error
2021-07-23 11:21:58 +02:00
RhodeCode Admin
d8aa3deda9 caches: optimized defaults for safer more reliable behaviour 2021-07-22 22:28:32 +02:00
RhodeCode Admin
fe98575ce6 cache: allow controlling lock_auto_renewal via .ini config 2021-07-22 11:47:42 +02:00
RhodeCode Admin
8ec2b58a03 caches: improved locking problems with distributed lock new cache backend 2021-07-18 23:33:46 +02:00
RhodeCode Admin
2b9eeb7a86 redis-lock: strict-redis is what we use. 2021-07-15 14:19:47 +02:00
RhodeCode Admin
8f4dca8494 redis: added better distributed lock implementation. 2021-07-14 15:35:27 +02:00
RhodeCode Admin
14751ae9c1 caches: report damaged DB on key iterations too not only the GET call 2021-06-23 21:37:29 +02:00
Marcin Kuzminski
0d418610b8 caches: log errors when doing an initilize of DB caches. 2020-07-02 18:06:51 +02:00
Marcin Kuzminski
fe96e16646 code: update copyrights to 2020 2020-04-16 00:34:52 +02:00
Daniel Dourvaris
94552dd0df caches: the file backend should report damaged DB in case of failures. 2019-10-15 15:45:42 +02:00
Marcin Kuzminski
08399d7563 caches: added reprs 2019-09-22 18:02:28 +02:00
Marcin Kuzminski
77908a855b dogpile: use connection_pool for redis backend which is faster in gevent scenarios 2019-09-20 19:51:35 +02:00
Marcin Kuzminski
a356085774 caches: synced cache logic with vcsserver. 2019-07-17 14:34:03 +02:00
Marcin Kuzminski
0b076e1f65 caches: updated cache backend to new vcsserver caches implementation. 2019-07-17 00:14:26 +02:00
Marcin Kuzminski
1629ab748a redis: add logging about lock acquire, this should help in case of locked row debugging 2019-02-08 16:08:03 +01:00
Marcin Kuzminski
69933a19e6 cache: use global flock to prevent recursion when using gevent workers. 2019-01-18 17:20:50 +01:00
Marcin Kuzminski
bd1a9c8201 docs: updated copyrights to 2019 2019-01-02 18:13:27 +01:00
Marcin Kuzminski
0faa3e93e1 summary: don't load size on container expand, only on manual action.
- this is too heavy to open without explicit action
- increase locking timeout to 15min
- expose basic info on summary page without expand.
2018-12-27 22:57:53 +01:00
Marcin Kuzminski
0d75142ebc cache: fix overwrite of flock timeout, and improve logging. 2018-08-06 23:25:23 +02:00
Marcin Kuzminski
0946eaebaf caches: use repo.lru based Dict cache. This LRUDict uses Timing Algo to not have to use locking
for the LRU implementation, this it's safer to use for dogpile. We used it before with beaker, so it's
generally more stable.
2018-08-06 00:35:46 +02:00
Marcin Kuzminski
b9e6b76da3 caches: reduce timeouts on flock, and provide error output about filename which we cannot lock at. 2018-08-04 16:11:55 +02:00
Marcin Kuzminski
5e9a2b5c64 caches: use safer method of purging keys from memory dict. During some concurrency tests
we detected that has_key has a race condition, and catching exception is safer.
2018-08-02 12:13:00 +02:00
Marcin Kuzminski
e9e73ec871 caches: use safest possible pickle for cache backends.
- If this crashes we end up in fatal non-recoverable state.
2018-07-23 15:26:36 +02:00
Marcin Kuzminski
f4b8149962 caches: allow debug of max_size reached by the MemoryLRU cache. 2018-07-13 17:29:36 +02:00
Marcin Kuzminski
0e05d6dd64 caches: use a faster LRUDict implementation for LRUMemoryCache 2018-07-12 17:48:12 +02:00
Marcin Kuzminski
a19d4b732a caches: use a gevent compatible file-lock mechanism.
- because of gevent we can run into a deadlock situation and worker freeze because of
each of the workers will try to aquire a lock.
- This should help with the issue and gevent.
2018-07-12 10:40:18 +02:00
Marcin Kuzminski
a48ab8a32d caches: don't use beaker for file caches anymore 2018-07-06 12:55:13 +02:00
Marcin Kuzminski
ddc445856e caches: rewrite of auth/permission caches to dogpile. 2018-07-05 20:14:33 +02:00