]> source.dussan.org Git - sonarqube.git/commitdiff
SONAR-5451 Fix deletion of project event on Oracle when more than 1000 events on...
authorJulien Lancelot <julien.lancelot@sonarsource.com>
Wed, 30 Jul 2014 16:07:14 +0000 (18:07 +0200)
committerJulien Lancelot <julien.lancelot@sonarsource.com>
Wed, 30 Jul 2014 16:07:26 +0000 (18:07 +0200)
server/sonar-web/src/main/webapp/WEB-INF/app/controllers/project_controller.rb

index 0afc33579e6c1ceccd23db32903afa143ebf9b97..150b37a3e7e372fe50ee75875f1abe9d51d5018c 100644 (file)
@@ -408,7 +408,11 @@ class ProjectController < ApplicationController
     name = event.name
     resource_id = event.resource_id
     events = find_events(event)
-    Event.delete(events.map { |e| e.id })
+    Event.transaction do
+      events.map { |e| e.id }.each_slice(999) do |safe_for_oracle_ids|
+        Event.delete(safe_for_oracle_ids)
+      end
+    end
 
     flash[:notice] = message('project_history.event_deleted', :params => name)
     redirect_to :action => 'history', :id => resource_id