Estamos recibiendo excepciones como estaC3p0 - aparente punto muerto en MSSQL, pero no PostgreSQL o MySQL
com[email protected]5b7a7896 -- APPARENT DEADLOCK!!! Complete Status:
Managed Threads: 3
Active Threads: 3
Active Tasks:
co[email protected]55bc5e2a (com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#1)
co[email protected]41ca435f (com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#2)
co[email protected]460d33b7 (com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#0)
Pending Tasks:
cuando la carga de probar nuestra aplicación en MSSQL 2008 R2 (jTDS o funcionario MS JDBC no importa) . Nunca obtenemos esta excepción cuando ejecutamos las mismas pruebas contra PostgreSQL o MySQL.
No solo queremos aumentar el número de subprocesos auxiliares para c3p0 (lo que resuelve el problema, pero ¿durante cuánto tiempo?). Queremos saber cuál es el problema ya que funciona con otros DBMS '.
Las aplicaciones se comporta como:
- Enviar X solicita
- Espere un momento -> DEADLOCK
- Enviar X solicita
- Espere un momento -> DEADLOCK
¿Alguien sabe o tiene una idea de por qué tenemos este comportamiento con MSSQL?
Gracias, Adrian
(BTW. BoneCP funciona sin ningún tipo de problema también.)
¿Qué es esta utilidad y por qué informa "aparente interbloqueo" en lugar de un punto muerto real? SQL Server detectará deadlocks reales. Puede rastrear el gráfico de interbloqueo para luego diagnosticar por qué ocurre. –
Hola Martin, SQL Server en sí no tiene bloqueos. Parece ser solo c3p0 (una biblioteca que agrupa lib para Java) asume que hubo un interbloqueo. – Adrian
Adrian: ¿puede aclarar si el uso de BoneCP evitó el problema? – tgdavies