22

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?

  • 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 Aug 5 '16 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 Aug 5 '16 at 23:44
  • @JoelDavidHamkins: no, the users pages go by period-to-date, resetting every start of the week, month, quarter or year. – Martijn Pieters Aug 10 '16 at 17:26
  • The stackexchange.com leagues are correct still (but updated only once a day). – Martijn Pieters Aug 10 '16 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 Aug 11 '16 at 22:10
  • My crystal ball tells me Shog9 is about to post here. What do I win if I'm right? – Jason C Aug 11 '16 at 22:28
  • 2
    You win the privilege of summarizing my answer on Meta Mechanics, @JasonC! – Shog9 Aug 11 '16 at 22:30
13

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.

  • "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 Aug 11 '16 at 22:30
  • 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 Aug 11 '16 at 22:32
  • 5
    @Braiam It would start a long tradition of editing this post 12 times per year. – Jason C Aug 11 '16 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 Aug 12 '16 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. – Pᴀᴜʟsᴛᴇʀ2 Aug 12 '16 at 14:20
  • @Pᴀᴜʟsᴛᴇʀ2 it's a global transactional update - there's no partial run involved. – Nick Craver Aug 12 '16 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 Aug 12 '16 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? – ShaWiz Aug 18 '16 at 10:43
  • Recalcs are quite expensive, @shadow... Not ruling it out, but... – Shog9 Aug 18 '16 at 16:03
  • @Shog9 meaning loading time will be affected? – ShaWiz Aug 18 '16 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 Aug 18 '16 at 21:18

You must log in to answer this question.

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