Skip to content

Test failures with webrick 1.7 #448

Description

@dleidert

We see the tests in httpclient run into timeouts with webrick 1.7.0. I was able to track it down to this line in lib/httpclient/session.rb:

    799     StatusParseRegexp = %r(\AHTTP/(\d+\.\d+)\s+(\d\d\d)\s*([^\r\n]+)?\r?\n\z)
    800     def parse_header(socket)
    801       ::Timeout.timeout(@receive_timeout, ReceiveTimeoutError) do
    802         initial_line = nil
    803         begin
    804           begin
=>  805             initial_line = socket.gets("\n")
    806             if initial_line.nil?
    807               close
    808               raise KeepAliveDisconnected.new(self)
    809             end
    810           rescue Errno::ECONNABORTED, Errno::ECONNRESET, Errno::EPIPE, IOError

Here it "stalls". The problem is caused by this small change in webrick:

ruby/webrick@069e9b1

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions