Uploaded image for project: 'WildFly'
  1. WildFly
  2. WFLY-7267

[Proxy] No failover on empty response from node

    XMLWordPrintable

Details

    • Hide

      1. Start worker with servlet that has System.exit(1) call inside
      2. Start Eap as balancer
      3. Make request to servlet via balancer (curl BALANCER_ADDRESS:BALANCER_PORT/SERVLET)
      Expected :
      response with 50x response code
      Actual:
      No response, curl hang

      Show
      1. Start worker with servlet that has System.exit(1) call inside 2. Start Eap as balancer 3. Make request to servlet via balancer (curl BALANCER_ADDRESS:BALANCER_PORT/SERVLET) Expected : response with 50x response code Actual: No response, curl hang

    Description

      Undertow balancer do not recognizes empty response as an error.
      Can happen when JVM got killed when handling request (System.exit())

      @Override
              public void failed(final HttpServerExchange exchange) {
                  final long time = System.currentTimeMillis();
                  if (tries++ < maxRetryAttempts) { 
                  ...
      

      Undertow make curl hang.
      Apache httpd correctly recognizes empty response as error and starts fail over method. If unsuccessful, 50x is returned in response.

      Attachments

        Issue Links

          Activity

            People

              sdouglas1@redhat.com Stuart Douglas
              sdouglas1@redhat.com Stuart Douglas
              Jan Kasik Jan Kasik
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: