Set a default timeout for Gun adapter timeout
authorhref <href@random.sh>
Mon, 13 Jul 2020 08:44:36 +0000 (10:44 +0200)
committerrinpatch <rinpatch@sdf.org>
Wed, 15 Jul 2020 12:26:35 +0000 (15:26 +0300)
lib/pleroma/http/adapter_helper.ex

index 8ca433732a01068e6b3617fa81f82f832b26c95d..9ec3836b057122243b174201eecc08d9db92afb8 100644 (file)
@@ -44,15 +44,17 @@ defmodule Pleroma.HTTP.AdapterHelper do
   @spec options(URI.t(), keyword()) :: keyword()
   def options(%URI{} = uri, opts \\ []) do
     @defaults
-    |> pool_timeout()
+    |> put_timeout()
     |> Keyword.merge(opts)
     |> adapter_helper().options(uri)
   end
 
-  defp pool_timeout(opts) do
+  # For Hackney, this is the time a connection can stay idle in the pool.
+  # For Gun, this is the timeout to receive a message from Gun.
+  defp put_timeout(opts) do
     {config_key, default} =
       if adapter() == Tesla.Adapter.Gun do
-        {:pools, Config.get([:pools, :default, :timeout])}
+        {:pools, Config.get([:pools, :default, :timeout], 5_000)}
       else
         {:hackney_pools, 10_000}
       end