问题日志:

java.sql.SQLException: I/O Error: Read timed out
	at net.sourceforge.jtds.jdbc.TdsCore.executeSQL(TdsCore.java:1053) ~[jtds-1.2.5.jar:1.2.5]
	at net.sourceforge.jtds.jdbc.JtdsStatement.executeSQLQuery(JtdsStatement.java:465) ~[jtds-1.2.5.jar:1.2.5]
	at net.sourceforge.jtds.jdbc.JtdsStatement.executeQuery(JtdsStatement.java:1304) ~[jtds-1.2.5.jar:1.2.5]
	at net.sf.log4jdbc.sql.jdbcapi.StatementSpy.executeQuery(StatementSpy.java:731) ~[log4jdbc-log4j2-jdbc4-1.16.jar:na]
	at com.mchange.v2.c3p0.impl.DefaultConnectionTester.activeCheckConnection(DefaultConnectionTester.java:73) [c3p0-0.9.1.2.jar:0.9.1.2]
	at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.testPooledConnection(C3P0PooledConnectionPool.java:374) [c3p0-0.9.1.2.jar:0.9.1.2]
	at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.refurbishIdleResource(C3P0PooledConnectionPool.java:310) [c3p0-0.9.1.2.jar:0.9.1.2]
	at com.mchange.v2.resourcepool.BasicResourcePool$AsyncTestIdleResourceTask.run(BasicResourcePool.java:1999) [c3p0-0.9.1.2.jar:0.9.1.2]
	at com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:547) [c3p0-0.9.1.2.jar:0.9.1.2]
Caused by: java.net.SocketTimeoutException: Read timed out
	at java.net.SocketInputStream.socketRead0(Native Method) ~[na:1.6.0_43]
	at java.net.SocketInputStream.read(SocketInputStream.java:129) ~[na:1.6.0_43]
	at java.io.DataInputStream.readFully(DataInputStream.java:178) ~[na:1.6.0_43]
	at java.io.DataInputStream.readFully(DataInputStream.java:152) ~[na:1.6.0_43]
	at net.sourceforge.jtds.jdbc.SharedSocket.readPacket(SharedSocket.java:846) ~[jtds-1.2.5.jar:1.2.5]
	at net.sourceforge.jtds.jdbc.SharedSocket.getNetPacket(SharedSocket.java:727) ~[jtds-1.2.5.jar:1.2.5]
	at net.sourceforge.jtds.jdbc.ResponseStream.getPacket(ResponseStream.java:466) ~[jtds-1.2.5.jar:1.2.5]
	at net.sourceforge.jtds.jdbc.ResponseStream.read(ResponseStream.java:103) ~[jtds-1.2.5.jar:1.2.5]
	at net.sourceforge.jtds.jdbc.ResponseStream.peek(ResponseStream.java:88) ~[jtds-1.2.5.jar:1.2.5]
	at net.sourceforge.jtds.jdbc.TdsCore.wait(TdsCore.java:3932) ~[jtds-1.2.5.jar:1.2.5]
	at net.sourceforge.jtds.jdbc.TdsCore.executeSQL(TdsCore.java:1046) ~[jtds-1.2.5.jar:1.2.5]
	... 8 common frames omitted
2018-07-04 01:07:43 [ERROR] [com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#0] jdbc.sqltiming - 221. Connection.getAutoCommit()

一般来说是数据库连接问题,没有连上或是网络问题(网络波动)。

查看服务器jdbc日志,发现报read timed out异常不是连续的,是间断的,查一段时间库断了,在查一段时间库又断了。。。。。

问题日志:java.sql.SQLException: I/O Error: Read timed out at net.sourceforge.jtds.jdbc.TdsCore.executeSQL(TdsCore.java:1053) ~[jtds-1.2.5.jar:1.2.5] at net.sourceforge.jtds.jdbc.JtdsStatement.executeSQL...
问题 1:如何解决socket中如何处理DatainputStream的 read 方法读取堵塞?如果没有长时间数据进来如何让线程运行结束呢?大家看下代码哦,然后说下如何处理呢? 代码如下: Socket 的 setSoTimeout() 方法必须在接收数据之前执行才有效. 此外, 当输入流的 read ()方法抛出 SocketTimeoutException 后, Socket 仍然是连接的, 可
最近有个解析url的工作,根据工作需要,先从xml文件中获取url,然后打开该url,获取网页上的一些数据,结果出现了如下错误 java .net . SocketTimeoutException : Read timed out经过查找研究,原因是:客户端没有在限定的时间内将数据发送给服务器,服务器为了保证服务性能,认定那个连接已经失效,所以出现上述异常。错误位置定位如下: //1.获取url的输入流 dataInputStream DataInputStream dataInputStream=new DataInputStream(url.openStream()); //2.加一层BufferedInputStream BufferedInput...
通过接口读取数据时,报警 java .net . SocketTimeoutException : Read timed out at java .net .SocketInputStream.socket Read 0(Native Method) at java .net .SocketInputStream.socket Read (SocketInputStream. java :116) at java .net .SocketInputStream. read (SocketInputStream. java :1
上周产品那边反馈说拉取不到2022-01-30的美团第三方账单,于是果断查了下数据库,果然发现数据库中并没有2022-01-30的美团账单记录,分别查了下29号和31号后发现都是有的,就唯独30号的没有。当时我就纳闷了,不就是一个简单的拉取第三方账单的逻辑吗?怎么就会拉取不到呢?为了能够彻底解决我的疑惑,于是我马上去阿里云查了相关拉取日志,不查不知道,一查吓一跳,没想到拉取时还果真出 问题 了,见下图:   从上图中大家不难发现日志中明显报了 java .net . SocketTimeoutException .
java .net . SocketTimeoutException : Read timed out 异常解决 问题 描述: 使用RestTemplate调用对接系统接口时出现该异常 原因: httpClient在获取链接时候超时 解决: 将超时时间设置更长 SimpleClientHttpRequestFactory requestFactory = new SimpleClientHttpRequestFactory(); // 设置超时 单位为ms requestFac
analyze[boolean]:得到statement的真实运行时间。默认是false verbose[boolean]:得到statement语句的执行计划和执行计划中的每个节点的详细信息。默认为false costs[boole... CleanupFailureDataAccessException DAO操作失败执行,但在数据库资源释放时发生异常,如关闭Connection时发生异常等 ConcurrencyFailureException 表示在进行并发数据库操作时发生异常,如乐观锁无法获取、悲观锁无法获取、死锁引发发失败等。 DataAc...
java .net . SocketTimeoutException Read timed out是 Java 中的一个异常,它表示在进行网络通信时,读取数据超时。当一个Socket连接在一定时间内没有接收到数据时,就会抛出这个异常。 这个异常通常发生在以下情况下: 1. 服务器端没有及时响应客户端的请求,导致客户端等待超时。 2. 网络连接不稳定,导致数据传输过程中出现延迟或丢失。 3. 数据量过大,导致读取数据的时间超过了设置的超时时间。 为了解决这个 问题 ,可以采取以下措施: 1. 增加超时时间:可以通过设置Socket的超时时间来延长等待时间,例如使用Socket的setSoTimeout()方法。 2. 检查网络连接:确保网络连接稳定,可以尝试重新连接或者使用其他网络环境。 3. 优化代码逻辑:检查代码中是否存在耗时操作,如循环读取大量数据等,可以考虑优化代码逻辑以减少读取时间。