From 7b2493480a9a1d8eb4c699aa58b90e74fa73e63a Mon Sep 17 00:00:00 2001
From: Samuel Couillard <43917914+scouillard@users.noreply.github.com>
Date: Fri, 28 Oct 2022 16:25:33 -0400
Subject: [PATCH] Improve Room migration query (#4046)

---
 lib/tasks/migrations/migrations.rake | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/lib/tasks/migrations/migrations.rake b/lib/tasks/migrations/migrations.rake
index 3c97dc46..f9779a05 100644
--- a/lib/tasks/migrations/migrations.rake
+++ b/lib/tasks/migrations/migrations.rake
@@ -76,10 +76,15 @@ namespace :migrations do
 
   task :rooms, [:start, :stop] => :environment do |_task, args|
     start, stop = range(args)
+
     has_encountred_issue = 0
+    filtered_roles_names = Role::RESERVED_ROLE_NAMES - %w[admin user]
+    filtered_roles_ids = Role.where(name: filtered_roles_names).pluck(:id).uniq
 
     Room.select(:id, :uid, :name, :bbb_id, :last_session, :user_id)
-        .find_each(start: start, finish: stop, batch_size: COMMON[:batch_size]).each do |r|
+        .joins(:owner)
+        .where.not(users: { role_id: filtered_roles_ids })
+        .find_each(start: start, finish: stop, batch_size: COMMON[:batch_size]) do |r|
           params = { room: { friendly_id: r.uid,
                              name: r.name,
                              meeting_id: r.bbb_id,
-- 
GitLab