:connection_timeout random burst
Hello, i'm getting a rather odd error spam out of the blue here. About 5000 error events popped up in sentry after running an update, which resolved with a reboot:
11:30:31.085 [error] Task #PID<0.2538.0> started from #PID<0.2530.0> terminating
** (stop) exited in: GenServer.call(#PID<0.2525.0>, {:run_protocol, %ChromicPDF.Protocol{result_fun: nil, state: %{ignore_certificate_errors: false, offline: true, session_pool: [size: 10, timeout: 10000]}, steps: [call: &ChromicPDF.SpawnSession.create_browser_context/2, await: &ChromicPDF.SpawnSession.browser_context_created/2, call: &ChromicPDF.SpawnSession.create_target/2, await: &ChromicPDF.SpawnSession.target_created/2, call: &ChromicPDF.SpawnSession.attach/2, await: &ChromicPDF.SpawnSession.attached/2, call: &ChromicPDF.SpawnSession.set_user_agent/2, call: &ChromicPDF.SpawnSession.offline_mode/2, call: &ChromicPDF.SpawnSession.enable_page/2, await: &ChromicPDF.SpawnSession.page_enabled/2, call: &ChromicPDF.SpawnSession.blank/2, await: &ChromicPDF.SpawnSession.blanked/2, await: &ChromicPDF.SpawnSession.fsl_after_blank/2, output: &ChromicPDF.SpawnSession.output/1]}}, 5000)
** (EXIT) :connection_terminated
(elixir 1.11.4) lib/gen_server.ex:1027: GenServer.call/3
(chromic_pdf 0.7.2) lib/chromic_pdf/pdf/browser/channel.ex:21: ChromicPDF.Browser.Channel.run_protocol/3
(chromic_pdf 0.7.2) lib/chromic_pdf/pdf/browser/session_pool.ex:110: ChromicPDF.Browser.SessionPool.do_init_worker/2
(elixir 1.11.4) lib/task/supervised.ex:90: Task.Supervised.invoke_mfa/2
(elixir 1.11.4) lib/task/supervised.ex:35: Task.Supervised.reply/5
(stdlib 3.10) proc_lib.erl:249: :proc_lib.init_p_do_apply/3
Function: #Function<0.13638364/0 in ChromicPDF.Browser.SessionPool.init_worker/1>
Args: []
11:30:31.209 [error] GenServer #PID<0.2550.0> terminating
** (stop) :connection_terminated
Last message: {:EXIT, #Port<0.63>, :normal}
It's weird because chromium wasn't updated D:
Perhaps the reconnect frequency could be toned down? I got 100s of these errors every second.
Hey @dabaer
the Supervisor docs say it has a max_restarts option (see here) which presumably could at least limit the number of restarts. But it doesn't seem to have a way to configure a "cooldown" period or so :/
Unfortunately I don't have much time currently to work on this. Is this a problem that occurs frequently for you or was it just once? Can you pinpoint why the Chromium process died? If this happens a lot, you could try the discard_stderr: false option to see Chrome's output.
Best, malte
Hmm i'll have to keep an eye on it, and set that restart limit. I don't see any indication as to why, all I walked into was my Sentry instance screaming in agony that time and it hasn't ocurred since a reboot :(
it hasn't ocurred since a reboot :(
Well that's a good thing, right? 😄
@dabaer closing this for now, feel free to re-open if it happens again