Uploaded image for project: 'JBoss Web Server'
  1. JBoss Web Server
  2. JWS-253

Patched mod_proxy breaks mod_cluster compatibility

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Blocker Blocker
    • JWS 3.0.2 ER1
    • JWS 3.0.2 DR3
    • httpd
    • None

      An attempt to use mod_cluster functionality with JWS 3.0.2.DR3 results in the following irrecoverable error:

      [mpm_prefork:notice] [pid 12933] AH00163: Apache/2.4.6 (Red Hat) OpenSSL/1.0.1e-fips mod_auth_kerb/5.4 mod_cluster/1.3.1.Final configured -- resuming normal operations
      [core:notice] [pid 12933] AH00094: Command line: '/dev/shm/mod_cluster-eapx/jws-3.0/httpd/sbin/httpd -f /dev/shm/mod_cluster-eapx/jws-3.0/httpd/conf/httpd.conf -E /dev/shm/m    od_cluster-eapx/jws-3.0/httpd/logs/httpd.log'
      [proxy_ajp:error] [pid 12937] (104)Connection reset by peer: AH01030: ajp_ilink_receive() can't receive header
      [proxy_ajp:error] [pid 12937] [client 192.168.122.172:46911] AH00992: ajp_read_header: ajp_ilink_receive failed
      [proxy_ajp:error] [pid 12937] (120006)APR does not understand this error code: [client 192.168.122.172:46911] AH00878: read response failed from 192.168.122.172:8110 (192.16    8.122.172)
      [proxy:error] [pid 12937] AH00940: AJP: disabled connection for (192.168.122.172)
      [:error] [pid 12940] (104)Connection reset by peer: ajp_cping_cpong: apr_socket_recv failed
      [proxy:error] [pid 12937] AH00940: ajp: disabled connection for (192.168.122.172)
      

      A brief investigation revealed that if one replaces the following files, i.e. mod_proxy and the rest merely for their dependency:

      • mod_proxy.so
      • mod_proxy_ajp.so
      • mod_proxy_fcgi.so
      • mod_proxy_http.so
        with their counterparts from JWS 3.0.1, the failure on hand disappears. Please, note In the undermentioned that the connection error is expected and is entirely caused by an intentional failover:
        [mpm_prefork:notice] [pid 22933] AH00163: Apache/2.4.6 (Red Hat) OpenSSL/1.0.1e-fips mod_auth_kerb/5.4 mod_cluster/1.3.1.Final configured -- resuming normal operations
        [core:notice] [pid 22933] AH00094: Command line: '/dev/shm/mod_cluster-eapx/jws-3.0/httpd/sbin/httpd -f /dev/shm/mod_cluster-eapx/jws-3.0/httpd/conf/httpd.conf -E /dev/shm/mod_cluster-eapx/jws-3.0/httpd/logs/httpd.log'
        [proxy:error] [pid 22940] (111)Connection refused: AH00957: AJP: attempt to connect to 192.168.122.172:8009 (192.168.122.172) failed
        [proxy:error] [pid 22940] AH00959: ap_proxy_connect_backend disabling worker for (192.168.122.172) for 60s
        [proxy_ajp:error] [pid 22940] [client 192.168.122.172:47473] AH00896: failed to make connection to backend: 192.168.122.172
        [mpm_prefork:notice] [pid 22933] AH00169: caught SIGTERM, shutting down
        

        Mod_cluster hasn't been patched, AFAIK, whereas mod_proxy headers show outright obnoxious differences between JWS 3.0.1 and JWS 3.0.2.DR3.

      Debug log of a simple failover test attached: error_log.zip. Last but not least, I compiled upstream httpd 2.4.17 with mod_cluster tag 1.3.1.Final and I haven't seen the error.

              rhn-engineering-jclere Jean-Frederic Clere
              mbabacek1@redhat.com Karm Karm
              Karm Karm Karm Karm
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated:
                Resolved: