Class: Users::BatchStatusCleanerService
- Inherits:
-
Object
- Object
- Users::BatchStatusCleanerService
- Defined in:
- app/services/users/batch_status_cleaner_service.rb
Constant Summary collapse
- BATCH_SIZE =
100
Class Method Summary collapse
-
.execute(batch_size: BATCH_SIZE) ⇒ Object
Cleanup BATCH_SIZE user_statuses records rubocop: disable CodeReuse/ActiveRecord.
Class Method Details
.execute(batch_size: BATCH_SIZE) ⇒ Object
Cleanup BATCH_SIZE user_statuses records rubocop: disable CodeReuse/ActiveRecord
9 10 11 12 13 14 15 16 17 18 19 |
# File 'app/services/users/batch_status_cleaner_service.rb', line 9 def self.execute(batch_size: BATCH_SIZE) scope = UserStatus .select(:user_id) .scheduled_for_cleanup .lock('FOR UPDATE SKIP LOCKED') .limit(batch_size) deleted_rows = UserStatus.where(user_id: scope).delete_all { deleted_rows: deleted_rows } end |