Bug 1472061 - mod_cluster + mod_proxy_wstunnel causes Segmentation Fault
Summary: mod_cluster + mod_proxy_wstunnel causes Segmentation Fault
Keywords:
Status: CLOSED DEFERRED
Alias: None
Product: JBoss Web Server 3
Classification: Retired
Component: mod_cluster
Version: 3.0.0
Hardware: x86_64
OS: Linux
unspecified
high
Target Milestone: ---
: ---
Assignee: Weinan Li
QA Contact: Michal Karm Babacek
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2017-07-18 02:10 UTC by KooV
Modified: 2017-07-18 06:13 UTC (History)
4 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2017-07-18 06:13:08 UTC
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Issue Tracker JBCS-375 0 Major New mod_cluster + mod_proxy_wstunnel causes Segmentation Fault 2017-10-09 07:14:59 UTC

Description KooV 2017-07-18 02:10:03 UTC
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.

Comment 1 Michal Karm Babacek 2017-07-18 06:13:08 UTC
Hi KooV, we migrated the project to another bug tracker, please, follow: https://issues.jboss.org/browse/JBCS-375


Note You need to log in before you can comment on or make changes to this bug.