Bug 1094290

Summary: [QE] (6.2.x) (document known issue and close after 6.2.3) NIO2 Connector is not properly reloaded during reload operation on IBM 1.7 JDK
Product: [JBoss] JBoss Enterprise Application Platform 6 Reporter: Radim Hatlapatka <rhatlapa>
Component: WebAssignee: Carlo de Wolf <cdewolf>
Status: CLOSED CANTFIX QA Contact: Radim Hatlapatka <rhatlapa>
Severity: urgent Docs Contact: Russell Dickenson <rdickens>
Priority: unspecified    
Version: 6.2.3CC: cdewolf, hmlnarik, jclere, myarboro, ochaloup, pkremens, twells
Target Milestone: GA   
Target Release: EAP 6.2.3   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: 1076439 Environment:
ibm-jdk-1.7
Last Closed: 2014-05-21 07:55:20 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1076439    
Bug Blocks: 1067532, 1099440    

Description Radim Hatlapatka 2014-05-05 12:44:22 UTC
+++ This bug was initially created as a clone of Bug #1076439 +++

Description of problem:
When you start EAP 6 on IBM JDK 1.7 and try reload the server, following message appears in logs [1]. This is error caused by NIO2 connector which isn't properly reloaded and original remains running.


Version-Release number of selected component (if applicable): EAP 6.2.0.DR4, IBM JDK 1.7


How reproducible: always


Steps to Reproduce:
1. start EAP (./standalone.sh)
2. reload the server (./jboss-cli.sh -c reload)
3. see log output

Actual results:
error message regarding unable to start the web connector [1]

Expected results: 
properly reloaded connector without any error message


Additional info:


[1]
0:57:21,423 ERROR [org.apache.coyote.http11.Http11NioProtocol] (MSC service thread 1-6) JBWEB003043: Error initializing endpoint: java.net.BindException: Address already in use
        at sun.nio.ch.Net.bind0(Native Method) [rt.jar:1.7.0]
        at sun.nio.ch.Net.bind(Net.java:567) [rt.jar:1.7.0]
        at sun.nio.ch.Net.bind(Net.java:553) [rt.jar:1.7.0]
        at sun.nio.ch.AsynchronousServerSocketChannelImpl.bind(AsynchronousServerSocketChannelImpl.java:174) [rt.jar:1.7.0]
        at org.apache.tomcat.util.net.DefaultNioServerSocketChannelFactory.createServerChannel(DefaultNioServerSocketChannelFactory.java:107) [jbossweb-7.4.0.Beta4.jar:7.4.0.Beta4]
        at org.apache.tomcat.util.net.NioEndpoint.init(NioEndpoint.java:214) [jbossweb-7.4.0.Beta4.jar:7.4.0.Beta4]
        at org.apache.coyote.http11.Http11NioProtocol.init(Http11NioProtocol.java:113) [jbossweb-7.4.0.Beta4.jar:7.4.0.Beta4]
        at org.apache.catalina.connector.Connector.init(Connector.java:983) [jbossweb-7.4.0.Beta4.jar:7.4.0.Beta4]
        at org.jboss.as.web.WebConnectorService.start(WebConnectorService.java:304) [jboss-as-web-7.4.0.Final-redhat-4.jar:7.4.0.Final-redhat-4]
        at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1980) [jboss-msc-1.1.5.Final.jar:1.1.5.Final]
        at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1913) [jboss-msc-1.1.5.Final.jar:1.1.5.Final]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1170) [rt.jar:1.7.0]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:640) [rt.jar:1.7.0]
        at java.lang.Thread.run(Thread.java:853) [vm.jar:1.7.0]
 
10:57:21,447 INFO  [org.jboss.as.connector.subsystems.datasources] (ServerService Thread Pool -- 26) JBAS010403: Deploying JDBC-compliant driver class org.h2.Driver (version 1.3)
10:57:21,453 INFO  [org.jboss.as.naming] (MSC service thread 1-7) JBAS011802: Starting Naming Service
10:57:21,468 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-6) MSC000001: Failed to start service jboss.web.connector.http: org.jboss.msc.service.StartException in service jboss.web.connector.http: JBAS018007: Error starting web connector
        at org.jboss.as.web.WebConnectorService.start(WebConnectorService.java:362)
        at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1980) [jboss-msc-1.1.5.Final.jar:1.1.5.Final]
        at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1913) [jboss-msc-1.1.5.Final.jar:1.1.5.Final]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1170) [rt.jar:1.7.0]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:640) [rt.jar:1.7.0]
        at java.lang.Thread.run(Thread.java:853) [vm.jar:1.7.0]
Caused by: LifecycleException:  JBWEB000023: Protocol handler initialization failed
        at org.apache.catalina.connector.Connector.init(Connector.java:985)
        at org.jboss.as.web.WebConnectorService.start(WebConnectorService.java:304)
        ... 5 more
 
10:57:21,489 INFO  [org.jboss.as.mail.extension] (MSC service thread 1-8) JBAS015400: Bound mail session [java:jboss/mail/Default]
10:57:21,506 INFO  [org.jboss.ws.common.management] (MSC service thread 1-7) JBWS022052: Starting JBoss Web Services - Stack CXF Server 4.3.0.CR2
10:57:21,516 INFO  [org.jboss.as.connector.subsystems.datasources] (MSC service thread 1-5) JBAS010400: Bound data source [java:jboss/datasources/ExampleDS]
10:57:21,569 INFO  [org.jboss.as.remoting] (MSC service thread 1-6) JBAS017100: Listening on 127.0.0.1:9999
10:57:21,575 INFO  [org.jboss.as.remoting] (MSC service thread 1-6) JBAS017100: Listening on 127.0.0.1:4447
10:57:21,576 INFO  [org.jboss.as.server.deployment.scanner] (MSC service thread 1-3) JBAS015012: Started FileSystemDeploymentService for directory /home/rhatlapa/projects/redhat_projects/eap/repo/6.3/jboss-eap-6.3/standalone/deployments
10:57:21,670 INFO  [org.jboss.as.controller] (Controller Boot Thread) JBAS014774: Service status report
JBAS014777:   Services which failed to start:      service jboss.web.connector.http: org.jboss.msc.service.StartException in service jboss.web.connector.http: JBAS018007: Error starting web connector

--- Additional comment from Jean-frederic Clere on 2014-04-03 02:23:29 EDT ---

Is that working for the other connectors?

Could you retest with 7.4.0.Final?

--- Additional comment from Radim Hatlapatka on 2014-04-04 04:25:33 EDT ---

I have tried it with JIO connector [1] and with it it works just fine.

[1]
<connector name="http" protocol="org.apache.coyote.http11.Http11Protocol" scheme="http" socket-binding="http"/>

--- Additional comment from Jean-frederic Clere on 2014-04-28 11:23:52 EDT ---

Note that you need to set the NIO2 connector tot get the error:
protocol="org.apache.coyote.http11.Http11NioProtocol" in the connector

--- Additional comment from Jean-frederic Clere on 2014-04-29 13:03:30 EDT ---

That small file shows that the problem isn't the NIO2 connector but the JVM.
try on Oracle JVM = OK.
try on IBM JVM (ibm-java-i386-71) = exception...

--- Additional comment from Radim Hatlapatka on 2014-05-05 08:18:29 EDT ---

It should be documented in release notes, that NIO2 connector cannot work with the IBM JDK 1.7 as noted by Jean-Frederic

Comment 2 Carlo de Wolf 2014-05-21 07:55:20 UTC
IBM JDK bug

Comment 3 Red Hat Bugzilla 2023-09-14 02:07:22 UTC
The needinfo request[s] on this closed bug have been removed as they have been unresolved for 1000 days