dblock / slack-strava

(Re)Post Strava activities to Slack
https://slava.playplay.io
MIT License
37 stars 6 forks source link

Cursor times out on MongoDB in long running iterations #99

Open dblock opened 4 years ago

dblock commented 4 years ago
E, [2020-09-10T10:38:39.803719 #24] ERROR -- : Cursor not found, cursor id: 41078975898 (43) (on dokku-mongo-strava-bot:27017) (Mongo::Error::OperationFailure)
/app/vendor/bundle/ruby/2.6.0/gems/mongo-2.12.1/lib/mongo/operation/result.rb:306:in `raise_operation_failure'
/app/vendor/bundle/ruby/2.6.0/gems/mongo-2.12.1/lib/mongo/operation/result.rb:277:in `validate!'
/app/vendor/bundle/ruby/2.6.0/gems/mongo-2.12.1/lib/mongo/operation/shared/response_handling.rb:29:in `block (3 levels) in validate_result'
/app/vendor/bundle/ruby/2.6.0/gems/mongo-2.12.1/lib/mongo/operation/shared/response_handling.rb:87:in `add_server_diagnostics'
/app/vendor/bundle/ruby/2.6.0/gems/mongo-2.12.1/lib/mongo/operation/shared/response_handling.rb:28:in `block (2 levels) in validate_result'
/app/vendor/bundle/ruby/2.6.0/gems/mongo-2.12.1/lib/mongo/operation/shared/response_handling.rb:43:in `add_error_labels'
/app/vendor/bundle/ruby/2.6.0/gems/mongo-2.12.1/lib/mongo/operation/shared/response_handling.rb:27:in `block in validate_result'
/app/vendor/bundle/ruby/2.6.0/gems/mongo-2.12.1/lib/mongo/operation/shared/response_handling.rb:73:in `unpin_maybe'
/app/vendor/bundle/ruby/2.6.0/gems/mongo-2.12.1/lib/mongo/operation/shared/response_handling.rb:26:in `validate_result'
/app/vendor/bundle/ruby/2.6.0/gems/mongo-2.12.1/lib/mongo/operation/shared/executable.rb:39:in `block in execute'
/app/vendor/bundle/ruby/2.6.0/gems/mongo-2.12.1/lib/mongo/operation/shared/executable.rb:38:in `tap'
/app/vendor/bundle/ruby/2.6.0/gems/mongo-2.12.1/lib/mongo/operation/shared/executable.rb:38:in `execute'
/app/vendor/bundle/ruby/2.6.0/gems/mongo-2.12.1/lib/mongo/operation/shared/op_msg_or_find_command.rb:28:in `execute'
/app/vendor/bundle/ruby/2.6.0/gems/mongo-2.12.1/lib/mongo/cursor.rb:334:in `get_more'
/app/vendor/bundle/ruby/2.6.0/gems/mongo-2.12.1/lib/mongo/cursor.rb:213:in `try_next'
/app/vendor/bundle/ruby/2.6.0/gems/mongo-2.12.1/lib/mongo/cursor.rb:162:in `block in each'
/app/vendor/bundle/ruby/2.6.0/gems/mongo-2.12.1/lib/mongo/cursor.rb:161:in `loop'
/app/vendor/bundle/ruby/2.6.0/gems/mongo-2.12.1/lib/mongo/cursor.rb:161:in `each'
/app/vendor/bundle/ruby/2.6.0/gems/mongo-2.12.1/lib/mongo/collection/view/iterable.rb:50:in `each'
/app/vendor/bundle/ruby/2.6.0/gems/mongoid-7.1.2/lib/mongoid/query_cache.rb:228:in `each'
/app/vendor/bundle/ruby/2.6.0/gems/mongoid-7.1.2/lib/mongoid/contextual/mongo.rb:136:in `each'
/app/vendor/ruby-2.6.5/lib/ruby/2.6.0/forwardable.rb:230:in `each'
/app/slack-strava/app.rb:147:in `clubs_brag_and_rebrag!'
/app/slack-strava/app.rb:23:in `block (2 levels) in after_start!'
dblock commented 4 years ago

Oddly we do have no_timeout, so watch it.

2.6.5 :003 > Team.no_timeout.active
 => 
#<Mongoid::Criteria
  selector: {"active"=>true}
  options:  {:timeout=>false}
  class:    Team
  embedded: false>