Skip to content

Commit 4df2564

Browse files
committed
Additional fix for threading tests to ensure a manager for a new thread is always set.
1 parent a3555ba commit 4df2564

File tree

1 file changed

+8
-2
lines changed

1 file changed

+8
-2
lines changed

lib/mongo/repl_set_connection.rb

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -401,10 +401,16 @@ def close_socket(socket)
401401
end
402402
end
403403

404-
def get_socket_from_pool(pool_type)
405-
if Thread.current[:managers] && Thread.current[:managers][self] != @manager
404+
def ensure_manager
405+
Thread.current[:managers] ||= Hash.new
406+
407+
if Thread.current[:managers][self] != @manager
406408
Thread.current[:managers][self] = @manager
407409
end
410+
end
411+
412+
def get_socket_from_pool(pool_type)
413+
ensure_manager
408414

409415
pool = case pool_type
410416
when :primary

0 commit comments

Comments
 (0)