db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Myrna van Lunteren (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (DERBY-3108) Iteratively creating and closing client connection yields java.net.BindException: Address already in use: connect after many connections
Date Wed, 14 Nov 2012 17:40:12 GMT

    [ https://issues.apache.org/jira/browse/DERBY-3108?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13497258#comment-13497258
] 

Myrna van Lunteren commented on DERBY-3108:
-------------------------------------------

Re running tests...
The derby regression tests are in package org.apache.derbyTesting and reside in the source
tree under (trunk/branch#)/java/testing/org/apache/derbyTesting.

There are two test harnesses, as the community has (only for the last 6 years or so) been
working to convert from the master-based tests (as in the original derby contribution), to
junit based tests.
The original tests, often referred to as 'derbyall' after the main test suite, or 'old test
harness' is documented in a README in the codeline: http://svn.apache.org/viewvc/db/derby/code/trunk/java/testing/README.htm?view=co
I think for this functionality, the old test harness might still have a few useful regresion
tests (e.g. DerbyNetAutoStart). Especially the suite derbynetclientmats might be useful.
The junit framework, with the main suite 'suites.All' is described on the wiki: http://wiki.apache.org/db-derby/DerbyTesting
and in particular http://wiki.apache.org/db-derby/DerbyJUnitTesting. You need junit 3.8.2
for this. 

Ideally new tests would be junit tests.
                
> Iteratively creating and closing client connection yields java.net.BindException: Address
already in use: connect after many connections
> ----------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: DERBY-3108
>                 URL: https://issues.apache.org/jira/browse/DERBY-3108
>             Project: Derby
>          Issue Type: Bug
>          Components: Network Client, Network Server
>    Affects Versions: 10.4.1.3
>            Reporter: Kathey Marsden
>         Attachments: ConnLoop.java, derby3108.patch
>
>
> The attached program ConnLoop just creates client connections, uses them and then closes
them. After about 3000 connections I get the following error.  Also the memory usage seems
to be increasing rapidly.  This may be the cause of DERBY-2344.
> [C:/kmarsden/repro/DERBY-2344] java ConnLoop
> Apache Derby Network Server - 10.4.0.0 alpha - (578868M) started and ready to accept
connections on port 1527 at 2007-10
> -05 15:56:57.500 GMT
> 0:total memory: 5435392 free: 2749776 Fri Oct 05 08:57:09 PDT 2007
> 1000:total memory: 13701120 free: 10586720 Fri Oct 05 08:57:40 PDT 2007
> 2000:total memory: 20738048 free: 12805336 Fri Oct 05 08:58:09 PDT 2007
> 3000:total memory: 24006656 free: 11053832 Fri Oct 05 08:58:40 PDT 2007
> Exception in thread "main" java.sql.SQLNonTransientConnectionException: java.net.BindException
: Error connecting to ser
> ver localhost on port 1527 with message Address already in use: connect.
>         at org.apache.derby.client.am.SQLExceptionFactory40.getSQLException(SQLExceptionFactory40.java:70)
>         at org.apache.derby.client.am.SqlException.getSQLException(SqlException.java:362)
>         at org.apache.derby.jdbc.ClientDriver.connect(ClientDriver.java:149)
>         at java.sql.DriverManager.getConnection(DriverManager.java:582)
>         at java.sql.DriverManager.getConnection(DriverManager.java:207)
>         at ConnLoop.main(ConnLoop.java:18)
> Caused by: org.apache.derby.client.am.DisconnectException: java.net.BindException : Error
connecting to server localhost
>  on port 1527 with message Address already in use: connect.
>         at org.apache.derby.client.net.NetAgent.<init>(NetAgent.java:129)
>         at org.apache.derby.client.net.NetConnection.newAgent_(NetConnection.java:1086)
>         at org.apache.derby.client.am.Connection.<init>(Connection.java:349)
>         at org.apache.derby.client.net.NetConnection.<init>(NetConnection.java:209)
>         at org.apache.derby.client.net.NetConnection40.<init>(NetConnection40.java:77)
>         at org.apache.derby.client.net.ClientJDBCObjectFactoryImpl40.newNetConnection(ClientJDBCObjectFactoryImpl40.java
> :209)
>         at org.apache.derby.jdbc.ClientDriver.connect(ClientDriver.java:140)
>         ... 3 more
> Caused by: java.net.BindException: Address already in use: connect
>         at java.net.PlainSocketImpl.socketConnect(Native Method)
>         at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
>         at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
>         at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
>         at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
>         at java.net.Socket.connect(Socket.java:519)
>         at java.net.Socket.connect(Socket.java:469)
>         at java.net.Socket.<init>(Socket.java:366)
>         at java.net.Socket.<init>(Socket.java:179)
>         at javax.net.DefaultSocketFactory.createSocket(SocketFactory.java:196)
>         at org.apache.derby.client.net.OpenSocketAction.run(OpenSocketAction.java:62)
>         at java.security.AccessController.doPrivileged(Native Method)
>         at org.apache.derby.client.net.NetAgent.<init>(NetAgent.java:127)
>         ... 9 more
> [C:/kmarsden/repro/DERBY-2344]

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Mime
View raw message