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
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.