bonjour,
je viens de m'inscrire sur le site et voudrais poser une question sur la programmation. le probleme est que je n'ai pas su trouver le forum adequate.
sinon ma question de programmation concerne une synchronisation des bases de donnees en deux pcs (par exemple un a nancy et l'autre a dijon). j'utilise
l'environnement windows xp sp2, mysql, mon code est principalement en java (jdk1.6.0), j'utilise des servlets deployer par apache tomcat 5.5.7, et une dll
ecrite en C++. mon probleme est que je retrouve a intervalle irreguliere l'erreur suivante:
----------------------------------->
#
# An unexpected error has been detected by HotSpot Virtual Machine:
#
# EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x7c94426d, pid=240, tid=2124
#
# Java VM: Java HotSpot(TM) Client VM (1.5.0_11-b03 mixed mode)
# Problematic frame:
# C [ntdll.dll+0x3426d]
#
--------------- T H R E A D ---------------
Current thread (0x00355f28): JavaThread "main" [_thread_in_native, id=2124]
siginfo: ExceptionCode=0xc0000005, reading address 0x00000000
Registers:
EAX=0x00000000, EBX=0x000003be, ECX=0x0ae421c8, EDX=0x00000000
ESP=0x0006e994, EBP=0x0006ebb4, ESI=0x0ae403c0, EDI=0x0ae403d0
EIP=0x7c94426d, EFLAGS=0x00010246
Top of Stack: (sp=0x0006e994)
0x0006e994: 00000000 00000006 00000000 cccccccc
0x0006e9a4: 00000000 00000000 00000000 cccccccc
0x0006e9b4: cccccccc cccccccc cccccccc cccccccc
0x0006e9c4: cccccccc cccccccc cccccccc cccccccc
0x0006e9d4: cccccccc cccccccc cccccccc cccccccc
0x0006e9e4: cccccccc cccccccc cccccccc cccccccc
0x0006e9f4: cccccccc cccccccc cccccccc cccccccc
0x0006ea04: cccccccc cccccccc cccccccc cccccccc
Instructions: (pc=0x7c94426d)
0x7c94425d: 11 89 95 64 ff ff ff 8b 40 0c 89 85 5c ff ff ff
0x7c94426d: 8b 00 3b 42 04 0f 85 13 01 00 00 3b c1 0f 85 0b
Stack: [0x00030000,0x00070000), sp=0x0006e994, free space=250k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
C [ntdll.dll+0x3426d]
C [Synchro.dll+0x31ed5]
C [Synchro.dll+0x31f8e]
C [Synchro.dll+0x25041]
C [Synchro.dll+0x1fcfa]
C [Synchro.dll+0x1d3ba]
C [Synchro.dll+0x261d0]
j
Synchro.ModifValeursModeleDoc(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;L
java/lang/String;Ljava/lang/StringV+0
j Synchro.main([Ljava/lang/StringV+1241
v ~StubRoutines::call_stub
V [jvm.dll+0x871a8]
V [jvm.dll+0xdf462]
V [jvm.dll+0x87079]
V [jvm.dll+0x8e0d5]
C [javaw.exe+0x14c5]
C [javaw.exe+0x3151]
C [kernel32.dll+0x16fd7]
Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
j
Synchro.ModifValeursModeleDoc(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;L
java/lang/String;Ljava/lang/StringV+0
j Synchro.main([Ljava/lang/StringV+1241
v ~StubRoutines::call_stub
--------------- P R O C E S S ---------------
Java Threads: ( => current thread )
0x00a2eb48 JavaThread "Low Memory Detector" daemon [_thread_blocked, id=1504]
0x00a2d7e8 JavaThread "CompilerThread0" daemon [_thread_blocked, id=3592]
0x00a2cba0 JavaThread "Signal Dispatcher" daemon [_thread_blocked, id=2676]
0x00a23928 JavaThread "Finalizer" daemon [_thread_blocked, id=3100]
0x00a224b8 JavaThread "Reference Handler" daemon [_thread_blocked, id=2760]
=>0x00355f28 JavaThread "main" [_thread_in_native, id=2124]
Other Threads:
0x00a1e278 VMThread [id=180]
0x00a2fda0 WatcherThread [id=2280]
VM state:not at safepoint (normal execution)
VM Mutex/Monitor currently owned by a thread: None
Heap
def new generation total 576K, used 14K [0x02a70000, 0x02b10000, 0x02f50000)
eden space 512K, 2% used [0x02a70000, 0x02a72e80, 0x02af0000)
from space 64K, 4% used [0x02af0000, 0x02af0b08, 0x02b00000)
to space 64K, 0% used [0x02b00000, 0x02b00000, 0x02b10000)
tenured generation total 1408K, used 1381K [0x02f50000, 0x030b0000, 0x06a70000)
the space 1408K, 98% used [0x02f50000, 0x030a9618, 0x030a9800, 0x030b0000)
compacting perm gen total 8192K, used 3411K [0x06a70000, 0x07270000, 0x0aa70000)
the space 8192K, 41% used [0x06a70000, 0x06dc4e08, 0x06dc5000, 0x07270000)
No shared spaces configured.
Dynamic libraries:
0x00400000 - 0x0040d000 C:\Program Files\Docuged\Java\jre1.5.0_11\bin\javaw.exe
0x7c910000 - 0x7c9c7000 C:\WINDOWS\system32\ntdll.dll
0x7c800000 - 0x7c904000 C:\WINDOWS\system32\kernel32.dll
0x77da0000 - 0x77e4c000 C:\WINDOWS\system32\ADVAPI32.dll
0x77e50000 - 0x77ee1000 C:\WINDOWS\system32\RPCRT4.dll
0x77d10000 - 0x77da0000 C:\WINDOWS\system32\USER32.dll
0x77ef0000 - 0x77f37000 C:\WINDOWS\system32\GDI32.dll
0x77be0000 - 0x77c38000 C:\WINDOWS\system32\MSVCRT.dll
0x76320000 - 0x7633d000 C:\WINDOWS\system32\IMM32.DLL
0x6d640000 - 0x6d7dd000 C:\Program Files\Docuged\Java\jre1.5.0_11\bin\client\jvm.dll
0x76ae0000 - 0x76b0f000 C:\WINDOWS\system32\WINMM.dll
0x6d290000 - 0x6d298000 C:\Program Files\Docuged\Java\jre1.5.0_11\bin\hpi.dll
0x76ba0000 - 0x76bab000 C:\WINDOWS\system32\PSAPI.DLL
0x6d610000 - 0x6d61c000 C:\Program Files\Docuged\Java\jre1.5.0_11\bin\verify.dll
0x6d310000 - 0x6d32d000 C:\Program Files\Docuged\Java\jre1.5.0_11\bin\java.dll
0x6d630000 - 0x6d63f000 C:\Program Files\Docuged\Java\jre1.5.0_11\bin\zip.dll
0x10000000 - 0x10064000 C:\Documents and Settings\ACER\workspace\SynchroGed\Synchro.dll
0x719f0000 - 0x71a07000 C:\WINDOWS\system32\WS2_32.dll
0x719e0000 - 0x719e8000 C:\WINDOWS\system32\WS2HELP.dll
0x6d4d0000 - 0x6d4e3000 C:\Program Files\Docuged\Java\jre1.5.0_11\bin\net.dll
0x71990000 - 0x719d0000 C:\WINDOWS\System32\mswsock.dll
0x76ed0000 - 0x76ef7000 C:\WINDOWS\system32\DNSAPI.dll
0x76f60000 - 0x76f68000 C:\WINDOWS\System32\winrnr.dll
0x76f10000 - 0x76f3d000 C:\WINDOWS\system32\WLDAP32.dll
0x76f70000 - 0x76f76000 C:\WINDOWS\system32\rasadhlp.dll
0x62e40000 - 0x62e99000 C:\WINDOWS\system32\hnetcfg.dll
0x719d0000 - 0x719d8000 C:\WINDOWS\System32\wshtcpip.dll
VM Arguments:
java_command: Synchro
Launcher Type: SUN_STANDARD
Environment Variables:
PATH=C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Program Files\QuickTime\QTSystem\;C:\Program Files\Samsung\Samsung PC Studio 3\
USERNAME=ACER
OS=Windows_NT
PROCESSOR_IDENTIFIER=x86 Family 15 Model 2 Stepping 9, GenuineIntel
--------------- S Y S T E M ---------------
OS: Windows XP Build 2600 Service Pack 2
CPU:total 1 (cores per cpu 1, threads per core 1) family 15 model 2 stepping 9, cmov, cx8, fxsr, mmx, sse, sse2
Memory: 4k page, physical 2096624k(1116704k free), swap 2717844k(1927080k free)
vm_info: Java HotSpot(TM) Client VM (1.5.0_11-b03) for windows-x86, built on Dec 15 2006 01:16:12 by "java_re" with MS VC++ 6.0
----------------------------------->
donc en resume je lance mon exe (creer avec java launcher) qui execute donc mon programme principal java. dans ce programme, je fais appel a une methode
native renvoyant a ma dll. cette dll verifie la connection avec le pc cible et execute par POST ou GET la (les) servlet(s) du pc cible pour mettre a jour et
ou recuperer les donnees de la base cible. ensuite je recupere la reponse et reviens dans mon programme principal en java.
en mode debuggage j'execute mon test via eclipse 3.2 et genere ma dll via visual c++ 2005 express.
durant l'execution de mon test le programme fonctionne, c'est a dire que je recois bien des code retour a 1 (comme quoi le POST ou GET ont bien fonctionné)
puis soudain explosion affichant l'erreur, edité plus haut. en verifiant les donnees tout est ok. et lorsque je relance le test, ca remarche comme ci rien ne
s'etait passé en continuant a mettre a jour la suite des donnees et hop replantage. je relance encore une fois , ca marche et hop replantage et ensuite de
suite. donc j'espere que quelqu'un pourra m'eclaircir sur ce probleme assez embarrassant.
merci beaucoup de prendre attention a ce probleme.
je reste a disposition pour toutes informations complementaires.
davish.