Buenas!
Hace mucho que no hago nada de NH, pero quiero hacer un par de
cosillas y lo he retomado.
He montado un SQL Server 2005 en un VMWARE con Windows Server 2003.
El problema que tengo es cuando NH realizá la conexión con la BBDD.
Me saltá error en la siguiente linea:

transaction = session.BeginTransaction();

He utilizado el log4net para auditar instrucción a instrucción. Pero
cual es mi sorpresa cuando a veces me dice que es problema es que el
servidor no acepta conexiones remotas, cuando lo he configurado para
que si lo haga, y con una aplicación que tengo en local (Aqua) puedo
conectarme perfectamente a la BBDD del vmware. Y otras veces dice que
el pool de conexiones esta lleno, por que dejo abiertos muchas
conexiones, cuando solo abro una y como saltá el  error cuando empieza
la transacción no puedo cerrarla.

Os dejo el log de los dos errores:

...
2008-06-16 16:05:39,791 [7412] DEBUG
NHibernate.Impl.SessionFactoryImpl - Instantiated session factory
2008-06-16 16:05:39,808 [7412] DEBUG NHibernate.Impl.SessionImpl -
opened session
2008-06-16 16:05:39,809 [7412] DEBUG
NHibernate.Transaction.AdoTransaction - begin
2008-06-16 16:05:39,810 [7412] DEBUG
NHibernate.Connection.DriverConnectionProvider - Obtaining
IDbConnection from Driver
2008-06-16 16:05:54,903 [7412] ERROR NHibernate.ADOException - Could
not create connection from Driver
Exception: System.InvalidOperationException
Message: Timeout expired.  The timeout period elapsed prior to
obtaining a connection from the pool.  This may have occurred because
all pooled connections were in use and max pool size was reached.
Source: System.Data
   at
System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection
owningConnection)
   at
System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection
outerConnection, DbConnectionFactory connectionFactory)
   at System.Data.SqlClient.SqlConnection.Open()
   at NHibernate.Connection.DriverConnectionProvider.GetConnection()


y el otro:

2008-06-16 16:07:31,160 [6824] INFO
NHibernate.Impl.SessionFactoryObjectFactory - no name configured
2008-06-16 16:07:31,160 [6824] DEBUG
NHibernate.Impl.SessionFactoryImpl - Instantiated session factory
2008-06-16 16:07:31,175 [6824] DEBUG NHibernate.Impl.SessionImpl -
opened session
2008-06-16 16:07:31,177 [6824] DEBUG
NHibernate.Transaction.AdoTransaction - begin
2008-06-16 16:07:31,177 [6824] DEBUG
NHibernate.Connection.DriverConnectionProvider - Obtaining
IDbConnection from Driver
2008-06-16 16:07:45,976 [6824] ERROR NHibernate.ADOException - Could
not create connection from Driver
Exception: System.Data.SqlClient.SqlException
Message: An error has occurred while establishing a connection to the
server.  When connecting to SQL Server 2005, this failure may be
caused by the fact that under the default settings SQL Server does not
allow remote connections. (provider: Named Pipes Provider, error: 40 -
Could not open a connection to SQL Server)
Source: .Net SqlClient Data Provider
   at
System.Data.ProviderBase.DbConnectionPool.GetConnection(DbConnection
owningObject)
   at
System.Data.ProviderBase.DbConnectionPool.PoolCreateRequest(Object
state)
   at
System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection
owningConnection)
   at
System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection
outerConnection, DbConnectionFactory connectionFactory)
   at System.Data.SqlClient.SqlConnection.Open()
   at NHibernate.Connection.DriverConnectionProvider.GetConnection()

Si sirve de algo saltá mas a menudo el de conexiones remotas...
Seguramente ambas tienen algun tipo de relación que no consigo
entender.
Cualquier ayuda será agradecida.
Saluditos!


--~--~---------~--~----~------------~-------~--~----~
Para escribir al Grupo, hágalo a esta dirección: 
[email protected]
Para más, visite: http://groups.google.com/group/NHibernate-Hispano
-~----------~----~----~----~------~----~------~--~---

Responder a