Estamos enfrentando un problema inusual en nuestra aplicación, en el último mes nuestra aplicación alcanzó un estado irrecuperable, Se recuperó después de reiniciar la aplicación.Volcado de subprocesos que muestra el estado Runnable, pero está colgado durante bastante tiempo
Antecedentes: nuestra aplicación realiza una consulta de base de datos para buscar información y esta base de datos está alojada en un nodo diferente.
Caso problemático: cuando se analizó el volcado de subprocesos, vemos que todos los subprocesos están en estado ejecutable obteniendo los datos de la base de datos, pero no terminó incluso después de 20 minutos.
Coloque el reinicio de la aplicación como se esperaba de todos los subprocesos recuperados. Y el uso de la CPU también era normal.
a continuación es el volcado de hilo
ThreadPool: 2: 47" prio = 3 tid = 0x0000000007334000 nid = 0x5F runnable [0xfffffd7fe9f54000] java.lang.Thread.State: RUNNABLE en oracle.jdbc. driver.T2CStatement.t2cParseExecuteDescribe (Método nativo) en oracle.jdbc.driver.T2CPreparedStatement.executeForDescribe (T2CPreparedStatement.java:518) en oracle.jdbc.driver.T2CPreparedStatement.executeForRows (T2CPreparedStatement.java:764) de Ora
All threads in the same state.
Preguntas:
- lo que podría ser la razón de este estado?
- cómo recuperarse en este caso?
se puede comprobar usando descarga hilo analizador http://mchr3k.github.com/javathreaddumpanalyser/ – GustyWind
¿Alguna vez encontrar una solución para esto? Estoy teniendo exactamente el mismo problema, y es recurrente cada pocas semanas/meses. – Kayaman
¿Está seguro de que una tubería no se rompió en algún lugar? –