23

There seems to be a bug on some sites right now. Here, for instance, the "month" tab (/users?tab=Reputation&filter=month) says that it's the score from 2016-08-01 but some users show their rep from the start of July onward.

It's not like that for everyone. For example, my own month's reputation shows (as it always has before) the figures for August only -- as it does for many other people.

Here's figures for CrossValidated (stats.SE); whuber (circled) and I earn fairly similar reputation amounts week to week. He and I have almost the same quarterly reputation, but his monthly is showing his reputation since the start of July, while mine shows only a few days of reputation.

enter image description here

vs

enter image description here

Is this a bug? Or some temporary issue?

7
  • 1
    I bet it is using the last 30 days, rather than the current month. This would explain the slight difference with the quarter counts.
    – JDH
    Commented Aug 5, 2016 at 20:57
  • 1
    @JoelDavidHamkins But it's not like for everyone! my own reputation shows (as it always has before) the figures for August only -- as it does for many other people.
    – Glen_b
    Commented Aug 5, 2016 at 23:44
  • @JoelDavidHamkins: no, the users pages go by period-to-date, resetting every start of the week, month, quarter or year. Commented Aug 10, 2016 at 17:26
  • The stackexchange.com leagues are correct still (but updated only once a day). Commented Aug 10, 2016 at 17:30
  • 1
    @JoelDavidHamkins Nope, I thought that too after reading a similar report just mentioned at meta.mechanics.stackexchange.com/questions/1688/…; but adding up the last 30 days of those users' rep doesn't give the displayed value, and also it's not a rolling window.
    – Jason C
    Commented Aug 11, 2016 at 22:10
  • My crystal ball tells me Shog9 is about to post here. What do I win if I'm right?
    – Jason C
    Commented Aug 11, 2016 at 22:28
  • 2
    You win the privilege of summarizing my answer on Meta Mechanics, @JasonC!
    – Shog9 Mod
    Commented Aug 11, 2016 at 22:30

1 Answer 1

14

Edit: We have run reputation recalcs for affected users on Cross Validated and affected users there should have the correct month totals now. Other sites will have to wait for another day.


It is temporary. On September 1st, all should be right with the world again. A cached value didn't get reset on August 1st, so July totals carried over.

Background

The daily / weekly / monthly rep totals are stored internally in the Users table, to make retrieving these values fast. Normally when you earn or lose rep (through votes, etc) these values - like your main Reputation value - are merely adjusted by the value of the rep change. So at the start of a new period (day/week/month) the appropriate value has to be reset. This is done by a scheduled task that runs every day at a bit after 00:00:00 UTC.

Except... It didn't run on August 1st. Anywhere. No idea why, but it didn't. So everyone's July reputation totals carried over to August.

...except, sometimes reputation has to be recalculated. If a post is deleted, a user is deleted, etc. then everyone involved has to have their reputation recalculated from scratch - updating the cached values for day/week/month at the same time.

So a bunch of people have the correct reputation for this month, and a bunch more have a value including July's number as well.

For now, I would recommend ignoring the Month tab on the Users page until September.

11
  • "For now, I would recommend ignoring the Month tab on the Users page until September." what would happen if September's script doesn't run either? D:
    – Braiam
    Commented Aug 11, 2016 at 22:30
  • 1
    Nick's got a recalc scheduled for everyone affected, so once that runs this'll be a non-issue @Braiam. I'm told it'll happen tomorrow morning, at which point my advice here will change.
    – Shog9 Mod
    Commented Aug 11, 2016 at 22:32
  • 5
    @Braiam It would start a long tradition of editing this post 12 times per year.
    – Jason C
    Commented Aug 11, 2016 at 22:32
  • "On September 1st, all should be right with the world again" - hm I thought it's the other way 'round (unless you figured a magic way to prevent homework dumps)
    – gnat
    Commented Aug 12, 2016 at 7:03
  • I can see on our site Mechanics.SE, it appears the script didn't run for everyone. For my own points, it shows correct. For about a dozen others, it's wrong. Looks like the script probably ran, but crapped out for some reason. That seems more serious than it "just didn't run" to me. Commented Aug 12, 2016 at 14:20
  • @Pᴀᴜʟsᴛᴇʀ2 it's a global transactional update - there's no partial run involved.
    – Nick Craver Mod
    Commented Aug 12, 2016 at 14:29
  • See edit, @Pᴀᴜʟsᴛᴇʀ2 - this ran for Stats only, other sites (including Stack Overflow) will take longer and will have to wait for now.
    – Shog9 Mod
    Commented Aug 12, 2016 at 15:14
  • So it will wait until September where it will resolve itself, or will you run Nick's recalc script for all sites before that? Commented Aug 18, 2016 at 10:43
  • Recalcs are quite expensive, @shadow... Not ruling it out, but...
    – Shog9 Mod
    Commented Aug 18, 2016 at 16:03
  • @Shog9 meaning loading time will be affected? Commented Aug 18, 2016 at 17:29
  • Loading times? Possibly, if not throttled carefully. Could also result in other things not running, which is kinda how we got into this mess in the first place. @Sha
    – Shog9 Mod
    Commented Aug 18, 2016 at 21:18

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .