You are viewing a plain text version of this content. The canonical link for it is here.
Posted to derby-dev@db.apache.org by "Kathey Marsden (JIRA)" <ji...@apache.org> on 2007/10/05 18:32:50 UTC

[jira] Commented: (DERBY-3108) Iteratively creating and closing client connection yields java.net.BindException: Address already in use: connect after many connections

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

Kathey Marsden commented on DERBY-3108:
---------------------------------------

Putting a Thread.sleep(100); after conn.close() seems to allow the program to proceed normally. The memory usage does seem to stabilize as well.
0:total memory: 5177344 free: 3178216 Fri Oct 05 09:04:02 PDT 2007
1000:total memory: 13910016 free: 9136080 Fri Oct 05 09:09:30 PDT 2007
2000:total memory: 22343680 free: 16539248 Fri Oct 05 09:13:50 PDT 2007
3000:total memory: 30523392 free: 18375392 Fri Oct 05 09:16:00 PDT 2007
4000:total memory: 30523392 free: 20268872 Fri Oct 05 09:18:10 PDT 2007
5000:total memory: 26595328 free: 21946728 Fri Oct 05 09:20:20 PDT 2007
6000:total memory: 31817728 free: 25131424 Fri Oct 05 09:22:44 PDT 2007
7000:total memory: 15085568 free: 9902184 Fri Oct 05 09:24:56 PDT 2007
8000:total memory: 16138240 free: 11623296 Fri Oct 05 09:27:12 PDT 2007
9000:total memory: 22986752 free: 16739320 Fri Oct 05 09:29:24 PDT 2007
10000:total memory: 27533312 free: 18153880 Fri Oct 05 09:31:44 PDT 2007

> 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.0.0
>            Reporter: Kathey Marsden
>         Attachments: ConnLoop.java
>
>
> 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.
-
You can reply to this email to add a comment to the issue online.