~cytrogen/masto-fe

fa14976a5d53c451b4400c9ddbfc29a5103228d7 — dependabot[bot] 2 years ago 819daeb
Bump connection_pool from 2.3.0 to 2.4.0 (#24290)

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
1 files changed, 11 insertions(+), 1 deletions(-)

M app/lib/connection_pool/shared_connection_pool.rb
M app/lib/connection_pool/shared_connection_pool.rb => app/lib/connection_pool/shared_connection_pool.rb +11 -1
@@ 37,7 37,17 @@ class ConnectionPool::SharedConnectionPool < ConnectionPool
  end

  def checkin(preferred_tag)
    if ::Thread.current[key(preferred_tag)]
    if preferred_tag.is_a?(Hash) && preferred_tag[:force]
      # ConnectionPool 2.4+ calls `checkin(force: true)` after fork.
      # When this happens, we should remove all connections from Thread.current

      ::Thread.current.keys.each do |name| # rubocop:disable Style/HashEachMethods
        next unless name.to_s.start_with?("#{@key}-")

        @available.push(::Thread.current[name])
        ::Thread.current[name] = nil
      end
    elsif ::Thread.current[key(preferred_tag)]
      if ::Thread.current[key_count(preferred_tag)] == 1
        @available.push(::Thread.current[key(preferred_tag)])
        ::Thread.current[key(preferred_tag)] = nil