You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@iotdb.apache.org by "Xiangdong Huang (Jira)" <ji...@apache.org> on 2020/08/10 16:10:00 UTC
[jira] [Created] (IOTDB-832) reconnection failed: the SessionPool
has wait for 60 seconds to get a new connection
Xiangdong Huang created IOTDB-832:
-------------------------------------
Summary: reconnection failed: the SessionPool has wait for 60 seconds to get a new connection
Key: IOTDB-832
URL: https://issues.apache.org/jira/browse/IOTDB-832
Project: Apache IoTDB
Issue Type: Bug
Components: Client/Java
Affects Versions: 0.9.3, 0.10.0, 0.11.0, 0.10.1
Reporter: Xiangdong Huang
SessionPool can reconnect the server automatically if the connection is broken.
However, if the server is down and therefore session pool reconnects failed, the pool still considers the size of session connections that it owns should be +1, which leads to no more sessions can be created.
{code:java}
// Some comments here
23:41:27.902 [Thread-1] DEBUG org.apache.iotdb.session.pool.SessionPool - Create a new Session 127.0.0.1, 6667, root, root
23:41:27.902 [Thread-0] DEBUG org.apache.iotdb.session.pool.SessionPool - Create a new Session 127.0.0.1, 6667, root, root
23:41:27.902 [Thread-2] DEBUG org.apache.iotdb.session.pool.SessionPool - Create a new Session 127.0.0.1, 6667, root, root
23:41:32.923 [Thread-1] DEBUG org.apache.iotdb.session.pool.SessionPool - Remove a broken Session 127.0.0.1, 6667, root, root
23:41:32.923 [Thread-2] WARN org.apache.thrift.transport.TIOStreamTransport - Error closing output stream.
java.net.SocketException: Socket closed
at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:118)
at java.net.SocketOutputStream.write(SocketOutputStream.java:155)
at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:82)
at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:140)
at java.io.FilterOutputStream.close(FilterOutputStream.java:158)
at org.apache.thrift.transport.TIOStreamTransport.close(TIOStreamTransport.java:108)
at org.apache.thrift.transport.TSocket.close(TSocket.java:235)
at org.apache.thrift.transport.TFastFramedTransport.close(TFastFramedTransport.java:115)
at org.apache.iotdb.session.Session.close(Session.java:192)
at org.apache.iotdb.session.pool.SessionPool.closeSession(SessionPool.java:215)
at org.apache.iotdb.session.pool.SessionPool.cleanSessionAndMayThrowConnectionException(SessionPool.java:223)
at org.apache.iotdb.session.pool.SessionPool.insertRecord(SessionPool.java:391)
at org.apache.iotdb.SessionPoolExample.lambda$insertRecord$0(SessionPoolExample.java:74)
at java.lang.Thread.run(Thread.java:748)
23:41:32.923 [Thread-0] DEBUG org.apache.iotdb.session.pool.SessionPool - Remove a broken Session 127.0.0.1, 6667, root, root
23:41:32.923 [Thread-0] DEBUG org.apache.iotdb.session.pool.SessionPool - Create a new Session 127.0.0.1, 6667, root, root
23:41:32.923 [Thread-2] DEBUG org.apache.iotdb.session.pool.SessionPool - Remove a broken Session 127.0.0.1, 6667, root, root
23:41:32.923 [Thread-2] DEBUG org.apache.iotdb.session.pool.SessionPool - Create a new Session 127.0.0.1, 6667, root, root
23:41:32.924 [Thread-1] DEBUG org.apache.iotdb.session.pool.SessionPool - Create a new Session 127.0.0.1, 6667, root, root
org.apache.iotdb.rpc.IoTDBConnectionException: org.apache.thrift.transport.TTransportException: java.net.ConnectException: Connection refused (Connection refused)
at org.apache.iotdb.session.Session.open(Session.java:130)
at org.apache.iotdb.session.Session.open(Session.java:115)
at org.apache.iotdb.session.pool.SessionPool.getSession(SessionPool.java:144)
at org.apache.iotdb.session.pool.SessionPool.insertRecord(SessionPool.java:384)
at org.apache.iotdb.SessionPoolExample.lambda$insertRecord$0(SessionPoolExample.java:74)
at java.lang.Thread.run(Thread.java:748)
Caused by: org.apache.thrift.transport.TTransportException: java.net.ConnectException: Connection refused (Connection refused)
at org.apache.thrift.transport.TSocket.open(TSocket.java:226)
at org.apache.thrift.transport.TFastFramedTransport.open(TFastFramedTransport.java:125)
at org.apache.iotdb.session.Session.open(Session.java:128)
... 5 more
Caused by: java.net.ConnectException: Connection refused (Connection refused)
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
at java.net.Socket.connect(Socket.java:589)
at org.apache.thrift.transport.TSocket.open(TSocket.java:221)
... 7 more
org.apache.iotdb.rpc.IoTDBConnectionException: org.apache.thrift.transport.TTransportException: java.net.ConnectException: Connection refused (Connection refused)
at org.apache.iotdb.session.Session.open(Session.java:130)
at org.apache.iotdb.session.Session.open(Session.java:115)
at org.apache.iotdb.session.pool.SessionPool.getSession(SessionPool.java:144)
at org.apache.iotdb.session.pool.SessionPool.insertRecord(SessionPool.java:384)
at org.apache.iotdb.SessionPoolExample.lambda$insertRecord$0(SessionPoolExample.java:74)
at java.lang.Thread.run(Thread.java:748)
Caused by: org.apache.thrift.transport.TTransportException: java.net.ConnectException: Connection refused (Connection refused)
at org.apache.thrift.transport.TSocket.open(TSocket.java:226)
at org.apache.thrift.transport.TFastFramedTransport.open(TFastFramedTransport.java:125)
at org.apache.iotdb.session.Session.open(Session.java:128)
... 5 more
Caused by: java.net.ConnectException: Connection refused (Connection refused)
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
at java.net.Socket.connect(Socket.java:589)
at org.apache.thrift.transport.TSocket.open(TSocket.java:221)
... 7 more
org.apache.iotdb.rpc.IoTDBConnectionException: org.apache.thrift.transport.TTransportException: java.net.ConnectException: Connection refused (Connection refused)
at org.apache.iotdb.session.Session.open(Session.java:130)
at org.apache.iotdb.session.Session.open(Session.java:115)
at org.apache.iotdb.session.pool.SessionPool.getSession(SessionPool.java:144)
at org.apache.iotdb.session.pool.SessionPool.insertRecord(SessionPool.java:384)
at org.apache.iotdb.SessionPoolExample.lambda$insertRecord$0(SessionPoolExample.java:74)
at java.lang.Thread.run(Thread.java:748)
Caused by: org.apache.thrift.transport.TTransportException: java.net.ConnectException: Connection refused (Connection refused)
at org.apache.thrift.transport.TSocket.open(TSocket.java:226)
at org.apache.thrift.transport.TFastFramedTransport.open(TFastFramedTransport.java:125)
at org.apache.iotdb.session.Session.open(Session.java:128)
... 5 more
Caused by: java.net.ConnectException: Connection refused (Connection refused)
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
at java.net.Socket.connect(Socket.java:589)
at org.apache.thrift.transport.TSocket.open(TSocket.java:221)
... 7 more
23:41:42.946 [Thread-0] WARN org.apache.iotdb.session.pool.SessionPool - the SessionPool has wait for 10 seconds to get a new connection: 127.0.0.1:6667 with root, root
23:41:42.946 [Thread-0] WARN org.apache.iotdb.session.pool.SessionPool - current occupied size 0, queue size 0, considered size 3
org.apache.iotdb.rpc.IoTDBConnectionException: timeout to get a connection from 127.0.0.1:6667
at org.apache.iotdb.session.pool.SessionPool.getSession(SessionPool.java:126)
at org.apache.iotdb.session.pool.SessionPool.insertRecord(SessionPool.java:384)
at org.apache.iotdb.SessionPoolExample.lambda$insertRecord$0(SessionPoolExample.java:74)
at java.lang.Thread.run(Thread.java:748)
{code}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)