Commit graph

46 commits

Author SHA1 Message Date
RhodeCode Admin
82f0f8d214 core: updated copyright to 2024 2024-11-12 16:39:07 +01:00
RhodeCode Admin
7d196811c4 feat(redis): added ability to specify a redis key prefix for all cache regions of dogpile that use redis backend 2024-10-23 22:11:27 +02:00
RhodeCode Admin
9a46cbc018 chore(caches): cleanup cache lib and added cleanup backend 2024-08-07 13:40:30 +02:00
RhodeCode Admin
191d46f64a chore(rc-cache): synced with CE code 2024-02-19 09:04:35 +01:00
RhodeCode Admin
49911056f3 fix(permission-flush): use delete method for permission cache invalidation as it's multi-process safe.
Fixes RCCE-23
2024-01-12 15:25:27 +01:00
RhodeCode Admin
42301154fc copyrights: updated for 2023 2023-07-18 11:57:27 +02:00
RhodeCode Admin
90f49ed2ad caches: new updated rc_cache with archive cache module and python3 changes 2023-07-18 11:27:55 +02:00
RhodeCode Admin
5357fb11f2 libs: removed utf8 markers 2023-07-18 10:57:59 +02:00
RhodeCode Admin
ebdcda5477 caches: dbm backend needs to use bytes to list keys 2023-05-11 12:11:16 +02:00
RhodeCode Admin
38d873cd45 rccache: refactor and update code to support latest dogpile code changes (mostly on custom serializers) 2023-03-20 22:07:42 +01:00
RhodeCode Admin
b5255c2532 python3: fixed some compat problems 2023-03-06 22:20:25 +01:00
RhodeCode Admin
85f6a432fb caches: fixed unicode mismatch with types 2022-10-26 11:17:53 +02:00
RhodeCode Admin
298c38a0c3 caches: fixed unicode errors on non-ascii cache keys 2022-10-26 10:38:13 +02:00
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