我收到以下错误。让我知道出现此错误的可能原因。我没有应用代码。每当我们得到这个错误。我们重启应用程序。不是Db服务器。它得到了解决。让我知道是什么原因造成这个错误?
(:initial ( (:initial java.sql.SQLException: [Vignette Corp.][SQLServer JDBC Driver]Connection reset by peer: socket write error)(:msg [Vignette Corp.][SQLServer JDBC Driver]Connection reset by peer: socket write error[1.65.143884]) ))(:msg remote queue failure) )
at com.intraspect.objrel.collect.RemoteQueue.size(RemoteQueue.java:237)
at com.intraspect.objrel.collect.LocalSharedQueue.size(LocalSharedQueue.java:98)
at com.intraspect.scapi.datamodel.PersistentSharedQueue.size(PersistentSharedQueue.java:166)
at com.intraspect.scapi.datamodel.Notification.processNotifications(Notification.java:287)
at com.intraspect.scapi.datamodel.Notification.dailyProcessNotifications(Notification.java:263)
at com.intraspect.background.NotificationHandler$1.doit(NotificationHandler.java:32)
at com.intraspect.database.WrapTransaction.withCommandStateNew(WrapTransaction.java:251)
at com.intraspect.database.WrapTransaction.withCommandState(WrapTransaction.java:212)
at com.intraspect.database.WrapTransaction.withCommandState(WrapTransaction.java:107)
at com.intraspect.database.WrapTransaction.withCommandState(WrapTransaction.java:92)
at com.intraspect.database.WrapTransaction.withCommandState(WrapTransaction.java:83)
at com.intraspect.database.WrapTransaction.withCommandState(WrapTransaction.java:76)
at com.intraspect.background.NotificationHandler.dailyNotificationReporting(NotificationHandler.java:39)
at com.intraspect.background.NotificationHandler.doIt(NotificationHandler.java:14)
at com.intraspect.background.BackgroundJobHandler.run(BackgroundJobHandler.java:92)
Caused by: ( (:initial java.sql.SQLException: [Vignette Corp.][SQLServer JDBC Driver]Connection reset by peer: socket write error)(:msg [Vignette Corp.][SQLServer JDBC Driver]Connection reset by peer: socket write error[1.65.143884]) )
at com.intraspect.objrel.db.jdbc.JDBCUtil.wrapException(JDBCUtil.java:68)
at com.intraspect.objrel.db.jdbc.JDBCUtil.wrapException(JDBCUtil.java:27)
at com.intraspect.objrel.db.jdbc.JDBCAttribute.fetchCollectionElements(JDBCAttribute.java:658)
at com.intraspect.objrel.db.relational.RAttribute.fetchCollectionElements(RAttribute.java:111)
at com.intraspect.objrel.db.jdbc.JDBCDatabase.loadQueue(JDBCDatabase.java:856)
at com.intraspect.objrel.remote.collect.RRemoteQueue.<init>(RRemoteQueue.java:48)
at com.intraspect.objrel.remote.collect.RQueueMgr.getQueue(RQueueMgr.java:250)
at com.intraspect.objrel.remote.collect.RQueueMgr.size(RQueueMgr.java:318)
at com.intraspect.objrel.collect.RemoteQueue.size(RemoteQueue.java:234)
... 14 more
Caused by: java.sql.SQLException: [Vignette Corp.][SQLServer JDBC Driver]Connection reset by peer: socket write error
at com.vignette.jdbc.base.BaseExceptions.createException(Unknown Source)
at com.vignette.jdbc.base.BaseExceptions.getException(Unknown Source)
at com.vignette.jdbc.base.BaseExceptions.getException(Unknown Source)
at com.vignette.jdbc.sqlserver.tds.TDSRPCRequest.submitRequest(Unknown Source)
at com.vignette.jdbc.sqlserver.tds.TDSRPCNonCursorExecuteRequest.submitPrepExec(Unknown Source)
at com.vignette.jdbc.sqlserver.tds.TDSRPCExecuteRequest.doPrepExec(Unknown Source)
at com.vignette.jdbc.sqlserver.tds.TDSRPCExecuteRequest.execute(Unknown Source)
at com.vignette.jdbc.sqlserver.SQLServerImplStatement.execute(Unknown Source)
at com.vignette.jdbc.base.BaseStatement.commonExecute(Unknown Source)
at com.vignette.jdbc.base.BaseStatement.executeQueryInternal(Unknown Source)
at com.vignette.jdbc.base.BasePreparedStatement.executeQuery(Unknown Source)
at com.intraspect.objrel.db.jdbc.JDBCAttribute.fetchCollectionElements(JDBCAttribute.java:642)
... 20 more
答案 0 :(得分:1)
在TDS服务器(即Microsoft或Sybase)上发生这种情况的最可能原因是应用程序在完成处理前一个查询的结果之前尝试发送新查询。如果您的应用程序可以跨DBMS产品移植,那么它可能会以这种方式运行,因为其他DBMS产品没有这种限制。
您可能还会发现此FreeTDS FAQ条目很有趣。