Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unable to recover after DNSError: discordapp.com #122

Open
tk3369 opened this issue Jan 8, 2022 · 2 comments
Open

Unable to recover after DNSError: discordapp.com #122

tk3369 opened this issue Jan 8, 2022 · 2 comments

Comments

@tk3369
Copy link
Member

tk3369 commented Jan 8, 2022

After DNSError: discordapp.com, temporary failure (EAI_AGAIN), heartbeat stopped and not able to recover.

┌ Info: Reconnecting
│   time = 2022-01-08T22:44:16.287
│   conn = 36
│   resume = true
└   zombie = true
┌ Error: Getting gateway URL failed
│   time = 2022-01-08T22:45:14.578
│   exception =
│    DNSError: discordapp.com, temporary failure (EAI_AGAIN)
│    Stacktrace:
│      [1] getalladdrinfo(host::String)
│        @ Sockets /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Sockets/src/addrinfo.jl:113
│      [2] getalladdrinfo
│        @ /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Sockets/src/addrinfo.jl:122 [inlined]
│      [3] getconnection(::Type{Sockets.TCPSocket}, host::SubString{String}, port::String; keepalive::Bool, connect_timeout::Int64, readtimeout::Int64, kw::Base.Iterators.Pairs{Symbol, Union{Nothing, Bool}, Tuple{Symbol, Symbol, Symbol}, NamedTuple{(:require_ssl_verification, :iofunction, :reached_redirect_limit), Tuple{Bool, Nothing, Bool}}})
│        @ HTTP.ConnectionPool ~/.julia/packages/HTTP/4AvE2/src/ConnectionPool.jl:659
│      [4] #getconnection#29
│        @ ~/.julia/packages/HTTP/4AvE2/src/ConnectionPool.jl:728 [inlined]
│      [5] newconnection(pod::HTTP.ConnectionPool.Pod, T::Type, host::SubString{String}, port::SubString{String}, pipeline_limit::Int64, require_ssl_verification::Bool, idle_timeout::Int64; kw::Base.Iterators.Pairs{Symbol, Union{Nothing, Bool}, Tuple{Symbol, Symbol}, NamedTuple{(:iofunction, :reached_redirect_limit), Tuple{Nothing, Bool}}})
│        @ HTTP.ConnectionPool ~/.julia/packages/HTTP/4AvE2/src/ConnectionPool.jl:626
│      [6] getconnection(::Type{HTTP.ConnectionPool.Transaction{MbedTLS.SSLContext}}, host::SubString{String}, port::SubString{String}; connection_limit::Int64, pipeline_limit::Int64, idle_timeout::Int64, reuse_limit::Int64, require_ssl_verification::Bool, kw::Base.Iterators.Pairs{Symbol, Union{Nothing, Bool}, Tuple{Symbol, Symbol}, NamedTuple{(:iofunction, :reached_redirect_limit), Tuple{Nothing, Bool}}})
│        @ HTTP.ConnectionPool ~/.julia/packages/HTTP/4AvE2/src/ConnectionPool.jl:570
│      [7] request(::Type{HTTP.ConnectionRequest.ConnectionPoolLayer{HTTP.StreamRequest.StreamLayer{Union{}}}}, url::URIs.URI, req::HTTP.Messages.Request, body::Vector{UInt8}; proxy::Nothing, socket_type::Type, reuse_limit::Int64, kw::Base.Iterators.Pairs{Symbol, Union{Nothing, Bool}, Tuple{Symbol, Symbol}, NamedTuple{(:iofunction, :reached_redirect_limit), Tuple{Nothing, Bool}}})
│        @ HTTP.ConnectionRequest ~/.julia/packages/HTTP/4AvE2/src/ConnectionRequest.jl:85
│      [8] request(::Type{HTTP.ExceptionRequest.ExceptionLayer{HTTP.ConnectionRequest.ConnectionPoolLayer{HTTP.StreamRequest.StreamLayer{Union{}}}}}, ::URIs.URI, ::Vararg{Any, N} where N; kw::Base.Iterators.Pairs{Symbol, Union{Nothing, Bool}, Tuple{Symbol, Symbol}, NamedTuple{(:iofunction, :reached_redirect_limit), Tuple{Nothing, Bool}}})
│        @ HTTP.ExceptionRequest ~/.julia/packages/HTTP/4AvE2/src/ExceptionRequest.jl:19
│      [9] (::Base.var"#70#72"{Base.var"#70#71#73"{ExponentialBackOff, HTTP.RetryRequest.var"#2#3"{Bool, HTTP.Messages.Request}, typeof(HTTP.request)}})(::Type, ::Vararg{Any, N} where N; kwargs::Base.Iterators.Pairs{Symbol, Union{Nothing, Bool}, Tuple{Symbol, Symbol}, NamedTuple{(:iofunction, :reached_redirect_limit), Tuple{Nothing, Bool}}})
│        @ Base ./error.jl:301
│     [10] #request#1
│        @ ~/.julia/packages/HTTP/4AvE2/src/RetryRequest.jl:44 [inlined]
│     [11] request(::Type{HTTP.MessageRequest.MessageLayer{HTTP.RetryRequest.RetryLayer{HTTP.ExceptionRequest.ExceptionLayer{HTTP.ConnectionRequest.ConnectionPoolLayer{HTTP.StreamRequest.StreamLayer{Union{}}}}}}}, method::String, url::URIs.URI, headers::Vector{Pair{SubString{String}, SubString{String}}}, body::Vector{UInt8}; http_version::VersionNumber, target::String, parent::Nothing, iofunction::Nothing, kw::Base.Iterators.Pairs{Symbol, Bool, Tuple{Symbol}, NamedTuple{(:reached_redirect_limit,), Tuple{Bool}}})
│        @ HTTP.MessageRequest ~/.julia/packages/HTTP/4AvE2/src/MessageRequest.jl:66
│     [12] request(::Type{HTTP.BasicAuthRequest.BasicAuthLayer{HTTP.MessageRequest.MessageLayer{HTTP.RetryRequest.RetryLayer{HTTP.ExceptionRequest.ExceptionLayer{HTTP.ConnectionRequest.ConnectionPoolLayer{HTTP.StreamRequest.StreamLayer{Union{}}}}}}}}, method::String, url::URIs.URI, headers::Vector{Pair{SubString{String}, SubString{String}}}, body::Vector{UInt8}; kw::Base.Iterators.Pairs{Symbol, Bool, Tuple{Symbol}, NamedTuple{(:reached_redirect_limit,), Tuple{Bool}}})
│        @ HTTP.BasicAuthRequest ~/.julia/packages/HTTP/4AvE2/src/BasicAuthRequest.jl:28
│     [13] request(::Type{HTTP.RedirectRequest.RedirectLayer{HTTP.BasicAuthRequest.BasicAuthLayer{HTTP.MessageRequest.MessageLayer{HTTP.RetryRequest.RetryLayer{HTTP.ExceptionRequest.ExceptionLayer{HTTP.ConnectionRequest.ConnectionPoolLayer{HTTP.StreamRequest.StreamLayer{Union{}}}}}}}}}, method::String, url::URIs.URI, headers::Vector{Pair{SubString{String}, SubString{String}}}, body::Vector{UInt8}; redirect_limit::Int64, forwardheaders::Bool, kw::Base.Iterators.Pairs{Union{}, Union{}, Tuple{}, NamedTuple{(), Tuple{}}})
│        @ HTTP.RedirectRequest ~/.julia/packages/HTTP/4AvE2/src/RedirectRequest.jl:28
│     [14] request(::Type{HTTP.RedirectRequest.RedirectLayer{HTTP.BasicAuthRequest.BasicAuthLayer{HTTP.MessageRequest.MessageLayer{HTTP.RetryRequest.RetryLayer{HTTP.ExceptionRequest.ExceptionLayer{HTTP.ConnectionRequest.ConnectionPoolLayer{HTTP.StreamRequest.StreamLayer{Union{}}}}}}}}}, method::String, url::URIs.URI, headers::Vector{Pair{SubString{String}, SubString{String}}}, body::Vector{UInt8})
│        @ HTTP.RedirectRequest ~/.julia/packages/HTTP/4AvE2/src/RedirectRequest.jl:21
│     [15] request(method::String, url::String, h::Vector{Pair{SubString{String}, SubString{String}}}, b::Vector{UInt8}; headers::Vector{Pair{SubString{String}, SubString{String}}}, body::Vector{UInt8}, query::Nothing, kw::Base.Iterators.Pairs{Union{}, Union{}, Tuple{}, NamedTuple{(), Tuple{}}})
│        @ HTTP ~/.julia/packages/HTTP/4AvE2/src/HTTP.jl:330
│     [16] request (repeats 2 times)
│        @ ~/.julia/packages/HTTP/4AvE2/src/HTTP.jl:330 [inlined]
│     [17] #get#17
│        @ ~/.julia/packages/HTTP/4AvE2/src/HTTP.jl:407 [inlined]
│     [18] get
│        @ ~/.julia/packages/HTTP/4AvE2/src/HTTP.jl:407 [inlined]
│     [19] open(c::Discord.Client; resume::Bool, delay::Second)
│        @ Discord ~/.julia/packages/Discord/AlPjh/src/gateway/gateway.jl:48
│     [20] reconnect(c::Discord.Client, ::Dict{Any, Any}; resume::Bool, zombie::Bool)
│        @ Discord ~/.julia/packages/Discord/AlPjh/src/gateway/gateway.jl:374
│     [21] heartbeat_loop(c::Discord.Client)
│        @ Discord ~/.julia/packages/Discord/AlPjh/src/gateway/gateway.jl:262
│     [22] (::Discord.var"#697#699"{Discord.Client})()
│        @ Discord ./task.jl:411
└ @ Discord ~/.julia/packages/Discord/AlPjh/src/gateway/gateway.jl:51
┌ Warning: Heartbeat loop exited unexpectedly
│   time = 2022-01-08T22:45:14.830
│   conn = 36
│   exception =
│    DNSError: discordapp.com, temporary failure (EAI_AGAIN)
│    Stacktrace:
│      [1] getalladdrinfo(host::String)
│        @ Sockets /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Sockets/src/addrinfo.jl:113
│      [2] getalladdrinfo
│        @ /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Sockets/src/addrinfo.jl:122 [inlined]
│      [3] getconnection(::Type{Sockets.TCPSocket}, host::SubString{String}, port::String; keepalive::Bool, connect_timeout::Int64, readtimeout::Int64, kw::Base.Iterators.Pairs{Symbol, Union{Nothing, Bool}, Tuple{Symbol, Symbol, Symbol}, NamedTuple{(:require_ssl_verification, :iofunction, :reached_redirect_limit), Tuple{Bool, Nothing, Bool}}})
│        @ HTTP.ConnectionPool ~/.julia/packages/HTTP/4AvE2/src/ConnectionPool.jl:659
│      [4] #getconnection#29
│        @ ~/.julia/packages/HTTP/4AvE2/src/ConnectionPool.jl:728 [inlined]
│      [5] newconnection(pod::HTTP.ConnectionPool.Pod, T::Type, host::SubString{String}, port::SubString{String}, pipeline_limit::Int64, require_ssl_verification::Bool, idle_timeout::Int64; kw::Base.Iterators.Pairs{Symbol, Union{Nothing, Bool}, Tuple{Symbol, Symbol}, NamedTuple{(:iofunction, :reached_redirect_limit), Tuple{Nothing, Bool}}})
│        @ HTTP.ConnectionPool ~/.julia/packages/HTTP/4AvE2/src/ConnectionPool.jl:626
│      [6] getconnection(::Type{HTTP.ConnectionPool.Transaction{MbedTLS.SSLContext}}, host::SubString{String}, port::SubString{String}; connection_limit::Int64, pipeline_limit::Int64, idle_timeout::Int64, reuse_limit::Int64, require_ssl_verification::Bool, kw::Base.Iterators.Pairs{Symbol, Union{Nothing, Bool}, Tuple{Symbol, Symbol}, NamedTuple{(:iofunction, :reached_redirect_limit), Tuple{Nothing, Bool}}})
│        @ HTTP.ConnectionPool ~/.julia/packages/HTTP/4AvE2/src/ConnectionPool.jl:570
│      [7] request(::Type{HTTP.ConnectionRequest.ConnectionPoolLayer{HTTP.StreamRequest.StreamLayer{Union{}}}}, url::URIs.URI, req::HTTP.Messages.Request, body::Vector{UInt8}; proxy::Nothing, socket_type::Type, reuse_limit::Int64, kw::Base.Iterators.Pairs{Symbol, Union{Nothing, Bool}, Tuple{Symbol, Symbol}, NamedTuple{(:iofunction, :reached_redirect_limit), Tuple{Nothing, Bool}}})
│        @ HTTP.ConnectionRequest ~/.julia/packages/HTTP/4AvE2/src/ConnectionRequest.jl:85
│      [8] request(::Type{HTTP.ExceptionRequest.ExceptionLayer{HTTP.ConnectionRequest.ConnectionPoolLayer{HTTP.StreamRequest.StreamLayer{Union{}}}}}, ::URIs.URI, ::Vararg{Any, N} where N; kw::Base.Iterators.Pairs{Symbol, Union{Nothing, Bool}, Tuple{Symbol, Symbol}, NamedTuple{(:iofunction, :reached_redirect_limit), Tuple{Nothing, Bool}}})
│        @ HTTP.ExceptionRequest ~/.julia/packages/HTTP/4AvE2/src/ExceptionRequest.jl:19
│      [9] (::Base.var"#70#72"{Base.var"#70#71#73"{ExponentialBackOff, HTTP.RetryRequest.var"#2#3"{Bool, HTTP.Messages.Request}, typeof(HTTP.request)}})(::Type, ::Vararg{Any, N} where N; kwargs::Base.Iterators.Pairs{Symbol, Union{Nothing, Bool}, Tuple{Symbol, Symbol}, NamedTuple{(:iofunction, :reached_redirect_limit), Tuple{Nothing, Bool}}})
│        @ Base ./error.jl:301
│     [10] #request#1
│        @ ~/.julia/packages/HTTP/4AvE2/src/RetryRequest.jl:44 [inlined]
│     [11] request(::Type{HTTP.MessageRequest.MessageLayer{HTTP.RetryRequest.RetryLayer{HTTP.ExceptionRequest.ExceptionLayer{HTTP.ConnectionRequest.ConnectionPoolLayer{HTTP.StreamRequest.StreamLayer{Union{}}}}}}}, method::String, url::URIs.URI, headers::Vector{Pair{SubString{String}, SubString{String}}}, body::Vector{UInt8}; http_version::VersionNumber, target::String, parent::Nothing, iofunction::Nothing, kw::Base.Iterators.Pairs{Symbol, Bool, Tuple{Symbol}, NamedTuple{(:reached_redirect_limit,), Tuple{Bool}}})
│        @ HTTP.MessageRequest ~/.julia/packages/HTTP/4AvE2/src/MessageRequest.jl:66
│     [12] request(::Type{HTTP.BasicAuthRequest.BasicAuthLayer{HTTP.MessageRequest.MessageLayer{HTTP.RetryRequest.RetryLayer{HTTP.ExceptionRequest.ExceptionLayer{HTTP.ConnectionRequest.ConnectionPoolLayer{HTTP.StreamRequest.StreamLayer{Union{}}}}}}}}, method::String, url::URIs.URI, headers::Vector{Pair{SubString{String}, SubString{String}}}, body::Vector{UInt8}; kw::Base.Iterators.Pairs{Symbol, Bool, Tuple{Symbol}, NamedTuple{(:reached_redirect_limit,), Tuple{Bool}}})
│        @ HTTP.BasicAuthRequest ~/.julia/packages/HTTP/4AvE2/src/BasicAuthRequest.jl:28
│     [13] request(::Type{HTTP.RedirectRequest.RedirectLayer{HTTP.BasicAuthRequest.BasicAuthLayer{HTTP.MessageRequest.MessageLayer{HTTP.RetryRequest.RetryLayer{HTTP.ExceptionRequest.ExceptionLayer{HTTP.ConnectionRequest.ConnectionPoolLayer{HTTP.StreamRequest.StreamLayer{Union{}}}}}}}}}, method::String, url::URIs.URI, headers::Vector{Pair{SubString{String}, SubString{String}}}, body::Vector{UInt8}; redirect_limit::Int64, forwardheaders::Bool, kw::Base.Iterators.Pairs{Union{}, Union{}, Tuple{}, NamedTuple{(), Tuple{}}})
│        @ HTTP.RedirectRequest ~/.julia/packages/HTTP/4AvE2/src/RedirectRequest.jl:28
│     [14] request(::Type{HTTP.RedirectRequest.RedirectLayer{HTTP.BasicAuthRequest.BasicAuthLayer{HTTP.MessageRequest.MessageLayer{HTTP.RetryRequest.RetryLayer{HTTP.ExceptionRequest.ExceptionLayer{HTTP.ConnectionRequest.ConnectionPoolLayer{HTTP.StreamRequest.StreamLayer{Union{}}}}}}}}}, method::String, url::URIs.URI, headers::Vector{Pair{SubString{String}, SubString{String}}}, body::Vector{UInt8})
│        @ HTTP.RedirectRequest ~/.julia/packages/HTTP/4AvE2/src/RedirectRequest.jl:21
│     [15] request(method::String, url::String, h::Vector{Pair{SubString{String}, SubString{String}}}, b::Vector{UInt8}; headers::Vector{Pair{SubString{String}, SubString{String}}}, body::Vector{UInt8}, query::Nothing, kw::Base.Iterators.Pairs{Union{}, Union{}, Tuple{}, NamedTuple{(), Tuple{}}})
│        @ HTTP ~/.julia/packages/HTTP/4AvE2/src/HTTP.jl:330
│     [16] request (repeats 2 times)
│        @ ~/.julia/packages/HTTP/4AvE2/src/HTTP.jl:330 [inlined]
│     [17] #get#17
│        @ ~/.julia/packages/HTTP/4AvE2/src/HTTP.jl:407 [inlined]
│     [18] get
│        @ ~/.julia/packages/HTTP/4AvE2/src/HTTP.jl:407 [inlined]
│     [19] open(c::Discord.Client; resume::Bool, delay::Second)
│        @ Discord ~/.julia/packages/Discord/AlPjh/src/gateway/gateway.jl:48
│     [20] reconnect(c::Discord.Client, ::Dict{Any, Any}; resume::Bool, zombie::Bool)
│        @ Discord ~/.julia/packages/Discord/AlPjh/src/gateway/gateway.jl:374
│     [21] heartbeat_loop(c::Discord.Client)
│        @ Discord ~/.julia/packages/Discord/AlPjh/src/gateway/gateway.jl:262
│     [22] (::Discord.var"#697#699"{Discord.Client})()
│        @ Discord ./task.jl:411
└ @ Discord ~/.julia/packages/Discord/AlPjh/src/gateway/gateway.jl:270
@tk3369
Copy link
Member Author

tk3369 commented Feb 26, 2022

@xxxAnn
Copy link

xxxAnn commented Mar 7, 2022

Discord's domain is discord.com, not discordapp.com. This might be the reason.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants