Skip to content

Commit

Permalink
Add more errors to ignore list in UDP socket
Browse files Browse the repository at this point in the history
UDPServer overwrites Cool.io's IO#on_readable so
it should handle unrecoverable IO error like TCPSocket.

https://github.com/tarcieri/cool.io/blob/c79b4dff788071fcc45fac838d5d76dc645b8c1d/lib/cool.io/io.rb#L128

Signed-off-by: Masahiro Nakagawa <[email protected]>
  • Loading branch information
repeatedly committed Feb 25, 2019
1 parent 7b6d176 commit c780e53
Showing 1 changed file with 2 additions and 2 deletions.
4 changes: 2 additions & 2 deletions lib/fluent/plugin_helper/server.rb
Original file line number Diff line number Diff line change
Expand Up @@ -523,7 +523,7 @@ def initialize(sock, max_bytes, flags, close_socket, log, under_plugin_developme
def on_readable_without_sock
begin
data = @sock.recv(@max_bytes, @flags)
rescue Errno::EAGAIN, Errno::EWOULDBLOCK, Errno::EINTR, Errno::ECONNRESET
rescue Errno::EAGAIN, Errno::EWOULDBLOCK, Errno::EINTR, Errno::ECONNRESET, IOError, Errno::EBADF
return
end
@callback.call(data)
Expand All @@ -536,7 +536,7 @@ def on_readable_without_sock
def on_readable_with_sock
begin
data, addr = @sock.recvfrom(@max_bytes)
rescue Errno::EAGAIN, Errno::EWOULDBLOCK, Errno::EINTR, Errno::ECONNRESET
rescue Errno::EAGAIN, Errno::EWOULDBLOCK, Errno::EINTR, Errno::ECONNRESET, IOError, Errno::EBADF
return
end
@callback.call(data, UDPCallbackSocket.new(@sock, addr, close_socket: @close_socket))
Expand Down

0 comments on commit c780e53

Please sign in to comment.