生产应用程序每隔几天锁定一次。锁定总是在调用 Oracle.DataAccess.Client.OracleConnection.Open()。
有没有办法防止这种情况发生?
申请详情
挂起线程的堆栈跟踪
[NDirectMethodFrameStandalone: 0000000028eeceb0] Oracle.DataAccess.Client.OpsCon.Enlist(IntPtr, Oracle.DataAccess.Client.OpoConValCtx*, Oracle.DataAccess.Client.OpoConRefCtx)
DomainBoundILStubClass.IL_STUB_PInvoke(IntPtr, Oracle.DataAccess.Client.OpoConValCtx*, Oracle.DataAccess.Client.OpoConRefCtx)
Oracle.DataAccess.Client.ConnectionPool.GetConnection(Oracle.DataAccess.Client.OpoConCtx)
Oracle.DataAccess.Client.ConnectionDispenser.Open(Oracle.DataAccess.Client.OpoConCtx)
Oracle.DataAccess.Client.OracleConnection.Open()
NHibernate.Connection.DriverConnectionProvider.GetConnection()
NHibernate.AdoNet.ConnectionManager.GetConnection()
(Application specific code from this point down...)
连接字符串
失败连接的连接字符串是:
user id=myuser;
password=mypassword;
data source=dbserver;
Pooling=true;
Min Pool Size=1;
Max Pool Size=40;
validate connection=false;
enlist=true
其中一个Oracle对象的转储显示以下设置:
Oracle.DataAccess.Client.OpoConCtx
40 maxPoolSize
1 minPoolSize
5 poolIncSize
1 poolDecSize
180 poolRegulator