Uploaded image for project: 'JBoss Core Services'
  1. JBoss Core Services
  2. JBCS-375

mod_cluster + mod_proxy_wstunnel causes Segmentation Fault

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Major Major
    • None
    • httpd 2.4.6 SP1
    • mod_cluster-native
    • None
    • 32
    • +
    • Hide

      See description

      Show
      See description

      Reported by KooV <coolseed hotmail.com];

      Description of problem:

      mod_cluster + mod_proxy_wstunnel causes segfault

      Version-Release number of selected component (if applicable):

      RHEL 6.9 x86_64
      Jboss Web Server 3.0.3 + SP1
      JBoss EAP 6.4.16

      This occurred while testing the example https://access.redhat.com/solutions/47442

      mod_cluster.conf in httpd

      LoadModule proxy_cluster_module modules/mod_proxy_cluster.so
      LoadModule cluster_slotmem_module modules/mod_cluster_slotmem.so
      LoadModule manager_module modules/mod_manager.so
      LoadModule advertise_module modules/mod_advertise.so
      
      MemManagerFile /software/httpd/cache/mod_cluster
      
      Listen 192.168.0.81:6666
      <VirtualHost 192.168.0.81:6666>
          <Directory "/">
              Require all granted
          </Directory>
      
          KeepAliveTimeout 60
          MaxKeepAliveRequests 0
          ManagerBalancerName mycluster
          EnableMCPMReceive
          ServerAdvertise Off
      </VirtualHost>
      
      <Location /mc>
          SetHandler mod_cluster-manager
          Require all granted
      </Location>
      

      mod_proxy_wstunnel.conf in httpd

      LoadModule lbmethod_byrequests_module modules/mod_lbmethod_byrequests.so
      #LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
      LoadModule proxy_wstunnel_module modules/mod_proxy_wstunnel.so
      
      <Proxy balancer://TEST_WS>
          BalancerMember ws://192.168.0.81:8080 route=node11
          BalancerMember ws://192.168.0.82:8080 route=node21
          ProxySet stickysession=JSESSIONID|jsessionid
      </Proxy>
      
      RewriteEngine On
      
      RewriteCond %{HTTP:Connection} upgrade [NC]
      RewriteCond %{HTTP:Upgrade} websocket [NC]
      RewriteRule /jboss-websocket-hello/(.*)               balancer://TEST_WS/jboss-websocket-hello/$1 [P,L]
      

      If you request websocket open, segfault will always occur.

      This only happens when using a balancer and not when testing with no balancer.

      Similarly, wierd state occurs when using mod_jk + mod_proxy_wstunnel.

      If you try to stop httpd in the open state of websocket, it will not be stopped and it will end with SIGKILL.

      I think there is something wrong with balancer.

              gzaronik@redhat.com George Zaronikas
              mbabacek1@redhat.com Karm Karm
              Jean-Frederic Clere
              Paul Lodge Paul Lodge
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

                Created:
                Updated:
                Resolved: