JTDS - java.sql.SQLException: I/O Error: Connection reset by peer: socket write error
Ich bin mit jTDS
ist ein open-source 100% pure Java (type 4) JDBC 3.0
Treiber für Microsoft SQL Server (2012)
.
Tomcat 7
- Ich habe Verbindungs-Pool-Konfiguration unter
<?xml version="1.0" encoding="UTF-8"?>
<Context antiJARLocking="true" path="/webapp">
<Resource name="jdbc/dbname" auth="Container" type="javax.sql.DataSource"
maxActive="100" maxIdle="30" maxWait="10000" removeAbandoned="true" removeAbandonedTimeout="60"
username="abc" password="abc" driverClassName="net.sourceforge.jtds.jdbc.Driver"
url="jdbc:jtds:sqlserver://localhost;databaseName=dbname;SelectMethod=Cursor"/>
</Context>
Manchmal, ich bin immer die, die unten Ausnahme - Nicht in der Lage, um eine Verbindung in sql server. Ich weiß nicht, der Grund, warum?
java.sql.SQLException: I/O Error: Connection reset by peer: socket
Fehler beim schreiben an
net.sourceforge.jtds.jdbc.TdsCore.executeSQL(TdsCore.java:1052)
net.sourceforge.jtds.jdbc.JtdsStatement.executeSQLQuery(JtdsStatement.java:465)
bei
net.sourceforge.jtds.jdbc.JtdsPreparedStatement.executeQuery(JtdsPreparedStatement.java:777)
bei
org.apache.tomcat.dbcp.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:93)
an
java.util.gleichzeitige.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
bei
java.util.gleichzeitige.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
bei java.lang.Thread.run(Thread.java:662), Verursacht durch:
java.net.SocketException: Connection reset by peer: socket write error
bei java.net.SocketOutputStream.socketWrite0(Native Method) at
java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:92)
bei java.net.SocketOutputStream.schreiben(SocketOutputStream.java:136) at
java.io.DataOutputStream.write(DataOutputStream.java:90) at
net.sourceforge.jtds.jdbc.SharedSocket.sendNetPacket(SharedSocket.java:671)
bei
net.sourceforge.jtds.jdbc.RequestStream.putPacket(RequestStream.java:560)
bei
net.sourceforge.jtds.jdbc.RequestStream.flush(RequestStream.java:508)
bei net.sourceforge.jtds.jdbc.TdsCore.executeSQL(TdsCore.java:1039)
... 8 weitere 17-Apr-2015 12:00:54 FEHLER PatientProcessor:614 -
SQLException java.sql.SQLException: Bereits geschlossen. bei
org.apache.tomcat.dbcp.dbcp.PoolableConnection.in der Nähe(PoolableConnection.java:84)
bei
org.apache.tomcat.dbcp.dbcp.PoolingDataSource$PoolGuardConnectionWrapper.close(PoolingDataSource.java:181)
an
java.util.gleichzeitige.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
bei
java.util.gleichzeitige.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
bei java.lang.Thread.run(Thread.java:662
Es gibt mehrere Anwendungen, die von sql server verwendet. Was wird sein max limit der Verbindung auf dem sql-server?
stackoverflow.com/questions/1499718/...
Das problem mit, wenn ich eine Verbindung herstellen können bestimmte Tabelle dieser Fehler Auftritt? Ist, dass Geräusche, Tabelle gesperrt ist? Wie um diesen Fehler zu beheben. Aber ich brauche, um die Datensätze aus dieser Tabelle?
Auch, wenn Sie sehen, die oben datasource-Konfiguration, maxActive verbindungen auf 100 gesetzt. Ist, dass die Konfiguration korrekt ist? Wenn wir reduzieren die maxActive verbindungen herauszufinden, dieses Problem?
InformationsquelleAutor arjun | 2015-05-13
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wahrscheinlich Überprüfen Sie die folgenden Bedingungen:
InformationsquelleAutor Jagadish Sharma U
Schließlich bin ich in der Lage zu finden, der Grund für diese Fehlermeldung bekommen.
Es ist da, Nach dem Neustart des Datenbankserver, den tomcat-server nicht neu gestartet wird, (so bleibt es lebendig, auch an der Zeit, einen Neustart der Datenbank). Damit die Verbindung im pool ungültig wird. Also, wenn die web-Seite versucht, erstellen der Datenbank-Verbindung für die erste Zeit diese Fehlermeldungen, und beim nächsten Versuch wird es gültig Verbindung aus dem connection-pool als application-server identifiziert seine verbindungen sind ungültig, so wird es einen pool von neuen verbindungen.
InformationsquelleAutor arjun