|
|
|
|
|
by ilyt
1289 days ago
|
|
Design decisions should really go into docs rather than commits. Out of three (commits, comments, docs), the commits are least approachable, just few changes in the code will erase original commit in the blame. By all means write good commit messages, but crystallize the info in them into changelog or other docs every bigger release |
|
If a what looks like this: Store user full name in session table
The why can look something like this:
The full name is authoritatively stored in the user database and should be looked in using the user name. However, during deploys of the Raticate system, the cache gets invalidated and we need to quickly refresh it. This leads to a thundering herd system, as in incident 5244. By caching the full name in the session table we sidestep this problem entirely.
The reason why the Redis cache was not chosen for this data is because the session object is handed to the checkout system for processing, which can for security reasons, as described in document 7745, not access Redis.