flyerhzm / bullet

help to kill N+1 queries and unused eager loading
MIT License
7.09k stars 434 forks source link

Some problems on with raising errors on tests #413

Open Fattaf opened 6 years ago

Fattaf commented 6 years ago

Hi guys, I have some strange problem. I added bullet error rising during our tests run. And some of the tests are failing with next trace:

Failure/Error: Bullet.perform_out_of_channel_notifications

Bullet::Notification::UnoptimizedQueryError:
  user: app

  AVOID eager loading detected
    OurPolicy => [:lead]
    Remove from your finder: :includes => [:lead]
  Call stack
    /app/spec/support/configurations/bullet.rb:7:in `block (2 levels) in <top (required)>'
    /app/spec/support/configurations/vcr.rb:8:in `block (3 levels) in <top (required)>'
    /app/spec/support/configurations/vcr.rb:8:in `block (2 levels) in <top (required)>'
/usr/local/bundle/gems/uniform_notifier-1.11.0/lib/uniform_notifier/raise.rb:16:in `_out_of_channel_notify'
/usr/local/bundle/gems/uniform_notifier-1.11.0/lib/uniform_notifier/base.rb:22:in `out_of_channel_notify'
/usr/local/bundle/gems/bullet-5.7.5/lib/bullet/notification/base.rb:49:in `notify_out_of_channel'
/usr/local/bundle/gems/bullet-5.7.5/lib/bullet.rb:182:in `block in perform_out_of_channel_notifications'
/usr/local/bundle/gems/bullet-5.7.5/lib/bullet.rb:227:in `block (2 levels) in for_each_active_notifier_with_notification'
/usr/local/bundle/gems/bullet-5.7.5/lib/bullet.rb:225:in `block in for_each_active_notifier_with_notification'
/usr/local/bundle/gems/bullet-5.7.5/lib/bullet.rb:224:in `each'
/usr/local/bundle/gems/bullet-5.7.5/lib/bullet.rb:224:in `for_each_active_notifier_with_notification'
/usr/local/bundle/gems/bullet-5.7.5/lib/bullet.rb:180:in `perform_out_of_channel_notifications'
./spec/support/configurations/bullet.rb:8:in `block (2 levels) in <top (required)>'
./spec/support/configurations/vcr.rb:8:in `block (3 levels) in <top (required)>'
/usr/local/bundle/gems/vcr-4.0.0/lib/vcr.rb:261:in `turned_off'
./spec/support/configurations/vcr.rb:8:in `block (2 levels) in <top (required)>'
/usr/local/bundle/gems/rspec-retry-0.5.7/lib/rspec/retry.rb:115:in `block in run'
/usr/local/bundle/gems/rspec-retry-0.5.7/lib/rspec/retry.rb:104:in `loop'
/usr/local/bundle/gems/rspec-retry-0.5.7/lib/rspec/retry.rb:104:in `run'
/usr/local/bundle/gems/rspec-retry-0.5.7/lib/rspec_ext/rspec_ext.rb:12:in `run_with_retry'
/usr/local/bundle/gems/rspec-retry-0.5.7/lib/rspec/retry.rb:33:in `block (2 levels) in setup'

It's not quite obvious what is happening. So, please, can somebody take a look and explaing and/or fix it? Thanks.

billgloff commented 6 years ago

Having the same issue...had to revert back to ver. 5.7.5. to prevent the false positives.