From decdb6f9c5961573dc1b0d0aafd3450c517d3ae3 Mon Sep 17 00:00:00 2001 From: Peter Amstutz Date: Tue, 26 May 2020 15:12:56 -0400 Subject: [PATCH] 16007: refresh_trashed uses a transaction Arvados-DCO-1.1-Signed-off-by: Peter Amstutz --- services/api/lib/refresh_permission_view.rb | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/services/api/lib/refresh_permission_view.rb b/services/api/lib/refresh_permission_view.rb index c0d5c1b694..826c44c3b4 100644 --- a/services/api/lib/refresh_permission_view.rb +++ b/services/api/lib/refresh_permission_view.rb @@ -19,9 +19,11 @@ from users, lateral search_permission_graph(users.uuid, 3) as g where g.val > 0 end def refresh_trashed + ActiveRecord::Base.transaction do ActiveRecord::Base.connection.execute("LOCK TABLE #{TRASHED_GROUPS}") - ActiveRecord::Base.connection.execute("DELETE FROM #{TRASHED_GROUPS}") - ActiveRecord::Base.connection.execute("INSERT INTO #{TRASHED_GROUPS} select * from compute_trashed()") + ActiveRecord::Base.connection.execute("DELETE FROM #{TRASHED_GROUPS}") + ActiveRecord::Base.connection.execute("INSERT INTO #{TRASHED_GROUPS} select * from compute_trashed()") + end end def update_permissions perm_origin_uuid, starting_uuid, perm_level, check=false -- 2.30.2