berkshelf / ridley

A reliable Chef API client with a clean syntax
Other
231 stars 85 forks source link

ThreadError: can't create Thread: Resource temporarily unavailable after 70 queries #312

Closed bmhatfield closed 9 years ago

bmhatfield commented 9 years ago

Hi,

I have a short script like this:

require 'ridley'
require 'aws-sdk-v1'

ec2 = AWS::EC2.new

AWS.memoize do
  ec2.instances.filter('tag:ATAGICAREABOUT', '*').each do |instance|
    ridley = Ridley.new(
      server_url: "...",
      client_name: "...",
      client_key: "..."
    )

    node = ridley.node.find(instance.tags['Name'])

    if node
      puts "Found node: #{node.name}"
    else
      puts "No matching node: #{instance.tags['Name']}"
    end
  end
end

This runs for a while (exactly 70 Found node lines are printed) before a fairly large stacktrace is printed:

E, [2015-07-07T17:47:56.675646 #28461] ERROR -- : Actor crashed!
ThreadError: can't create Thread: Resource temporarily unavailable
    /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/internal_pool.rb:127:in `initialize'
    /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/internal_pool.rb:127:in `new'
    /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/internal_pool.rb:127:in `create'
    /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/internal_pool.rb:66:in `block in get'
    /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/internal_pool.rb:61:in `synchronize'
    /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/internal_pool.rb:61:in `get'
    /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/actor_system.rb:30:in `get_thread'
    /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/thread_handle.rb:10:in `initialize'
    /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/actor.rb:128:in `new'
    /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/actor.rb:128:in `start'
    /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/cell.rb:43:in `initialize'
    /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid.rb:178:in `new'
    /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid.rb:178:in `new_link'
    /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/pool_manager.rb:19:in `block in initialize'
    /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/pool_manager.rb:19:in `times'
    /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/pool_manager.rb:19:in `each'
    /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/pool_manager.rb:19:in `map'
    /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/pool_manager.rb:19:in `initialize'
    /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/calls.rb:26:in `public_send'
    /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/calls.rb:26:in `dispatch'
    /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/calls.rb:63:in `dispatch'
    /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/ce/Users/bhatfield/.rvm/rubies/ruby-2.1.5/lib/ruby/2.1.0/timeout.rb:82:in `start': can't create Thread: Resource temporarily unavailable (ThreadError)
    from /Users/bhatfield/.rvm/rubies/ruby-2.1.5/lib/ruby/2.1.0/timeout.rb:82:in `block in timeout'
    from /Users/bhatfield/.rvm/rubies/ruby-2.1.5/lib/ruby/2.1.0/timeout.rb:35:in `block in catch'
    from /Users/bhatfield/.rvm/rubies/ruby-2.1.5/lib/ruby/2.1.0/timeout.rb:35:in `catch'
    from /Users/bhatfield/.rvm/rubies/ruby-2.1.5/lib/ruby/2.1.0/timeout.rb:35:in `catch'
    from /Users/bhatfield/.rvm/rubies/ruby-2.1.5/lib/ruby/2.1.0/timeout.rb:106:in `timeout'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/actor_system.rb:66:in `shutdown'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid.rb:156:in `shutdown'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid.rb:145:in `block in register_shutdown'
/Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/internal_pool.rb:127:in `initialize': can't create Thread: Resource temporarily unavailable (ThreadError)
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/internal_pool.rb:127:in `new'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/internal_pool.rb:127:in `create'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/internal_pool.rb:66:in `block in get'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/internal_pool.rb:61:in `synchronize'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/internal_pool.rb:61:in `get'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/actor_system.rb:30:in `get_thread'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/thread_handle.rb:10:in `initialize'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/actor.rb:128:in `new'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/actor.rb:128:in `start'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/cell.rb:43:in `initialize'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid.rb:178:in `new'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid.rb:178:in `new_link'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/pool_manager.rb:19:in `block in initialize'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/pool_manager.rb:19:in `times'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/pool_manager.rb:19:in `each'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/pool_manager.rb:19:in `map'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/pool_manager.rb:19:in `initialize'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/calls.rb:26:in `public_send'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/calls.rb:26:in `dispatch'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/calls.rb:63:in `dispatch'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/cell.rb:60:in `block in invoke'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/cell.rb:71:in `block in task'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/actor.rb:357:in `block in task'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/tasks.rb:57:in `block in initialize'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/tasks/task_fiber.rb:15:in `block in create'
    from (celluloid):0:in `remote procedure call'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/calls.rb:92:in `value'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/proxies/sync_proxy.rb:33:in `method_missing'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/proxies/cell_proxy.rb:17:in `_send_'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid.rb:169:in `new'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid.rb:203:in `pool'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5/gems/ridley-4.2.0/lib/ridley/resources/sandbox_resource.rb:11:in `initialize'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/calls.rb:26:in `public_send'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/calls.rb:26:in `dispatch'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/calls.rb:63:in `dispatch'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/cell.rb:60:in `block in invoke'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/cell.rb:71:in `block in task'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/actor.rb:357:in `block in task'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/tasks.rb:57:in `block in initialize'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/tasks/task_fiber.rb:15:in `block in create'
    from (celluloid):0:in `remote procedure call'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/calls.rb:92:in `value'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/proxies/sync_proxy.rb:33:in `method_missing'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/proxies/cell_proxy.rb:17:in `_send_'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid.rb:180:in `new_link'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5/gems/ridley-4.2.0/lib/ridley/resources/cookbook_resource.rb:12:in `initialize'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/calls.rb:26:in `public_send'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/calls.rb:26:in `dispatch'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/calls.rb:63:in `dispatch'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/cell.rb:60:in `block in invoke'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/cell.rb:71:in `block in task'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/actor.rb:357:in `block in task'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/tasks.rb:57:in `block in initialize'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/tasks/task_thread.rb:21:in `block in create'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/thread_handle.rb:13:in `block in initialize'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/actor_system.rb:32:in `block in get_thread'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/internal_pool.rb:130:in `call'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/internal_pool.rb:130:in `block in create'
    from (celluloid):0:in `remote procedure call'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/calls.rb:92:in `value'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/proxies/sync_proxy.rb:33:in `method_missing'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/proxies/cell_proxy.rb:17:in `_send_'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid.rb:180:in `new_link'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/supervision_group.rb:141:in `start'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/supervision_group.rb:129:in `initialize'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/supervision_group.rb:85:in `new'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/supervision_group.rb:85:in `add'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/supervision_group.rb:76:in `supervise_as'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5/gems/ridley-4.2.0/lib/ridley/client.rb:21:in `initialize'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/calls.rb:26:in `public_send'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/calls.rb:26:in `dispatch'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/calls.rb:63:in `dispatch'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/cell.rb:60:in `block in invoke'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/cell.rb:71:in `block in task'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/actor.rb:357:in `block in task'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/tasks.rb:57:in `block in initialize'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/tasks/task_fiber.rb:15:in `block in create'
    from (celluloid):0:in `remote procedure call'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/calls.rb:92:in `value'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/proxies/sync_proxy.rb:33:in `method_missing'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/proxies/cell_proxy.rb:17:in `_send_'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid.rb:169:in `new'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5/gems/ridley-4.2.0/lib/ridley/client.rb:150:in `initialize'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/calls.rb:26:in `public_send'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/calls.rb:26:in `dispatch'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/calls.rb:63:in `dispatch'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/cell.rb:60:in `block in invoke'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/cell.rb:71:in `block in task'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/actor.rb:357:in `block in task'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/tasks.rb:57:in `block in initialize'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/tasks/task_fiber.rb:15:in `block in create'
    from (celluloid):0:in `remote procedure call'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/calls.rb:92:in `value'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/proxies/sync_proxy.rb:33:in `method_missing'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid/proxies/cell_proxy.rb:17:in `_send_'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5@global/gems/celluloid-0.16.0/lib/celluloid.rb:169:in `new'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5/gems/ridley-4.2.0/lib/ridley.rb:27:in `new'
    from infrastructure-output.rb:8:in `block (2 levels) in <main>'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5/gems/aws-sdk-v1-1.63.0/lib/aws/ec2/instance_collection.rb:323:in `block (2 levels) in each'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5/gems/aws-sdk-v1-1.63.0/lib/aws/core/data.rb:97:in `block in method_missing'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5/gems/aws-sdk-v1-1.63.0/lib/aws/core/data.rb:96:in `each'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5/gems/aws-sdk-v1-1.63.0/lib/aws/core/data.rb:96:in `method_missing'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5/gems/aws-sdk-v1-1.63.0/lib/aws/ec2/instance_collection.rb:320:in `block in each'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5/gems/aws-sdk-v1-1.63.0/lib/aws/core/data.rb:97:in `block in method_missing'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5/gems/aws-sdk-v1-1.63.0/lib/aws/core/data.rb:96:in `each'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5/gems/aws-sdk-v1-1.63.0/lib/aws/core/data.rb:96:in `method_missing'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5/gems/aws-sdk-v1-1.63.0/lib/aws/ec2/instance_collection.rb:319:in `each'
    from infrastructure-output.rb:7:in `block in <main>'
    from /Users/bhatfield/.rvm/gems/ruby-2.1.5/gems/aws-sdk-v1-1.63.0/lib/aws/core.rb:598:in `memoize'
    from infrastructure-output.rb:6:in `<main>'

I am unfortunately not sure how to proceed here. I don't know very much about celluloid, or why it's exploding. I'm on OSX, if that matters.

bmhatfield commented 9 years ago

I moved this script to a Linux machine where it's a bit easier to tune maxprocs... and it just creates ruby threads indefinitely. I finally killed it with hundreds and hundreds of threads and a completely pegged CPU.

Based upon my script, I would not expect it to be using a new thread for every request, but to just re-use the existing threads. What am I doing wrong here? What workarounds exist for this?

PS: I tried setting pool_size in the client constructor, but it seemed to have no effect.

bmhatfield commented 9 years ago

OH NO! I just noticed that I was instantiating a Ridley client on every iteration. Very embarrassing. So sorry for filing this issue for my own foolishness.

reset commented 9 years ago

@bmhatfield no problem! Glad you were able to solve your problem