David Taylor
d7b48d0229
FIX: Handle nil
values in DistributedCache#defer_get_set
(stable) ( #15980 )
...
Themes often cache `nil` values in a DistributedCache. This bug meant that we were re-calculating some values on every request, AND triggering message-bus publishing on every request.
This fix should provide a significant performance improvement for busy sites.
2022-02-18 08:51:14 +00:00
Alan Guo Xiang Tan
a8667b5454
PERF: Defer setting of distributed cache in more spots.
...
See follow up commit for rational.
Follow-up to 8cfe203383
2021-06-04 09:13:18 +08:00
Alan Guo Xiang Tan
8cfe203383
PERF: Defer setting of distributed cache in performance critical paths.
...
Setting a key/value pair in DistributedCache involves waiting on the
write to Redis to finish. In most cases, we don't need to wait on the
setting of the cache to finish. We just need to take our return value
and move on.
2021-06-03 09:30:52 +08:00
Neil Lalonde
d166c38ab7
REFACTOR: distributed_cache is moved to the message_bus gem
2018-10-15 15:01:45 -04:00
Sam
a35f2984e9
FIX: support Arrays with Marshal dump in distributed cache
...
Theme cache uses arrays here
2018-08-08 16:44:56 +10:00
Guo Xiang Tan
7673684d91
Allow DistributedCache#delete
to not publish changes.
2017-10-20 23:03:42 +08:00
Guo Xiang Tan
57d9830bd2
FIX: DistributedCache without namespace mode wasn't working.
2017-10-20 22:32:41 +08:00
Guo Xiang Tan
fe1e78ddf4
Make PostgreSQL failover work with distributed cache.
2017-10-20 17:15:29 +08:00
Sam
71ad3a48c2
Correct flaky distributed cache test
...
make distributed cache more testable
2017-08-01 16:11:48 -04:00
Guo Xiang Tan
5012d46cbd
Add rubocop to our build. ( #5004 )
2017-07-28 10:20:09 +09:00
Sam Saffron
1d27b33100
FIX: DistributedCache would fail serialization in some cases
2016-01-30 09:01:15 +11:00
Sam Saffron
49ca248186
FEATURE: allow distributed cache to handle Set as value
2015-06-10 06:13:36 +10:00
Sam
17d843a0ad
FIX: upgrade resilient distributed cache
...
only load messages in distributed cache if discourse version matches
2015-05-22 11:22:12 +10:00
Sam
803feefd54
MessageBus handles readonly redis now, no need to wrap it
2015-05-04 12:21:00 +10:00
Sam
6993fb36ac
FIX: distributed cache failing to clear certain values sometimes
...
this makes the cache resilient to cross machine / forking concerns
2015-05-01 15:25:23 +10:00
Robin Ward
5b3f99aa50
Don't blow up if Redis switches to READONLY
2015-04-24 14:37:16 -04:00
Régis Hanol
45dbdb6896
FEATURE: custom emojis
2014-12-23 01:12:26 +01:00
Sam
564fb0b100
FIX: distributed cache leak and potential infinite loop
2014-11-13 18:31:42 +11:00
Sam
81f391e97f
only publish distributed cache to user_id -1
2014-11-12 09:58:20 +11:00
Sam
c55fa9d5c8
PERF: distributed cache class to help sync caches between processes
2014-11-12 09:44:44 +11:00