You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by Jarrod Cuzens <jc...@veoh.com> on 2007/04/17 23:44:06 UTC

Trouble with APR and Tomcat 5.5.15

Hi All,

 

      We are currently experimenting with APR and libtcnative on our
machines. We have a machine in test that we configured and things when
quite smoothly (although it was RHEL4 and the production box we are
testing is CentOS). When we start tomcat and include all the relevant
library paths in the java.library.path we can see APR attempt to load
but it continually fails and reports that the socket was already in use.
When we remove the java.library.path (effectively turning off APR) we
restart and the server starts correctly with no complaints. We can
readily switch between the two configs and always get the same behavior.
I tried upgrading the Tomcat Native to the one from Tomcat 5.5.23 but
this has made no difference. I also tried running the server as root to
determine if this could have any impact but it did not make any
difference. I have included some relevant information below. Any help
you can give would be greatly appreciated.

 

Thanks,

Jarrod

 

+----------------------------------------------+

Tomcat 5.5.15

APR 1.2.8

Tomcat Native 1.1.6

 

Linux version 2.6.9-42.0.3.ELsmp (buildcentos@x8664-build.centos.org)
(gcc version 3.4.6 20060404 (Red Hat 3.4.6-3)) #1 SMP Fri Oct 6 06:28:26
CDT 2006

 

ldd libtcnative-1.so

        libapr-1.so.0 => /usr/local/apr/lib/libapr-1.so.0
(0x0000002a95678000)

        librt.so.1 => /lib64/tls/librt.so.1 (0x0000002a957a8000)

        libcrypt.so.1 => /lib64/libcrypt.so.1 (0x0000002a958c2000)

        libpthread.so.0 => /lib64/tls/libpthread.so.0
(0x0000002a959f7000)

        libdl.so.2 => /lib64/libdl.so.2 (0x0000002a95b0c000)

        libssl.so.4 => /lib64/libssl.so.4 (0x0000002a95c0f000)

        libcrypto.so.4 => /lib64/libcrypto.so.4 (0x0000002a95d4c000)

        libc.so.6 => /lib64/tls/libc.so.6 (0x0000002a95f7c000)

        /lib64/ld-linux-x86-64.so.2 (0x000000552aaaa000)

        libgssapi_krb5.so.2 => /usr/lib64/libgssapi_krb5.so.2
(0x0000002a961b0000)

        libkrb5.so.3 => /usr/lib64/libkrb5.so.3 (0x0000002a962c7000)

        libcom_err.so.2 => /lib64/libcom_err.so.2 (0x0000002a96438000)

        libk5crypto.so.3 => /usr/lib64/libk5crypto.so.3
(0x0000002a9653a000)

        libresolv.so.2 => /lib64/libresolv.so.2 (0x0000002a9665e000)

        libz.so.1 => /usr/lib64/libz.so.1 (0x0000002a96773000)

 

server.xml:

    <Connector port="8080" maxHttpHeaderSize="8192"

               maxThreads="150" minSpareThreads="25"
maxSpareThreads="75"

               enableLookups="false" redirectPort="8443"
acceptCount="100"

               connectionTimeout="20000" disableUploadTimeout="false"
unpackWARs="false"

               compression="off" compressionMinSize="2048"

               compressableMimeType="text/html"

        />

 

    <Connector port="8443" maxHttpHeaderSize="8192"

               maxThreads="150" minSpareThreads="25"
maxSpareThreads="75"

               enableLookups="false" connectionTimeout="20000"
disableUploadTimeout="false"

               acceptCount="100" scheme="https" secure="true"

 

                SSLEngine="on"

                SSLCertificateFile="######"

                SSLCertificateKeyFile="######"

                SSLPassword="######"

 

               clientAuth="false" sslProtocol="TLS"

                keystoreFile="######" keystorePass="######"

                keystoreType="PKCS12"/>

 

 

catalina.log

Apr 17, 2007 1:28:48 PM org.apache.coyote.http11.Http11AprProtocol init

SEVERE: Error initializing endpoint

java.lang.Exception: Socket bind failed: Address already in use

        at
org.apache.tomcat.util.net.AprEndpoint.init(AprEndpoint.java:544)

        at
org.apache.coyote.http11.Http11AprProtocol.init(Http11AprProtocol.java:1
15)

        at
org.apache.catalina.connector.Connector.initialize(Connector.java:1016)

        at
org.apache.catalina.core.StandardService.initialize(StandardService.java
:580)

        at
org.apache.catalina.core.StandardServer.initialize(StandardServer.java:7
82)

        at org.apache.catalina.startup.Catalina.load(Catalina.java:503)

        at org.apache.catalina.startup.Catalina.load(Catalina.java:523)

        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

        at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav
a:39)

        at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor
Impl.java:25)

        at java.lang.reflect.Method.invoke(Method.java:597)

        at
org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:247)

        at
org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:412)

Apr 17, 2007 1:28:48 PM org.apache.catalina.startup.Catalina load

SEVERE: Catalina.start

LifecycleException:  Protocol handler initialization failed:
java.lang.Exception: Socket bind failed: Address already in use

        at
org.apache.catalina.connector.Connector.initialize(Connector.java:1018)

        at
org.apache.catalina.core.StandardService.initialize(StandardService.java
:580)

        at
org.apache.catalina.core.StandardServer.initialize(StandardServer.java:7
82)

        at org.apache.catalina.startup.Catalina.load(Catalina.java:503)

        at org.apache.catalina.startup.Catalina.load(Catalina.java:523)

        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

        at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav
a:39)

        at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor
Impl.java:25)

        at java.lang.reflect.Method.invoke(Method.java:597)

        at
org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:247)

        at
org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:412)

 

 


Re: Trouble with APR and Tomcat 5.5.15

Posted by "Ilja S." <il...@frontdesk.ee>.
Hi
I had similar problem on Ubunutu Linux. Logs have been saying something 
about inability to bind to socket.

If log clearly says that address already in use (probably 8080). Check 
that no other application using this port.

If log says something like:
java.lang.Exception: Socket bind failed: [22] Invalid argument

Then try to disable ipv6 in your OS. This helped me.




*************************************
Best Regards
Ilja


Jarrod Cuzens wrote:
> Hi All,
> 
>  
> 
>       We are currently experimenting with APR and libtcnative on our
> machines. We have a machine in test that we configured and things when
> quite smoothly (although it was RHEL4 and the production box we are
> testing is CentOS). When we start tomcat and include all the relevant
> library paths in the java.library.path we can see APR attempt to load
> but it continually fails and reports that the socket was already in use.
> When we remove the java.library.path (effectively turning off APR) we
> restart and the server starts correctly with no complaints. We can
> readily switch between the two configs and always get the same behavior.
> I tried upgrading the Tomcat Native to the one from Tomcat 5.5.23 but
> this has made no difference. I also tried running the server as root to
> determine if this could have any impact but it did not make any
> difference. I have included some relevant information below. Any help
> you can give would be greatly appreciated.
> 
>  
> 
> Thanks,
> 
> Jarrod
> 
>  
> 
> +----------------------------------------------+
> 
> Tomcat 5.5.15
> 
> APR 1.2.8
> 
> Tomcat Native 1.1.6
> 
>  
> 
> Linux version 2.6.9-42.0.3.ELsmp (buildcentos@x8664-build.centos.org)
> (gcc version 3.4.6 20060404 (Red Hat 3.4.6-3)) #1 SMP Fri Oct 6 06:28:26
> CDT 2006
> 
>  
> 
> ldd libtcnative-1.so
> 
>         libapr-1.so.0 => /usr/local/apr/lib/libapr-1.so.0
> (0x0000002a95678000)
> 
>         librt.so.1 => /lib64/tls/librt.so.1 (0x0000002a957a8000)
> 
>         libcrypt.so.1 => /lib64/libcrypt.so.1 (0x0000002a958c2000)
> 
>         libpthread.so.0 => /lib64/tls/libpthread.so.0
> (0x0000002a959f7000)
> 
>         libdl.so.2 => /lib64/libdl.so.2 (0x0000002a95b0c000)
> 
>         libssl.so.4 => /lib64/libssl.so.4 (0x0000002a95c0f000)
> 
>         libcrypto.so.4 => /lib64/libcrypto.so.4 (0x0000002a95d4c000)
> 
>         libc.so.6 => /lib64/tls/libc.so.6 (0x0000002a95f7c000)
> 
>         /lib64/ld-linux-x86-64.so.2 (0x000000552aaaa000)
> 
>         libgssapi_krb5.so.2 => /usr/lib64/libgssapi_krb5.so.2
> (0x0000002a961b0000)
> 
>         libkrb5.so.3 => /usr/lib64/libkrb5.so.3 (0x0000002a962c7000)
> 
>         libcom_err.so.2 => /lib64/libcom_err.so.2 (0x0000002a96438000)
> 
>         libk5crypto.so.3 => /usr/lib64/libk5crypto.so.3
> (0x0000002a9653a000)
> 
>         libresolv.so.2 => /lib64/libresolv.so.2 (0x0000002a9665e000)
> 
>         libz.so.1 => /usr/lib64/libz.so.1 (0x0000002a96773000)
> 
>  
> 
> server.xml:
> 
>     <Connector port="8080" maxHttpHeaderSize="8192"
> 
>                maxThreads="150" minSpareThreads="25"
> maxSpareThreads="75"
> 
>                enableLookups="false" redirectPort="8443"
> acceptCount="100"
> 
>                connectionTimeout="20000" disableUploadTimeout="false"
> unpackWARs="false"
> 
>                compression="off" compressionMinSize="2048"
> 
>                compressableMimeType="text/html"
> 
>         />
> 
>  
> 
>     <Connector port="8443" maxHttpHeaderSize="8192"
> 
>                maxThreads="150" minSpareThreads="25"
> maxSpareThreads="75"
> 
>                enableLookups="false" connectionTimeout="20000"
> disableUploadTimeout="false"
> 
>                acceptCount="100" scheme="https" secure="true"
> 
>  
> 
>                 SSLEngine="on"
> 
>                 SSLCertificateFile="######"
> 
>                 SSLCertificateKeyFile="######"
> 
>                 SSLPassword="######"
> 
>  
> 
>                clientAuth="false" sslProtocol="TLS"
> 
>                 keystoreFile="######" keystorePass="######"
> 
>                 keystoreType="PKCS12"/>
> 
>  
> 
>  
> 
> catalina.log
> 
> Apr 17, 2007 1:28:48 PM org.apache.coyote.http11.Http11AprProtocol init
> 
> SEVERE: Error initializing endpoint
> 
> java.lang.Exception: Socket bind failed: Address already in use
> 
>         at
> org.apache.tomcat.util.net.AprEndpoint.init(AprEndpoint.java:544)
> 
>         at
> org.apache.coyote.http11.Http11AprProtocol.init(Http11AprProtocol.java:1
> 15)
> 
>         at
> org.apache.catalina.connector.Connector.initialize(Connector.java:1016)
> 
>         at
> org.apache.catalina.core.StandardService.initialize(StandardService.java
> :580)
> 
>         at
> org.apache.catalina.core.StandardServer.initialize(StandardServer.java:7
> 82)
> 
>         at org.apache.catalina.startup.Catalina.load(Catalina.java:503)
> 
>         at org.apache.catalina.startup.Catalina.load(Catalina.java:523)
> 
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 
>         at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav
> a:39)
> 
>         at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor
> Impl.java:25)
> 
>         at java.lang.reflect.Method.invoke(Method.java:597)
> 
>         at
> org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:247)
> 
>         at
> org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:412)
> 
> Apr 17, 2007 1:28:48 PM org.apache.catalina.startup.Catalina load
> 
> SEVERE: Catalina.start
> 
> LifecycleException:  Protocol handler initialization failed:
> java.lang.Exception: Socket bind failed: Address already in use
> 
>         at
> org.apache.catalina.connector.Connector.initialize(Connector.java:1018)
> 
>         at
> org.apache.catalina.core.StandardService.initialize(StandardService.java
> :580)
> 
>         at
> org.apache.catalina.core.StandardServer.initialize(StandardServer.java:7
> 82)
> 
>         at org.apache.catalina.startup.Catalina.load(Catalina.java:503)
> 
>         at org.apache.catalina.startup.Catalina.load(Catalina.java:523)
> 
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 
>         at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav
> a:39)
> 
>         at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor
> Impl.java:25)
> 
>         at java.lang.reflect.Method.invoke(Method.java:597)
> 
>         at
> org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:247)
> 
>         at
> org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:412)
> 
>  
> 
>  
> 
> 


---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org