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
3ce837d046
caches: introduce invalidation as a safer ways to expire keys, deleting them are more problematic.
2021-07-23 11:09:12 +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
Milka Kuzminski
444efb13b3
core: speed up cache loading
2020-12-04 22:44:59 +01:00
Milka Kuzminski
f5bed7486e
app: improve logging, and remove DB calls on app startup.
2020-11-10 09:55:47 +01:00
Marcin Kuzminski
1e85bc2f83
license: add helpers to allow users hide license warnings.
2020-07-17 12:40:34 +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
475dda82af
files: use a common function to handle url-by-refs, and fix landing refs for SVN.
...
- fixes #5619
2020-06-03 20:29:26 +02:00
Marcin Kuzminski
fe96e16646
code: update copyrights to 2020
2020-04-16 00:34:52 +02:00
Daniel Dourvaris
3fa756fb2c
files: fixed the repo switcher at flag beeing nor persistens
...
- additionally SVN now reports nice switchet refs as other types of vcs
- fixes #5610
- references #5599 (org issue)
2020-04-03 22:54:42 +02:00
Marcin Kuzminski
94d571c2bd
cython: fixed problems with cythonized decorators on py2.
...
- This is just a temporary fix
- We'll remove this once py3 migration is done
2020-01-08 12:25:40 +01:00
Marcin Kuzminski
491d84ca22
cache: bump file-tree caches to next iteration
2019-11-04 23:05:07 +01: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
e9054ac9e7
ssh: skip loading parts for SSH to make execution of ssh commands faster.
2019-08-28 15:05:48 +02:00
Marcin Lulek
9a3fa67ca9
cache-key: make cleanup safe so we don't cause any errors on exit in case it fails..
2019-08-23 11:05:55 +02:00
Marcin Kuzminski
16f3b5992a
cache-keys: register and self cleanup cache keys used for invalidation to prevent leaking lot of them into DB on worker recycle
2019-08-20 21:18:12 +02:00
Marcin Kuzminski
0cb728cb99
cache: updated cache decorators based on latest code from dogpile
2019-07-23 12:30:39 +02:00
Marcin Kuzminski
3167ea3c86
caches: newly generated cache object should have always unique UIDs to prevent
...
situation when after restart of services we get back to initial cache keys.
2019-07-18 21:12:48 +02:00
Marcin Kuzminski
928652312a
core: added more accurate time measurement for called functions
2019-07-17 16:28:41 +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
e8388893db
caches: add cython compat to our own decorator for caching
2019-02-23 20:07:06 +01: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
Daniel Dourvaris
96fa4e0bdc
py3: remove usage of basestring
2019-01-22 23:06:49 +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
9033601562
logging: use lazy parameter evaluation in log calls.
2018-09-13 17:41:35 +02:00
Marcin Kuzminski
e7c5cbb270
caches: don't try to delete keys if there aren't any to delete.
...
- This is problematic for REDIS backend.
2018-08-22 13:22:39 +02: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
c218e2a9ea
caches: use .refresh() instead of .invalidate()
...
- .invalidate() does a delete of cached valued under a key, which means
in previous logic we delete, get_or_create, and compute.
- .refresh() is simply replacing exising key with newly computed values, this
creates less locks, and it's faster.
2018-08-03 14:34:33 +02:00
Marcin Kuzminski
543be29fea
caches: improve logging.
2018-08-02 22:20:03 +02:00
Marcin Kuzminski
49f08fd080
caches: store computation time inside context manager as helper. Since the with block is full
...
calculation we can use it to calculate the function execution time.
2018-08-02 22:14:42 +02:00
Marcin Kuzminski
64ee0ddc8f
caches: turn off thread scoped caches, and allow .ini override. Thread scoped caches are only usefull for development on using pserve
2018-08-02 18:28:22 +02:00
Marcin Kuzminski
f1497f5afd
caches: new cache context managers.
...
- deprecate beaker cache completly
- use new cache decorators from dogpile
- use a proper per cache key invalidation
2018-08-02 18:04:52 +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