Meta Stack Exchange is where users like you discuss bugs, features, and support issues that affect the software powering all 157 Stack Exchange communities.

What is meta?
Here's how it works:
  1. Any Stack Exchange user can ask a question
  2. The community provides support, votes on ideas, and reports bugs
  3. Your voice helps shape the way Stack Exchange operates

Usually we're presented with an error if a closure would result in the creation of a loop:

Error message

But somehow this question has been closed as a duplicate of this question which is a duplicate of this question which is a duplicate of this question which is a duplicate of this question which is a duplicate of this question which is a duplicate of this question which is a duplicate of this question which is a duplicate of this question which is a duplicate of this question which is a duplicate of this question which is a duplicate of this question which is a duplicate of this question which is a duplicate of this.

Possibly it's because the last few close votes on the question with two suggested duplicates were for the later one and the close system never caught on to the fact that a loop was created as I suppose there is a way out onto another non circular question.

Interested to know what went on though.


And another thing.

This question on meta was closed as a duplicate of this question, which was later closed as a duplicate of the original question. This one is perhaps more straight forward than the above one as there are only 2 questions involved, which makes it more interesting that the system didn't catch it.

I can't see any history of merger or anything unusual in either question, and in both cases it was regular user votes that closed the question rather than moderator binding votes. Odd. The first question has now been reopened after someone noticed the circle.

What happened in this one?

share|improve this question
16  
-1 Not enough recursion. – animuson Feb 27 '13 at 22:57
    
I would imagine that the circular reference logic is not unbounded; i.e., the number of hops it checks is limited. Seldom (if ever) have I seen more than three. – Robert Harvey Feb 27 '13 at 23:09
3  
@RobertHarvey You didn't hover over the links, apparently. – Daniel Fischer Feb 27 '13 at 23:09
    
@DanielFischer: The status bar in my Chrome browser is being hidden by the Task Bar in Windows 7. One of these days I'm going to ask someone about that... – Robert Harvey Feb 27 '13 at 23:10
    
@RobertHarvey Don't maximise the browser window? – Daniel Fischer Feb 27 '13 at 23:12
1  
@DanielFischer: Ick. – Robert Harvey Feb 27 '13 at 23:13
    
@Robert Yes, but fixes the immediate problem ;) – Daniel Fischer Feb 27 '13 at 23:15
    
Your example includes questions closed as duplicates of more than one other question. This makes it much more complicated, multiple branches may create (or not) multiple circular references to multiple points on the chain. Not sure what I'd expect the algorithm to do in this case. – bfavaretto Feb 28 '13 at 19:37
1  
+1 For this. (But also because it's a good question.) – Ben Lee Feb 28 '13 at 22:07
    
@Tim Are you sure that is not that question where it showed status-completed? – wythagoras Mar 6 at 17:42
    
@wythagoras Could be... Could be :/ – Tim Mar 6 at 18:10
up vote 15 down vote accepted

I just caused a similiar case.

Question 1 and 2 are:

Question 2 was closed as a duplicate of question 1. Question 1 had already four duplicate votes. I first tried to close Q1 as a dupe of Q2, but the system prevented the closure because it causes a duplicate loop. Then I tried to close Q1 as off-topic, because it is just a homework dump, not showing any efforts towards solving the problem. This closed the question. However, the four dupe votes overtook my off-topic vote, causing a duplicate loop.

NOTE: I flagged this pair of questions, so it was fixed for this pair by a moderator.


In other words:

When Q1 is closed as a duplicate of Q2, and Q2 has four pending dupe votes pointing towards Q1 at the time Q1 is closed, then it will cause a duplicate loop when a final vote for another reason is cast on question.

Potential fixes:

  1. I don't know the internals of the system, but it looks like there is a check whether closure causes a loop when casting a dupe vote. Also do this check when actually closing the question. If it causes a loop, close the question for an other reason.
  2. Invalidate all close votes that will cause the duplicate loop to be closed. This might be more complicated when having more than two questions involved.
share|improve this answer

You must log in to answer this question.

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