Bonjour,
J'ai récupéré un thread dump (à l'aide de jConsole) de mon appli qui est bloquée chez un client. Le thread EDT semble complètement bloqué (le contenu de la fenêtre n'est pas redessiné). Par contre, Le dump du thread AWT-EventQueue ne veut pas s'afficher dans jConsole.
J'ai fait le tour des autres threads, et je remarque que l'un d'entre eux est bloqué sur une lecture de flux (socketRead0, statut RUNNABLE). Ce n'est pas la première fois que je vois l'application bloquée sur ce genre d'instruction, mais je ne comprends pas ce que cela signifie.
J'ai commencé par penser qu'il pouvait s'agir d'un problème de firewall (il s'agit d'un flux réseau ; l'adresse pointée est une JSP sur un serveur) mais cela ne semble pas venir de là.
Ce plantage est apparu alors que l'application n'était pas utilisée (réduite). Par contre une petite coupure réseau n'est pas a exclure.
Pouvez-vous m'éclairer ? Que me conseillez-vous ?
Merci beaucoup.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46 Name: Dom-enregistreur State: BLOCKED on fr.ste.com.sessions.Session@354093 owned by: Actualiseur Session Total blocked: 9 Total waited: 170*780 Stack trace: fr.ste.com.dataObject.DataObject.flush(DataObject.java:744) fr.ste.com.dataObject.Manager.flush(Manager.java:74) fr.ste.com.dataObject.Manager$1.run(Manager.java:48) fr.ste.com.Timer$ThisTask.run(Timer.java:36) java.util.TimerThread.mainLoop(Unknown Source) java.util.TimerThread.run(Unknown Source) --- --- --- Name: Actualiseur Session State: RUNNABLE Total blocked: 6 Total waited: 861 Stack trace: java.net.SocketInputStream.socketRead0(Native hod) java.net.SocketInputStream.read(Unknown Source) java.io.BufferedInputStream.fill(Unknown Source) java.io.BufferedInputStream.read1(Unknown Source) java.io.BufferedInputStream.read(Unknown Source) - locked java.io.BufferedInputStream@956ce1 sun.net.www.http.HttpClient.parseHTTPHeader(Unknown Source) sun.net.www.http.HttpClient.parseHTTP(Unknown Source) sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source) - locked sun.net.www.protocol.http.HttpURLConnection@1f511c fr.ste.com.files.File.getInputStream(File.java:953) fr.ste.com.Response.getResultString(Response.java:66) fr.ste.com.ManipData.update(ManipData.java:610) fr.ste.com.DataObjectWriter.update(DataObjectWriter.java:338) - locked fr.ste.com.DataObjectWriter@18b2ad5 fr.ste.com.DataObjectWriter.flush(DataObjectWriter.java:360) - locked fr.ste.com.DataObjectWriter@18b2ad5 fr.ste.com.dataObject.DataObject.flush(DataObject.java:772) - locked fr.ste.com.sessions.Session@354093 fr.ste.com.dataObject.DataObject$1.call(DataObject.java:44) fr.ste.com.ihm.connexion.Connexion$TaskInError.get(Connexion.java:34) fr.ste.com.dataObject.DataObject.sauvegarder(DataObject.java:61) fr.ste.com.Timer$ThisTask.run(Timer.java:36) java.util.TimerThread.mainLoop(Unknown Source) java.util.TimerThread.run(Unknown Source)
Partager