##// END OF EJS Templates
Speedup remove_inherited_roles (#22850)....
Jean-Philippe Lang -
r15501:ddf249d7b055
parent child
Show More
@@ -0,0 +1,5
1 class AddIndexOnMemberRolesInheritedFrom < ActiveRecord::Migration
2 def change
3 add_index :member_roles, :inherited_from
4 end
5 end
@@ -72,9 +72,6 class MemberRole < ActiveRecord::Base
72 72 end
73 73
74 74 def remove_inherited_roles
75 MemberRole.where(:inherited_from => id).group_by(&:member).
76 each do |member, member_roles|
77 member_roles.each(&:destroy)
78 end
75 MemberRole.where(:inherited_from => id).destroy_all
79 76 end
80 77 end
@@ -844,7 +844,7 class Project < ActiveRecord::Base
844 844 end
845 845
846 846 def remove_inherited_member_roles
847 member_roles = memberships.map(&:member_roles).flatten
847 member_roles = MemberRole.where(:member_id => membership_ids).to_a
848 848 member_role_ids = member_roles.map(&:id)
849 849 member_roles.each do |member_role|
850 850 if member_role.inherited_from && !member_role_ids.include?(member_role.inherited_from)
General Comments 0
You need to be logged in to leave comments. Login now