Mientras analizaba algunos problemas de rendimiento en Wildfly 10.1 en escenarios de alta presión, llegué a la conclusión de que, a veces, los subprocesos HTTP paralelos se bloquean entre sí.
La razón parece ser que en algunas solicitudes HTTP ejecutamos dos consultas JPQL (en realidad, una eliminación y una selección) y, a veces, la segunda de las dos simplemente no obtuvo una conexión JDBC del grupo. (Usamos IBM DB2, si eso es importante...) Eso parecía bastante ridículo ya que la primera declaración ya tenía una conexión.
Después de leer los documentos de Hibernate, veo que el valor predeterminado para hibernate.connection.release_mode es after_statement y que after_transaction no se recomienda para aplicaciones JTA...
Entonces... ahora tengo algunas preguntas:
after_statement alguna vez tiene sentido? (a menos que tenga activado auto_comit, por supuesto...)after_transaction en aplicaciones JTA?after_transaction debería solucionar el problema descrito?¡Cualquier ayuda es apreciada!