Defect #8794

Circular loop when using relations and subtasks

Added by Dmitriy Nikitin over 6 years ago. Updated over 4 years ago.

Status:ClosedStart date:2011-07-12
Priority:NormalDue date:
Assignee:Jean-Philippe Lang% Done:

0%

Category:Issues planning
Target version:2.3.0
Resolution:Fixed Affected version:1.2.1

Description

On latest 1.2.1 release, if we will create four issues (1,2,3,4) and make the following relations:

  • 2 follows 1
  • 2 is a subtask of 3
  • 4 follows 3
  • 4 is a subtask of 1

the system will go into infinite loop, when the last dependency is created.
Is it possible to notify the user this is not allowed, or may be avoid the infinite loop?

Associated revisions

Revision 11641
Added by Jean-Philippe Lang over 4 years ago

Fixed: Circular loop when using relations and subtasks (#8794).

Revision 11642
Added by Jean-Philippe Lang over 4 years ago

Code cleanup.

Revision 11656
Added by Jean-Philippe Lang over 4 years ago

Merged r11641 and r11642 from trunk (#8794).

History

#1 Updated by Etienne Massip over 6 years ago

  • Target version set to Candidate for next minor release

#2 Updated by Etienne Massip over 6 years ago

Not confirmed yet.

#3 Updated by Etienne Massip over 6 years ago

Now confirmed. Looping stack trace is as follow :

etc.
C:/Ruby187/lib/ruby/gems/1.8/gems/activerecord-2.3.11/lib/active_record/transactions.rb:196    
C:/Aptana RadRails/ailleurs/redmine/app/models/issue.rb:813    
C:/Aptana RadRails/ailleurs/redmine/app/models/issue.rb:777    
C:/Ruby187/lib/ruby/gems/1.8/gems/activesupport-2.3.11/lib/active_support/callbacks.rb:178    
C:/Ruby187/lib/ruby/gems/1.8/gems/activesupport-2.3.11/lib/active_support/callbacks.rb:178    
C:/Ruby187/lib/ruby/gems/1.8/gems/activesupport-2.3.11/lib/active_support/callbacks.rb:166    
C:/Ruby187/lib/ruby/gems/1.8/gems/activesupport-2.3.11/lib/active_support/callbacks.rb:93    
C:/Ruby187/lib/ruby/gems/1.8/gems/activesupport-2.3.11/lib/active_support/callbacks.rb:92    
C:/Ruby187/lib/ruby/gems/1.8/gems/activesupport-2.3.11/lib/active_support/callbacks.rb:92    
C:/Ruby187/lib/ruby/gems/1.8/gems/activesupport-2.3.11/lib/active_support/callbacks.rb:276    
C:/Ruby187/lib/ruby/gems/1.8/gems/activerecord-2.3.11/lib/active_record/callbacks.rb:344    
C:/Ruby187/lib/ruby/gems/1.8/gems/activerecord-2.3.11/lib/active_record/callbacks.rb:251    
C:/Ruby187/lib/ruby/gems/1.8/gems/activerecord-2.3.11/lib/active_record/base.rb:2577    
C:/Ruby187/lib/ruby/gems/1.8/gems/activerecord-2.3.11/lib/active_record/validations.rb:1090    
C:/Ruby187/lib/ruby/gems/1.8/gems/activerecord-2.3.11/lib/active_record/dirty.rb:79    
C:/Ruby187/lib/ruby/gems/1.8/gems/activerecord-2.3.11/lib/active_record/transactions.rb:229    
C:/Ruby187/lib/ruby/gems/1.8/gems/activerecord-2.3.11/lib/active_record/transactions.rb:229    
C:/Ruby187/lib/ruby/gems/1.8/gems/activerecord-2.3.11/lib/active_record/transactions.rb:182    
C:/Ruby187/lib/ruby/gems/1.8/gems/activerecord-2.3.11/lib/active_record/transactions.rb:228    
C:/Ruby187/lib/ruby/gems/1.8/gems/activerecord-2.3.11/lib/active_record/transactions.rb:196    
C:/Ruby187/lib/ruby/gems/1.8/gems/activerecord-2.3.11/lib/active_record/transactions.rb:196    
C:/Aptana RadRails/ailleurs/redmine/app/models/issue.rb:554    
C:/Ruby187/lib/ruby/gems/1.8/gems/activerecord-2.3.11/lib/active_record/associations/association_proxy.rb:215    
C:/Ruby187/lib/ruby/gems/1.8/gems/activerecord-2.3.11/lib/active_record/associations/association_proxy.rb:215    
C:/Aptana RadRails/ailleurs/redmine/app/models/issue_relation.rb:111    
C:/Aptana RadRails/ailleurs/redmine/app/models/issue.rb:857    
C:/Ruby187/lib/ruby/gems/1.8/gems/activerecord-2.3.11/lib/active_record/associations/association_proxy.rb:215    
C:/Ruby187/lib/ruby/gems/1.8/gems/activerecord-2.3.11/lib/active_record/associations/association_proxy.rb:215    
C:/Ruby187/lib/ruby/gems/1.8/gems/activerecord-2.3.11/lib/active_record/associations/association_collection.rb:392    
C:/Aptana RadRails/ailleurs/redmine/app/models/issue.rb:856    
C:/Ruby187/lib/ruby/gems/1.8/gems/activesupport-2.3.11/lib/active_support/callbacks.rb:178    
C:/Ruby187/lib/ruby/gems/1.8/gems/activesupport-2.3.11/lib/active_support/callbacks.rb:178    
C:/Ruby187/lib/ruby/gems/1.8/gems/activesupport-2.3.11/lib/active_support/callbacks.rb:166    
C:/Ruby187/lib/ruby/gems/1.8/gems/activesupport-2.3.11/lib/active_support/callbacks.rb:93    
C:/Ruby187/lib/ruby/gems/1.8/gems/activesupport-2.3.11/lib/active_support/callbacks.rb:92    
C:/Ruby187/lib/ruby/gems/1.8/gems/activesupport-2.3.11/lib/active_support/callbacks.rb:92    
C:/Ruby187/lib/ruby/gems/1.8/gems/activesupport-2.3.11/lib/active_support/callbacks.rb:276    
C:/Ruby187/lib/ruby/gems/1.8/gems/activerecord-2.3.11/lib/active_record/callbacks.rb:344    
C:/Ruby187/lib/ruby/gems/1.8/gems/activerecord-2.3.11/lib/active_record/callbacks.rb:251    
C:/Ruby187/lib/ruby/gems/1.8/gems/activerecord-2.3.11/lib/active_record/base.rb:2577    
C:/Ruby187/lib/ruby/gems/1.8/gems/activerecord-2.3.11/lib/active_record/validations.rb:1090    
C:/Ruby187/lib/ruby/gems/1.8/gems/activerecord-2.3.11/lib/active_record/dirty.rb:79    
C:/Ruby187/lib/ruby/gems/1.8/gems/activerecord-2.3.11/lib/active_record/transactions.rb:229    
C:/Ruby187/lib/ruby/gems/1.8/gems/activerecord-2.3.11/lib/active_record/transactions.rb:229    
C:/Ruby187/lib/ruby/gems/1.8/gems/activerecord-2.3.11/lib/active_record/transactions.rb:182    
C:/Ruby187/lib/ruby/gems/1.8/gems/activerecord-2.3.11/lib/active_record/transactions.rb:228    
C:/Ruby187/lib/ruby/gems/1.8/gems/activerecord-2.3.11/lib/active_record/transactions.rb:196    
C:/Ruby187/lib/ruby/gems/1.8/gems/activerecord-2.3.11/lib/active_record/transactions.rb:196    
C:/Aptana RadRails/ailleurs/redmine/app/models/issue.rb:813    
C:/Aptana RadRails/ailleurs/redmine/app/models/issue.rb:777    
C:/Ruby187/lib/ruby/gems/1.8/gems/activesupport-2.3.11/lib/active_support/callbacks.rb:178    
C:/Ruby187/lib/ruby/gems/1.8/gems/activesupport-2.3.11/lib/active_support/callbacks.rb:178    
C:/Ruby187/lib/ruby/gems/1.8/gems/activesupport-2.3.11/lib/active_support/callbacks.rb:166    
C:/Ruby187/lib/ruby/gems/1.8/gems/activesupport-2.3.11/lib/active_support/callbacks.rb:93    
C:/Ruby187/lib/ruby/gems/1.8/gems/activesupport-2.3.11/lib/active_support/callbacks.rb:92    
C:/Ruby187/lib/ruby/gems/1.8/gems/activesupport-2.3.11/lib/active_support/callbacks.rb:92    
C:/Ruby187/lib/ruby/gems/1.8/gems/activesupport-2.3.11/lib/active_support/callbacks.rb:276    
C:/Ruby187/lib/ruby/gems/1.8/gems/activerecord-2.3.11/lib/active_record/callbacks.rb:344    
C:/Ruby187/lib/ruby/gems/1.8/gems/activerecord-2.3.11/lib/active_record/callbacks.rb:251    
C:/Ruby187/lib/ruby/gems/1.8/gems/activerecord-2.3.11/lib/active_record/base.rb:2577    
C:/Ruby187/lib/ruby/gems/1.8/gems/activerecord-2.3.11/lib/active_record/validations.rb:1090    
C:/Ruby187/lib/ruby/gems/1.8/gems/activerecord-2.3.11/lib/active_record/dirty.rb:79    
C:/Ruby187/lib/ruby/gems/1.8/gems/activerecord-2.3.11/lib/active_record/transactions.rb:229    
C:/Ruby187/lib/ruby/gems/1.8/gems/activerecord-2.3.11/lib/active_record/transactions.rb:229    
C:/Ruby187/lib/ruby/gems/1.8/gems/activerecord-2.3.11/lib/active_record/transactions.rb:182    
C:/Ruby187/lib/ruby/gems/1.8/gems/activerecord-2.3.11/lib/active_record/transactions.rb:228    
C:/Ruby187/lib/ruby/gems/1.8/gems/activerecord-2.3.11/lib/active_record/transactions.rb:196    
C:/Ruby187/lib/ruby/gems/1.8/gems/activerecord-2.3.11/lib/active_record/transactions.rb:196    
C:/Aptana RadRails/ailleurs/redmine/app/models/issue.rb:611    
C:/Ruby187/lib/ruby/gems/1.8/gems/activerecord-2.3.11/lib/active_record/transactions.rb:182    
C:/Aptana RadRails/ailleurs/redmine/app/models/issue.rb:593    
C:/Aptana RadRails/ailleurs/redmine/app/controllers/issues_controller.rb:175    
blablabla...

#4 Updated by Jean-Philippe Lang over 4 years ago

  • Status changed from New to Resolved
  • Assignee set to Jean-Philippe Lang
  • Target version changed from Candidate for next minor release to 2.3.0
  • Resolution set to Fixed

Fixed in r11641.

#5 Updated by Jean-Philippe Lang over 4 years ago

  • Status changed from Resolved to Closed

Merged.

Also available in: Atom PDF