Use `touch_all` with batches (#32799)

pull/2894/head
Matt Jankowski 2024-11-08 05:00:15 -05:00 committed by GitHub
parent 4ef3a1a38d
commit df54196a14
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 3 additions and 3 deletions

View File

@ -32,7 +32,7 @@ module Admin
def deactivate_all def deactivate_all
authorize :invite, :deactivate_all? authorize :invite, :deactivate_all?
Invite.available.in_batches.update_all(expires_at: Time.now.utc) Invite.available.in_batches.touch_all(:expires_at)
redirect_to admin_invites_path redirect_to admin_invites_path
end end

View File

@ -340,7 +340,7 @@ class User < ApplicationRecord
Doorkeeper::AccessGrant.by_resource_owner(self).update_all(revoked_at: Time.now.utc) Doorkeeper::AccessGrant.by_resource_owner(self).update_all(revoked_at: Time.now.utc)
Doorkeeper::AccessToken.by_resource_owner(self).in_batches do |batch| Doorkeeper::AccessToken.by_resource_owner(self).in_batches do |batch|
batch.update_all(revoked_at: Time.now.utc) batch.touch_all(:revoked_at)
Web::PushSubscription.where(access_token_id: batch).delete_all Web::PushSubscription.where(access_token_id: batch).delete_all
# Revoke each access token for the Streaming API, since `update_all`` # Revoke each access token for the Streaming API, since `update_all``

View File

@ -12,7 +12,7 @@ class UnallowDomainService < BaseService
private private
def suspend_accounts!(domain) def suspend_accounts!(domain)
Account.where(domain: domain).in_batches.update_all(suspended_at: Time.now.utc) Account.where(domain: domain).in_batches.touch_all(:suspended_at)
AfterUnallowDomainWorker.perform_async(domain) AfterUnallowDomainWorker.perform_async(domain)
end end
end end