summaryrefslogtreecommitdiff
path: root/changelogs/unreleased
diff options
context:
space:
mode:
authorToon Claes <toon@gitlab.com>2017-05-02 22:52:14 +0200
committerToon Claes <toon@gitlab.com>2017-05-08 08:48:38 +0200
commit6a915d6f2d462a376d8cecc062dd58e520339b5e (patch)
treef1c27077f36a5505c24686d8ba7a8c83f49e9a36 /changelogs/unreleased
parent8b9cd3c072768ca810d2b33009e35d93a05e417f (diff)
downloadgitlab-ce-6a915d6f2d462a376d8cecc062dd58e520339b5e.tar.gz
Limit `update_tracked_fields` to write to database once/hour
Every time a user logs in or out, the Trackable attributes are written to the database. This is causing a lot of load on the database, for data that isn't really critical. So to avoid the database being hammered, add a Gitlab::ExclusiveLease before writing trackable attributes to the database. This lease expires after an hour, so only when the attributes were written more than an hour ago, they can be written again. Otherwise they are ignored.
Diffstat (limited to 'changelogs/unreleased')
-rw-r--r--changelogs/unreleased/tc-cache-trackable-attributes.yml4
1 files changed, 4 insertions, 0 deletions
diff --git a/changelogs/unreleased/tc-cache-trackable-attributes.yml b/changelogs/unreleased/tc-cache-trackable-attributes.yml
new file mode 100644
index 00000000000..4a2cf50893a
--- /dev/null
+++ b/changelogs/unreleased/tc-cache-trackable-attributes.yml
@@ -0,0 +1,4 @@
+---
+title: "Limit User's trackable attributes, like `current_sign_in_at`, to update at most once/hour"
+merge_request: 11053
+author: