WinCache increment loses TTL information
Open, Needs TriagePublic

Description

Symptoms
When incrementing the value of a key, using $cache->incr($key);, the key is reset with an infinite Time To Live (0 in WinCache). This violates the expectation that the increment function preserves TTL.

Results
Throttling is broken because the throttle keys do not expire when they should. As a user performs more actions, they begin accumulating indefinitely, so the user is throttled until the WinCache is manually cleared.

Fix
Reimplement the increment function for WinCache, taking into account the right TTL.

Restricted Application added a subscriber: Aklapper. · View Herald TranscriptDec 13 2018, 7:12 PM

Change 479513 had a related patch set uploaded (by Juan Osorio (Microsoft); owner: Juan Osorio (Microsoft)):
[mediawiki/core@master] Fixes WinCache increment losing TTL.

https://gerrit.wikimedia.org/r/479513