Переглянути джерело

Fixed: ActiveRecord::StaleObjectError exception on closing a set of circular duplicate issues (#1105).

git-svn-id: http://redmine.rubyforge.org/svn/trunk@1360 e93f8b46-1217-0410-a6f0-8f06a7374b81
tags/0.8.0-RC1
Jean-Philippe Lang 16 роки тому
джерело
коміт
1d570a40ff
2 змінених файлів з 4 додано та 0 видалено
  1. 2
    0
      app/models/issue.rb
  2. 2
    0
      test/unit/issue_test.rb

+ 2
- 0
app/models/issue.rb Переглянути файл

@@ -153,6 +153,8 @@ class Issue < ActiveRecord::Base
# Close duplicates if the issue was closed
if @issue_before_change && !@issue_before_change.closed? && self.closed?
duplicates.each do |duplicate|
# Reload is need in case the duplicate was updated by a previous duplicate
duplicate.reload
# Don't re-close it if it's already closed
next if duplicate.closed?
# Same user and notes

+ 2
- 0
test/unit/issue_test.rb Переглянути файл

@@ -48,6 +48,8 @@ class IssueTest < Test::Unit::TestCase
IssueRelation.create(:issue_from => issue1, :issue_to => issue2, :relation_type => IssueRelation::TYPE_DUPLICATES)
# And 3 is a dupe of 2
IssueRelation.create(:issue_from => issue2, :issue_to => issue3, :relation_type => IssueRelation::TYPE_DUPLICATES)
# And 3 is a dupe of 1 (circular duplicates)
IssueRelation.create(:issue_from => issue1, :issue_to => issue3, :relation_type => IssueRelation::TYPE_DUPLICATES)
assert issue1.reload.duplicates.include?(issue2)

Завантаження…
Відмінити
Зберегти