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

Recursive locking error when auth fails while checking out a socket from the pool

    • Type: Icon: Bug Bug
    • Resolution: Done
    • Priority: Icon: Major - P3 Major - P3
    • 1.11.0
    • Affects Version/s: 1.10.2
    • Component/s: None
    • Labels:
      None

      If a socket is checked out from a pool and authentication fails when being applied to that socket, the code path will lead you into a recursive lock.

      The connection_mutex lock is acquired when checking out a socket. If the authentication command fails when being applied to that socket, the networking code will call #checkin on the socket. Checking in the socket requires acquiring the same connection_mutex in the pool.

            Assignee:
            emily.stolfo Emily Stolfo
            Reporter:
            emily.stolfo Emily Stolfo
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: