Merge branch '14259-pysdk-remote-block-copy'
[arvados.git] / services / api / lib / sweep_trashed_objects.rb
index c4db856f5195f144c003780380572950401e293f..bedbd68a44c8a9e988c202a21457281f680e840a 100644 (file)
@@ -20,7 +20,7 @@ module SweepTrashedObjects
     # exceptions, and delete records owned by this project
     skipped_classes = ['Group', 'User']
     ActiveRecord::Base.descendants.reject(&:abstract_class?).each do |klass|
-      if !skipped_classes.include?(klass.name) && klass.columns.collect{|c| c.name}.include?('owner_uuid')
+      if !skipped_classes.include?(klass.name) && klass.columns.collect(&:name).include?('owner_uuid')
         klass.where({owner_uuid: p_uuid}).destroy_all
       end
     end
@@ -48,6 +48,9 @@ module SweepTrashedObjects
         where({group_class: 'project'}).
         where('is_trashed = false and trash_at < statement_timestamp()').
         update_all('is_trashed = true')
+
+      # Sweep expired tokens
+      ActiveRecord::Base.connection.execute("DELETE from api_client_authorizations where expires_at <= statement_timestamp()")
     end
   end