Skip to content

Deleting spam users silently fails #70

@jericson

Description

@jericson

I tried to delete a user because they had posted spam on my site, but it silently failed. Looking in the logs, I found this error:

[default] Failed to process hijacked response correctly : NoMethodError : undefined method `rating_types' for nil

Here is the backtrace:

/var/www/discourse/plugins/discourse-ratings/plugin.rb:147:in `block (2 levels) in activate!' 
/var/www/discourse/lib/plugin/instance.rb:375:in `public_send' 
/var/www/discourse/lib/plugin/instance.rb:375:in `block (2 levels) in add_to_class' 
/var/www/discourse/plugins/discourse-ratings/plugin.rb:61:in `block in activate!' 
/var/www/discourse/lib/plugin/instance.rb:575:in `block in on' 
/var/www/discourse/lib/discourse_event.rb:12:in `block in trigger' 
/usr/local/lib/ruby/3.3.0/set.rb:501:in `each_key'
/usr/local/lib/ruby/3.3.0/set.rb:501:in `each'
/var/www/discourse/lib/discourse_event.rb:12:in `trigger' 
/var/www/discourse/lib/post_destroyer.rb:86:in `destroy' 
/var/www/discourse/app/services/user_destroyer.rb:155:in `block in delete_posts' 
activerecord-7.1.4/lib/active_record/relation/batches.rb:82:in `each' 
activerecord-7.1.4/lib/active_record/relation/batches.rb:82:in `block in find_each' 
activerecord-7.1.4/lib/active_record/relation/batches.rb:158:in `block in find_in_batches' 
activerecord-7.1.4/lib/active_record/relation/batches.rb:396:in `block in batch_on_unloaded_relation' 
<internal:kernel>:187:in `loop'
activerecord-7.1.4/lib/active_record/relation/batches.rb:372:in `batch_on_unloaded_relation' 
activerecord-7.1.4/lib/active_record/relation/batches.rb:269:in `in_batches' 
activerecord-7.1.4/lib/active_record/relation/batches.rb:157:in `find_in_batches' 
activerecord-7.1.4/lib/active_record/relation/batches.rb:81:in `find_each' 
/var/www/discourse/app/services/user_destroyer.rb:151:in `delete_posts' 
/var/www/discourse/app/services/user_destroyer.rb:43:in `block in destroy' 
/var/www/discourse/app/services/user_destroyer.rb:179:in `block in optional_transaction' 
activerecord-7.1.4/lib/active_record/connection_adapters/abstract/transaction.rb:535:in `block in within_new_transaction' 
activesupport-7.1.4/lib/active_support/concurrency/null_lock.rb:9:in `synchronize' 
activerecord-7.1.4/lib/active_record/connection_adapters/abstract/transaction.rb:532:in `within_new_transaction' 
activerecord-7.1.4/lib/active_record/connection_adapters/abstract/database_statements.rb:344:in `transaction' 
activerecord-7.1.4/lib/active_record/transactions.rb:212:in `transaction' 
/var/www/discourse/app/services/user_destroyer.rb:179:in `optional_transaction' 
/var/www/discourse/app/services/user_destroyer.rb:28:in `destroy' 
/var/www/discourse/app/controllers/admin/users_controller.rb:403:in `block in destroy' 
/var/www/discourse/lib/hijack.rb:64:in `instance_eval' 
/var/www/discourse/lib/hijack.rb:64:in `block in hijack' 
concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/promises.rb:911:in `callback_on_resolution' 
concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/promises.rb:797:in `call_callback' 
concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/promises.rb:803:in `call_callbacks' 
concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/promises.rb:692:in `resolve_with' 
concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/promises.rb:1325:in `resolve' 
/var/www/discourse/lib/scheduler/defer.rb:115:in `block in do_work' 
rails_multisite-6.1.0/lib/rails_multisite/connection_management.rb:207:in `with_connection'
rails_multisite-6.1.0/lib/rails_multisite/connection_management.rb:21:in `with_connection'
/var/www/discourse/lib/scheduler/defer.rb:109:in `do_work' 
/var/www/discourse/lib/scheduler/defer.rb:97:in `block (2 levels) in start_thread' 

I believe this is the same error as reported on Meta Discourse. I didn't have the Ratings plugin enabled, so I removed it from my container configuration file, rebuilt and I was able to delete the user.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions