Uploaded image for project: 'Ruby Driver'
  1. Ruby Driver
  2. RUBY-382

Infinite loop with :refresh_interval 0

    • Type: Icon: Bug Bug
    • Resolution: Cannot Reproduce
    • Priority: Icon: Minor - P4 Minor - P4
    • 1.5.2
    • Affects Version/s: 1.5.1
    • Component/s: None
    • None

      >> m = Mongo::ReplSetConnection.new(['127.0.0.1', 6001], ['127.0.0.1', 6002], ['127.0.0.1', 6003], :refresh_mode => :sync, :refresh_interval => 0)
      => <Mongo::ReplSetConnection:0x3f88270a0df4 @seeds=[["qa-dev1.stripe.com", 6001], ["qa-dev1.stripe.com", 6003], ["qa-dev1.stripe.com", 6002]] @connected=true>

      After doing a stepdown on the master:

      >> m['test']['tar'].insert({}, :safe => true)
      => BSON::ObjectId('4edc4d727baf796cbb000001')
      >> m['test']['tar'].insert({}, :safe => true)
      SystemStackError: stack level too deep
      from /usr/lib/ruby/gems/1.8/gems/mongo-1.5.1/lib/../lib/mongo/networking.rb:206:in `read_documents'
      from /usr/lib/ruby/gems/1.8/gems/mongo-1.5.1/lib/../lib/mongo/networking.rb:158:in `receive'
      from /usr/lib/ruby/gems/1.8/gems/mongo-1.5.1/lib/../lib/mongo/networking.rb:123:in `receive_message'
      from /usr/lib/ruby/gems/1.8/gems/mongo-1.5.1/lib/../lib/mongo/cursor.rb:470:in `send_initial_query'
      from /usr/lib/ruby/gems/1.8/gems/mongo-1.5.1/lib/../lib/mongo/util/logging.rb:28:in `instrument'
      from /usr/lib/ruby/gems/1.8/gems/mongo-1.5.1/lib/../lib/mongo/cursor.rb:468:in `send_initial_query'
      from /usr/lib/ruby/gems/1.8/gems/mongo-1.5.1/lib/../lib/mongo/cursor.rb:458:in `refresh'
      from /usr/lib/ruby/gems/1.8/gems/mongo-1.5.1/lib/../lib/mongo/cursor.rb:128:in `next_document'
      from /usr/lib/ruby/gems/1.8/gems/mongo-1.5.1/lib/../lib/mongo/db.rb:505:in `command'
      from /usr/lib/ruby/gems/1.8/gems/mongo-1.5.1/lib/../lib/mongo/util/node.rb:87:in `set_config'
      from /usr/lib/ruby/gems/1.8/gems/mongo-1.5.1/lib/../lib/mongo/util/pool_manager.rb:262:in `get_valid_seed_node'
      from /usr/lib/ruby/gems/1.8/gems/mongo-1.5.1/lib/../lib/mongo/util/pool_manager.rb:258:in `each'
      from /usr/lib/ruby/gems/1.8/gems/mongo-1.5.1/lib/../lib/mongo/util/pool_manager.rb:258:in `get_valid_seed_node'
      from /usr/lib/ruby/gems/1.8/gems/mongo-1.5.1/lib/../lib/mongo/util/pool_manager.rb:41:in `check_connection_health'
      from /usr/lib/ruby/gems/1.8/gems/mongo-1.5.1/lib/../lib/mongo/repl_set_connection.rb:186:in `refresh'
      from /usr/lib/ruby/gems/1.8/gems/mongo-1.5.1/lib/../lib/mongo/repl_set_connection.rb:501:in `sync_refresh'
      ...

            Assignee:
            kbanker Kyle Banker
            Reporter:
            gdb Greg Brockman
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved: