20

Best demonstrated with a screenshot:

enter image description here

Pretty sure there were less of them earlier. The question itself has just the single annotation.

6
  • 18
    That should have been [triplicate]. Jan 24, 2013 at 0:50
  • 1
    LEFT OUTER JOIN gone bad, maybe?
    – bfavaretto
    Jan 24, 2013 at 1:14
  • 5
    developers developers
    – user102937
    Jan 24, 2013 at 1:14
  • 1
    I just saw one with closed repeated 10 times
    – Taryn
    Jan 24, 2013 at 1:38
  • 5
    Too bad a question, one close is not enough.. Jan 24, 2013 at 3:13
  • To be fair enough questions get closed on meta that you would have thought every possible scenario would have been thoroughly tested... Jan 24, 2013 at 6:25

1 Answer 1

13

This was related to a recent change I made to question titles...

... and the problem was caching*, always caching!

On the home page, we cache a list of recent question objects in ASP.NET's HttpRuntime.Cache, which subsequent requests will use to render your interesting questions.

These question objects have a NiceTitle property that will append those [closed], [duplicate], [migrated] status suffixes, and the code went something like this:

var suffix = GetQuestionStateSuffix();
if (suffix.HasValue())
    Title += " " + suffix;
return Title;

This worked fine in testing; the homepage looked as beautiful as ever. It looked beautiful because none of the normal homepage code used this NiceTitle. **

Mobile, on the other hand, does use it. And this is where the intermittent bug came in. Those cached objects kept getting their Title happily overwritten each time a mobile user rendered a closed question's summary.

The fix is in and deployed - totally my bad.

* and a misguided assignment statement :)

** please don't ask why every rendered Title isn't done through NiceTitle... please.

3
  • 2
    Brace-less if block? shudders Jan 24, 2013 at 6:30
  • 1
    Abbreviated for publication :P Jan 24, 2013 at 6:31
  • @NullUserExceptionอ_อ braces take up hard drive space. He's just being conservative. Jan 24, 2013 at 14:26

You must log in to answer this question.

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