Problem of using native library by room extension?

Post here your questions about SFS2X. Here we discuss all server-side matters. For client API questions see the dedicated forums.

Moderators: Lapo, Bax

wood9366
Posts: 7
Joined: 31 Aug 2012, 06:46

Problem of using native library by room extension?

Postby wood9366 » 31 Aug 2012, 07:28

Hi,

I faced an issue cause by native library reference by room extension.

Our server structure is one login extension and 2 room extensions (lobby and game).
They are worked fine before we added a native library attach on game room extension.

Issue 1: If you only create one room, everything works fine.

Issue 2: During a second room creating, we'll get this error on server.
Because every game room uses same extension, we put the java 'loadLibrary' code at init function of game room extension.
So we add a try catch round the load library code and try to ignore second time load error.
java.lang.UnsatisfiedLinkError: Native Library E:\liyang\work\dota\server\DotaServer\cai-nav-rcn.dll already loaded in another classloader
java.lang.ClassLoader.loadLibrary0(Unknown Source)
java.lang.ClassLoader.loadLibrary(Unknown Source)
java.lang.Runtime.loadLibrary0(Unknown Source)
java.lang.System.loadLibrary(Unknown Source)
extensions.room.game.athletics.DotaGameExtension.init(DotaGameExtension.java:47)
com.smartfoxserver.v2.entities.managers.SFSExtensionManager.createExtension(SFSExtensionManager.java:302)
com.smartfoxserver.v2.entities.managers.SFSRoomManager.createRoomExtension(SFSRoomManager.java:209)
com.smartfoxserver.v2.entities.managers.SFSRoomManager.createRoom(SFSRoomManager.java:168)
com.smartfoxserver.v2.entities.SFSZone.createRoom(SFSZone.java:238)
com.smartfoxserver.v2.api.SFSApi.createRoom(SFSApi.java:623)
com.smartfoxserver.v2.api.SFSApi.createRoom(SFSApi.java:600)
com.smartfoxserver.v2.controllers.system.CreateRoom.execute(CreateRoom.java:205)
com.smartfoxserver.v2.controllers.SystemController.processRequest(SystemController.java:128)
com.smartfoxserver.bitswarm.controllers.AbstractController.run(AbstractController.java:96)
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.lang.Thread.run(Unknown Source)


Issue3: The 'loadLibrary' is ignored successfully, but we get this error.
When try to call a native function, extension crash. That's one thing confuse me, if the native library has been loaded, why it can't be used in 2nd room extension.
So we think maybe we should package a separate jar which uses native library, and put it under '__lib__' folder.
extensions.room.game.athletics.navigation.nav.rcn.NavmeshEx.dtnmBuildDTNavMeshFromRaw([BIZLextensions/room/game/athletics/sync/tangible/RefObject;)I
extensions.room.game.athletics.navigation.nav.rcn.NavmeshEx.dtnmBuildDTNavMeshFromRaw(Native Method)
extensions.room.game.athletics.navigation.nav.Navmesh.UnsafeCreate(Navmesh.java:610)
extensions.room.game.athletics.navigation.nav.Navmesh.Create(Navmesh.java:596)
extensions.room.game.athletics.sync.ConfigData.readNavMeshData(ConfigData.java:62)
extensions.room.game.athletics.sync.ConfigData.load(ConfigData.java:47)
extensions.room.game.athletics.DotaGameExtension.init(DotaGameExtension.java:75)
com.smartfoxserver.v2.entities.managers.SFSExtensionManager.createExtension(SFSExtensionManager.java:302)
com.smartfoxserver.v2.entities.managers.SFSRoomManager.createRoomExtension(SFSRoomManager.java:209)
com.smartfoxserver.v2.entities.managers.SFSRoomManager.createRoom(SFSRoomManager.java:168)
com.smartfoxserver.v2.entities.SFSZone.createRoom(SFSZone.java:238)
com.smartfoxserver.v2.api.SFSApi.createRoom(SFSApi.java:623)
com.smartfoxserver.v2.api.SFSApi.createRoom(SFSApi.java:600)
com.smartfoxserver.v2.controllers.system.CreateRoom.execute(CreateRoom.java:205)
com.smartfoxserver.v2.controllers.SystemController.processRequest(SystemController.java:128)
com.smartfoxserver.bitswarm.controllers.AbstractController.run(AbstractController.java:96)
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.lang.Thread.run(Unknown Source)


Issue 4: After separate a jar with native library, we got error when we 1st create room.
The error is same as issue 3.

That's all thing we have now. Anyone know how to solve this problem ? Thanks a lot.
Li Yang
User avatar
Lapo
Site Admin
Posts: 23026
Joined: 21 Mar 2005, 09:50
Location: Italy

Re: Problem of using native library by room extension?

Postby Lapo » 31 Aug 2012, 11:30

Hi,
using native libraries can pose several problems. SFS2X extensions are loaded in separate class loaders and I think this is the cause of the error reported.
My suggestion is to deploy all your java code in the __lib__/ folder so that you avoid Class Loaders collisions.

Let me know if it works

cheers
Lapo
--
gotoAndPlay()
...addicted to flash games
wood9366
Posts: 7
Joined: 31 Aug 2012, 06:46

Re: Problem of using native library by room extension?

Postby wood9366 » 03 Sep 2012, 02:14

Thanks for your reply.
In Issue 3, we have try to put the java package which use native library to __lib__ folder.
But we got the error that seems the native library may not load successfully. Because it'll crash when using native function.
Is the 'load library' system same as Class Loader for java system ?
Or is there any other solution for this issues ?
Thanks.
User avatar
Lapo
Site Admin
Posts: 23026
Joined: 21 Mar 2005, 09:50
Location: Italy

Re: Problem of using native library by room extension?

Postby Lapo » 03 Sep 2012, 07:29

My suggestion is to put the whole Extension code under __lib__/ not just the classes that use native code.
Have you tried that?
Lapo

--

gotoAndPlay()

...addicted to flash games
wood9366
Posts: 7
Joined: 31 Aug 2012, 06:46

Re: Problem of using native library by room extension?

Postby wood9366 » 03 Sep 2012, 08:33

The extension has this problem is a room extension. Did you mean to put that jar file into __lib__ folder directly ?
But if the extension remove from extension's folder, how smartfox find that extension when create a game room ?
I have try this on my computer, I get error as I thought.
I use this code to create a game room:
settings.Extension = new RoomExtension("Game", "extensions.room.game.athletics.GameExtension");
The error log is:
Exception: com.smartfoxserver.v2.exceptions.SFSExtensionException
Message: Extension boot error. The provided path is not a directory: extensions/
Game

I don't know whether or not I misunderstand what you means ?
User avatar
Lapo
Site Admin
Posts: 23026
Joined: 21 Mar 2005, 09:50
Location: Italy

Re: Problem of using native library by room extension?

Postby Lapo » 03 Sep 2012, 09:10

You can use this instead:

Code: Select all

settings.Extension = new RoomExtension("__lib__", "extensions.room.game.athletics.GameExtension");

cheers
Lapo

--

gotoAndPlay()

...addicted to flash games
wood9366
Posts: 7
Joined: 31 Aug 2012, 06:46

Re: Problem of using native library by room extension?

Postby wood9366 » 12 Sep 2012, 03:11

Sorry for this late reply. I have more important work to do in these day.

I have test the "move to __lib__" solution. It works.
I can create more than one room at the same time.

But I find another issues in this solution, if you exit room (you are the last guy, the room will be deleted), create room again and again, you will got this error.
Seems the JAVA Runtime Environment crash. And the create, exit action I mentioned before, can't be done more than 3 times as I try.

Is there a better solution for this problem ? Thanks.

#
# A fatal error has been detected by the Java Runtime Environment:
#
# EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x000007fef87ec240, pid=5860, tid=5784
#
# JRE version: 6.0_21-b06
# Java VM: Java HotSpot(TM) 64-Bit Server VM (17.0-b16 mixed mode windows-amd64 )
# Problematic frame:
# C 0x000007fef87ec240
#
# If you would like to submit a bug report, please visit:
# http://java.sun.com/webapps/bugreport/crash.jsp
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
#

--------------- T H R E A D ---------------

Current thread (0x000000004c4e9000): JavaThread "com.smartfoxserver.v2.controllers.SystemController-1" [_thread_in_native, id=5784, stack(0x000000004fc00000,0x000000004fd00000)]

siginfo: ExceptionCode=0xc0000005, ExceptionInformation=0x0000000000000008 0x000007fef87ec240

Registers:
EAX=0x000007fef87ec240, EBX=0x00000000075a75f0, ECX=0x000000004c4e91c8, EDX=0x000000004fcff118
ESP=0x000000004fcff078, EBP=0x000000004fcff108, ESI=0x000000000759de30, EDI=0x00000000026e59ce
EIP=0x000007fef87ec240, EFLAGS=0x0000000000010206

Top of Stack: (sp=0x000000004fcff078)
0x000000004fcff078: 00000000026f1260 000000006d3b4e67
0x000000004fcff088: 000000004c4e9000 000000004fcff1c8
0x000000004fcff098: 00000000059a1c98 0000000000000001
0x000000004fcff0a8: 000000004fcff128 00000000059a4d48
0x000000004fcff0b8: 000000004fcff190 000000004fcff120
0x000000004fcff0c8: 000000004fcff0c8 0000000000000000
0x000000004fcff0d8: 000000004fcff140 00000000075a8c38
0x000000004fcff0e8: 0000000000000000 00000000075a75f0
0x000000004fcff0f8: 0000000000000000 000000004fcff128
0x000000004fcff108: 000000004fcff188 00000000026e59ce
0x000000004fcff118: 00000000075a8b80 00000000026ee316
0x000000004fcff128: 000000003637f690 0000000000000001
0x000000004fcff138: 000000000000b09d 00000000363745c0
0x000000004fcff148: 000000004fcff148 00000000075a4914
0x000000004fcff158: 000000004fcff1c8 00000000075a6520
0x000000004fcff168: 0000000000000000 00000000075a49b0

Instructions: (pc=0x000007fef87ec240)
0x000007fef87ec230:
[error occurred during error reporting (printing registers, top of stack, instructions near pc), id 0xc0000005]

Stack: [0x000000004fc00000,0x000000004fd00000], sp=0x000000004fcff078, free space=3fc0000000000000000k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
C 0x000007fef87ec240
j extensions.room.game.athletics.navigation.nav.Navmesh.UnsafeCreate([BZLextensions/room/game/athletics/sync/tangible/RefObject;)Lextensions/room/game/athletics/navigation/nav/NavStatus;+52
j extensions.room.game.athletics.navigation.nav.Navmesh.Create([BLextensions/room/game/athletics/sync/tangible/RefObject;)Lextensions/room/game/athletics/navigation/nav/NavStatus;+3
j extensions.room.game.athletics.sync.ConfigData.readNavMeshData(Ljava/lang/String;)V+65
j extensions.room.game.athletics.sync.ConfigData.load(Ljava/lang/String;)V+184
j extensions.room.game.athletics.DotaGameExtension.init()V+122
j com.smartfoxserver.v2.entities.managers.SFSExtensionManager.createExtension(Lcom/smartfoxserver/v2/config/ZoneSettings$ExtensionSettings;Lcom/smartfoxserver/v2/extensions/ExtensionLevel;Lcom/smartfoxserver/v2/entities/Zone;Lcom/smartfoxserver/v2/entities/Room;)V+379
j com.smartfoxserver.v2.entities.managers.SFSRoomManager.createRoomExtension(Lcom/smartfoxserver/v2/entities/Room;Lcom/smartfoxserver/v2/api/CreateRoomSettings$RoomExtensionSettings;)V+104
j com.smartfoxserver.v2.entities.managers.SFSRoomManager.createRoom(Lcom/smartfoxserver/v2/api/CreateRoomSettings;Lcom/smartfoxserver/v2/entities/User;)Lcom/smartfoxserver/v2/entities/Room;+374
j com.smartfoxserver.v2.entities.SFSZone.createRoom(Lcom/smartfoxserver/v2/api/CreateRoomSettings;Lcom/smartfoxserver/v2/entities/User;)Lcom/smartfoxserver/v2/entities/Room;+6
j com.smartfoxserver.v2.api.SFSApi.createRoom(Lcom/smartfoxserver/v2/entities/Zone;Lcom/smartfoxserver/v2/api/CreateRoomSettings;Lcom/smartfoxserver/v2/entities/User;ZLcom/smartfoxserver/v2/entities/Room;ZZ)Lcom/smartfoxserver/v2/entities/Room;+32
j com.smartfoxserver.v2.api.SFSApi.createRoom(Lcom/smartfoxserver/v2/entities/Zone;Lcom/smartfoxserver/v2/api/CreateRoomSettings;Lcom/smartfoxserver/v2/entities/User;ZLcom/smartfoxserver/v2/entities/Room;)Lcom/smartfoxserver/v2/entities/Room;+10
j com.smartfoxserver.v2.controllers.system.CreateRoom.execute(Lcom/smartfoxserver/bitswarm/io/IRequest;)V+102
j com.smartfoxserver.v2.controllers.SystemController.processRequest(Lcom/smartfoxserver/bitswarm/io/IRequest;)V+114
j com.smartfoxserver.bitswarm.controllers.AbstractController.run()V+63
j java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Ljava/lang/Runnable;)V+59
j java.util.concurrent.ThreadPoolExecutor$Worker.run()V+28
j java.lang.Thread.run()V+11
v ~StubRoutines::call_stub

Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
j extensions.room.game.athletics.navigation.nav.rcn.NavmeshEx.dtnmBuildDTNavMeshFromRaw([BIZLextensions/room/game/athletics/sync/tangible/RefObject;)I+0
j extensions.room.game.athletics.navigation.nav.Navmesh.UnsafeCreate([BZLextensions/room/game/athletics/sync/tangible/RefObject;)Lextensions/room/game/athletics/navigation/nav/NavStatus;+52
j extensions.room.game.athletics.navigation.nav.Navmesh.Create([BLextensions/room/game/athletics/sync/tangible/RefObject;)Lextensions/room/game/athletics/navigation/nav/NavStatus;+3
j extensions.room.game.athletics.sync.ConfigData.readNavMeshData(Ljava/lang/String;)V+65
j extensions.room.game.athletics.sync.ConfigData.load(Ljava/lang/String;)V+184
j extensions.room.game.athletics.DotaGameExtension.init()V+122
j com.smartfoxserver.v2.entities.managers.SFSExtensionManager.createExtension(Lcom/smartfoxserver/v2/config/ZoneSettings$ExtensionSettings;Lcom/smartfoxserver/v2/extensions/ExtensionLevel;Lcom/smartfoxserver/v2/entities/Zone;Lcom/smartfoxserver/v2/entities/Room;)V+379
j com.smartfoxserver.v2.entities.managers.SFSRoomManager.createRoomExtension(Lcom/smartfoxserver/v2/entities/Room;Lcom/smartfoxserver/v2/api/CreateRoomSettings$RoomExtensionSettings;)V+104
j com.smartfoxserver.v2.entities.managers.SFSRoomManager.createRoom(Lcom/smartfoxserver/v2/api/CreateRoomSettings;Lcom/smartfoxserver/v2/entities/User;)Lcom/smartfoxserver/v2/entities/Room;+374
j com.smartfoxserver.v2.entities.SFSZone.createRoom(Lcom/smartfoxserver/v2/api/CreateRoomSettings;Lcom/smartfoxserver/v2/entities/User;)Lcom/smartfoxserver/v2/entities/Room;+6
j com.smartfoxserver.v2.api.SFSApi.createRoom(Lcom/smartfoxserver/v2/entities/Zone;Lcom/smartfoxserver/v2/api/CreateRoomSettings;Lcom/smartfoxserver/v2/entities/User;ZLcom/smartfoxserver/v2/entities/Room;ZZ)Lcom/smartfoxserver/v2/entities/Room;+32
j com.smartfoxserver.v2.api.SFSApi.createRoom(Lcom/smartfoxserver/v2/entities/Zone;Lcom/smartfoxserver/v2/api/CreateRoomSettings;Lcom/smartfoxserver/v2/entities/User;ZLcom/smartfoxserver/v2/entities/Room;)Lcom/smartfoxserver/v2/entities/Room;+10
j com.smartfoxserver.v2.controllers.system.CreateRoom.execute(Lcom/smartfoxserver/bitswarm/io/IRequest;)V+102
j com.smartfoxserver.v2.controllers.SystemController.processRequest(Lcom/smartfoxserver/bitswarm/io/IRequest;)V+114
j com.smartfoxserver.bitswarm.controllers.AbstractController.run()V+63
j java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Ljava/lang/Runnable;)V+59
j java.util.concurrent.ThreadPoolExecutor$Worker.run()V+28
j java.lang.Thread.run()V+11
v ~StubRoutines::call_stub

--------------- P R O C E S S ---------------

Java Threads: ( => current thread )
0x000000004ca26000 JavaThread "pool-1-thread-4" [_thread_blocked, id=5284, stack(0x0000000050600000,0x0000000050700000)]
0x000000004ca25000 JavaThread "pool-1-thread-3" [_thread_blocked, id=1484, stack(0x0000000050500000,0x0000000050600000)]
0x000000004ca24800 JavaThread "DestroyJavaVM" [_thread_blocked, id=5136, stack(0x00000000025e0000,0x00000000026e0000)]
0x000000004ca23800 JavaThread "pool-1-thread-2" [_thread_blocked, id=5900, stack(0x0000000050400000,0x0000000050500000)]
0x000000004ca23000 JavaThread "Scheduler1-thread-1" [_thread_blocked, id=4244, stack(0x0000000050300000,0x0000000050400000)]
0x000000004ca22000 JavaThread "SocketWriter-1" [_thread_blocked, id=5504, stack(0x0000000050200000,0x0000000050300000)]
0x000000004ca21800 JavaThread "SocketAcceptor-1" [_thread_in_native, id=5692, stack(0x0000000050100000,0x0000000050200000)]
0x000000004ca20800 JavaThread "SocketReader" [_thread_in_native, id=4116, stack(0x0000000050000000,0x0000000050100000)]
0x000000004c4eb800 JavaThread "com.smartfoxserver.v2.controllers.ExtensionController-3" [_thread_blocked, id=2896, stack(0x000000004ff00000,0x0000000050000000)]
0x000000004c4ea800 JavaThread "com.smartfoxserver.v2.controllers.ExtensionController-2" [_thread_blocked, id=5920, stack(0x000000004fe00000,0x000000004ff00000)]
0x000000004c4ea000 JavaThread "com.smartfoxserver.v2.controllers.ExtensionController-1" [_thread_blocked, id=5148, stack(0x000000004fd00000,0x000000004fe00000)]
=>0x000000004c4e9000 JavaThread "com.smartfoxserver.v2.controllers.SystemController-1" [_thread_in_native, id=5784, stack(0x000000004fc00000,0x000000004fd00000)]
0x000000004c4e8800 JavaThread "Timer-5" daemon [_thread_blocked, id=5844, stack(0x000000004f580000,0x000000004f680000)]
0x000000004c4e7800 JavaThread "Timer-4" daemon [_thread_blocked, id=3212, stack(0x000000004f480000,0x000000004f580000)]
0x000000004c4e7000 JavaThread "pool-1-thread-1" [_thread_blocked, id=5732, stack(0x000000004f380000,0x000000004f480000)]
0x000000004c4e6800 JavaThread "Timer-3" daemon [_thread_blocked, id=3352, stack(0x000000004f280000,0x000000004f380000)]
0x000000004c4e5800 JavaThread "Timer-2" daemon [_thread_blocked, id=5228, stack(0x000000004f050000,0x000000004f150000)]
0x000000004c4e5000 JavaThread "Timer-1" daemon [_thread_blocked, id=4444, stack(0x000000004ef50000,0x000000004f050000)]
0x000000004c4e4000 JavaThread "1685580695@qtp-1461837610-9 - Acceptor0 SelectChannelConnector@0.0.0.0:8080" [_thread_in_native, id=5672, stack(0x000000004de80000,0x000000004df80000)]
0x000000004c4e3800 JavaThread "1953129427@qtp-1461837610-8 - Acceptor1 SelectChannelConnector@0.0.0.0:8080" [_thread_in_native, id=4084, stack(0x000000004dd80000,0x000000004de80000)]
0x000000004c4e2800 JavaThread "1253685456@qtp-1461837610-7" [_thread_blocked, id=5928, stack(0x000000004dc80000,0x000000004dd80000)]
0x000000004c4e2000 JavaThread "1328231241@qtp-1461837610-6" [_thread_blocked, id=5460, stack(0x000000004db80000,0x000000004dc80000)]
0x000000004c4e1000 JavaThread "96507428@qtp-1461837610-5" [_thread_blocked, id=1824, stack(0x000000004da80000,0x000000004db80000)]
0x000000004c4e0800 JavaThread "1420210030@qtp-1461837610-4" [_thread_blocked, id=1376, stack(0x000000004d980000,0x000000004da80000)]
0x000000004c4e0000 JavaThread "847446306@qtp-1461837610-3" [_thread_blocked, id=6016, stack(0x000000004d880000,0x000000004d980000)]
0x000000004c4df000 JavaThread "1677206653@qtp-1461837610-2" [_thread_blocked, id=5140, stack(0x000000004d780000,0x000000004d880000)]
0x000000004c4de800 JavaThread "1594820133@qtp-1461837610-1" [_thread_blocked, id=5992, stack(0x000000004d680000,0x000000004d780000)]
0x000000004c4dd800 JavaThread "735771470@qtp-1461837610-0" [_thread_blocked, id=4624, stack(0x000000004d580000,0x000000004d680000)]
0x000000004c4dd000 JavaThread "Timer-0" daemon [_thread_blocked, id=5528, stack(0x000000004d480000,0x000000004d580000)]
0x000000004c4dc000 JavaThread "Abandoned connection cleanup thread" daemon [_thread_blocked, id=6068, stack(0x000000004d380000,0x000000004d480000)]
0x000000004c5ac800 JavaThread "Thread-4" daemon [_thread_blocked, id=5076, stack(0x000000004d280000,0x000000004d380000)]
0x000000004c745800 JavaThread "pool-2-thread-3" [_thread_blocked, id=6004, stack(0x000000004d180000,0x000000004d280000)]
0x000000004c745000 JavaThread "pool-2-thread-2" [_thread_blocked, id=6108, stack(0x000000004d080000,0x000000004d180000)]
0x000000004c7bf000 JavaThread "pool-2-thread-1" [_thread_blocked, id=5832, stack(0x000000004cf80000,0x000000004d080000)]
0x000000004c5ab800 JavaThread "pool-3-thread-1" [_thread_blocked, id=5684, stack(0x000000004ce80000,0x000000004cf80000)]
0x000000004c4c5000 JavaThread "org.apache.commons.vfs.cache.SoftRefFilesCache$SoftRefReleaseThread" daemon [_thread_blocked, id=4380, stack(0x000000004cd80000,0x000000004ce80000)]
0x000000004b9e4000 JavaThread "Low Memory Detector" daemon [_thread_blocked, id=5412, stack(0x000000004bf80000,0x000000004c080000)]
0x000000004b9e3000 JavaThread "CompilerThread1" daemon [_thread_blocked, id=5796, stack(0x000000004be80000,0x000000004bf80000)]
0x000000004b9dc000 JavaThread "CompilerThread0" daemon [_thread_blocked, id=5756, stack(0x000000004bd80000,0x000000004be80000)]
0x000000004b992000 JavaThread "Attach Listener" daemon [_thread_blocked, id=5176, stack(0x000000004bc80000,0x000000004bd80000)]
0x000000004b991000 JavaThread "Signal Dispatcher" daemon [_thread_blocked, id=6052, stack(0x000000004bb80000,0x000000004bc80000)]
0x00000000006ed800 JavaThread "Finalizer" daemon [_thread_blocked, id=5524, stack(0x000000004b880000,0x000000004b980000)]
0x00000000006e6800 JavaThread "Reference Handler" daemon [_thread_blocked, id=6084, stack(0x000000004b780000,0x000000004b880000)]

Other Threads:
0x00000000006e3000 VMThread [stack: 0x000000004b680000,0x000000004b780000] [id=5372]
0x000000004b9f8000 WatcherThread [stack: 0x000000004c080000,0x000000004c180000] [id=4100]

VM state:not at safepoint (normal execution)

VM Mutex/Monitor currently owned by a thread: None

Heap
PSYoungGen total 36544K, used 19697K [0x0000000035500000, 0x00000000380a0000, 0x000000004a9a0000)
eden space 31680K, 46% used [0x0000000035500000,0x00000000363839a8,0x00000000373f0000)
from space 4864K, 99% used [0x00000000379c0000,0x0000000037e78b78,0x0000000037e80000)
to space 5952K, 0% used [0x00000000373f0000,0x00000000373f0000,0x00000000379c0000)
PSOldGen total 43648K, used 2611K [0x000000000aba0000, 0x000000000d640000, 0x0000000035500000)
object space 43648K, 5% used [0x000000000aba0000,0x000000000ae2cdb8,0x000000000d640000)
PSPermGen total 31232K, used 31152K [0x00000000057a0000, 0x0000000007620000, 0x000000000aba0000)
object space 31232K, 99% used [0x00000000057a0000,0x000000000760c200,0x0000000007620000)

Dynamic libraries:
0x0000000000400000 - 0x000000000042e000 e:\liyang\work\dota\server\Tools\jre\bin\java.exe
0x00000000770a0000 - 0x000000007724b000 C:\Windows\SYSTEM32\ntdll.dll
0x0000000076e80000 - 0x0000000076f9f000 C:\Windows\system32\kernel32.dll
0x000007fefd0b0000 - 0x000007fefd11b000 C:\Windows\system32\KERNELBASE.dll
0x0000000064d00000 - 0x0000000064d3f000 C:\Program Files\AVAST Software\Avast\snxhk64.dll
0x000007fefded0000 - 0x000007fefdfab000 C:\Windows\system32\ADVAPI32.dll
0x000007fefd4b0000 - 0x000007fefd54f000 C:\Windows\system32\msvcrt.dll
0x000007fefd8f0000 - 0x000007fefd90f000 C:\Windows\SYSTEM32\sechost.dll
0x000007fefdc20000 - 0x000007fefdd4e000 C:\Windows\system32\RPCRT4.dll
0x000000006d7f0000 - 0x000000006dec1000 e:\liyang\work\dota\server\Tools\jre\bin\server\jvm.dll
0x0000000076fa0000 - 0x000000007709a000 C:\Windows\system32\USER32.dll
0x000007fefd880000 - 0x000007fefd8e7000 C:\Windows\system32\GDI32.dll
0x000007fefdec0000 - 0x000007fefdece000 C:\Windows\system32\LPK.dll
0x000007fefd550000 - 0x000007fefd61a000 C:\Windows\system32\USP10.dll
0x000007fefab70000 - 0x000007fefabab000 C:\Windows\system32\WINMM.dll
0x000007fefd850000 - 0x000007fefd87e000 C:\Windows\system32\IMM32.DLL
0x000007fefe340000 - 0x000007fefe449000 C:\Windows\system32\MSCTF.dll
0x000000006d760000 - 0x000000006d76e000 e:\liyang\work\dota\server\Tools\jre\bin\verify.dll
0x000000006d3b0000 - 0x000000006d3d7000 e:\liyang\work\dota\server\Tools\jre\bin\java.dll
0x000000006d310000 - 0x000000006d31a000 e:\liyang\work\dota\server\Tools\jre\bin\hpi.dll
0x0000000077270000 - 0x0000000077277000 C:\Windows\system32\PSAPI.DLL
0x000000006d7b0000 - 0x000000006d7c2000 e:\liyang\work\dota\server\Tools\jre\bin\zip.dll
0x000000006d600000 - 0x000000006d617000 E:\liyang\work\dota\server\Tools\jre\bin\net.dll
0x000007fefde70000 - 0x000007fefdebd000 C:\Windows\system32\WS2_32.dll
0x000007fefdb90000 - 0x000007fefdb98000 C:\Windows\system32\NSI.dll
0x000007fefc870000 - 0x000007fefc8c4000 C:\Windows\system32\mswsock.dll
0x000007fefc860000 - 0x000007fefc867000 C:\Windows\System32\wship6.dll
0x000000006d620000 - 0x000000006d62b000 E:\liyang\work\dota\server\Tools\jre\bin\nio.dll
0x000007fefc8d0000 - 0x000007fefc8e7000 C:\Windows\system32\CRYPTSP.dll
0x000007fefc5d0000 - 0x000007fefc617000 C:\Windows\system32\rsaenh.dll
0x000007fefc340000 - 0x000007fefc35e000 C:\Windows\system32\USERENV.dll
0x000007fefcf60000 - 0x000007fefcf6f000 C:\Windows\system32\profapi.dll
0x000007fefcf30000 - 0x000007fefcf3f000 C:\Windows\system32\CRYPTBASE.dll
0x0000000155600000 - 0x0000000155658000 C:\Program Files (x86)\Microsoft Firewall Client 2004\FwcWsp64.dll
0x000007fefd3d0000 - 0x000007fefd4a7000 C:\Windows\system32\OLEAUT32.dll
0x000007fefd640000 - 0x000007fefd841000 C:\Windows\system32\ole32.dll
0x000007fefc200000 - 0x000007fefc207000 C:\Windows\System32\wshtcpip.dll
0x000007fefa530000 - 0x000007fefa557000 C:\Windows\system32\iphlpapi.dll
0x000007fefa520000 - 0x000007fefa52b000 C:\Windows\system32\WINNSI.DLL
0x000007fefa390000 - 0x000007fefa3a1000 C:\Windows\system32\dhcpcsvc6.DLL
0x000007fefa3b0000 - 0x000007fefa3c8000 C:\Windows\system32\dhcpcsvc.DLL
0x000007fef8820000 - 0x000007fef888f000 C:\Windows\SYSTEM32\MSCOREE.DLL
0x000007fef6330000 - 0x000007fef63c0000 C:\Windows\Microsoft.NET\Framework64\v4.0.30319\mscoreei.dll
0x000007fefdba0000 - 0x000007fefdc11000 C:\Windows\system32\SHLWAPI.dll
0x000007feef100000 - 0x000007feefa65000 C:\Windows\Microsoft.NET\Framework64\v4.0.30319\clr.dll
0x000007fef0300000 - 0x000007fef03d1000 C:\Windows\system32\MSVCR100_CLR0400.dll
0x000007feede80000 - 0x000007feef0f7000 C:\Windows\assembly\NativeImages_v4.0.30319_64\mscorlib\a7e82e3e824a3a255f5a8ce723973870\mscorlib.ni.dll
0x000007fef88c0000 - 0x000007fef88d4000 C:\Windows\Microsoft.NET\Framework64\v4.0.30319\nlssorting.dll
0x000007fef0180000 - 0x000007fef02f7000 C:\Windows\Microsoft.NET\Framework64\v4.0.30319\clrjit.dll

VM Arguments:
jvm_args: -Dfile.encoding=UTF-8
java_command: com.smartfoxserver.v2.Main
Launcher Type: SUN_STANDARD

Environment Variables:
JAVA_HOME=d:\Program Files (x86)\Java\jdk1.6.0_33
JRE_HOME=d:\Program Files (x86)\Java\jdk1.6.0_33\jre
PATH=C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\Autodesk\Backburner\;C:\Program Files\Common Files\Autodesk Shared\;C:\Program Files (x86)\Common Files\Autodesk Shared\;C:\Program Files (x86)\Common Files\Adobe\AGL;D:\Program Files\TortoiseSVN\bin;d:\CTEX\UserData\miktex\bin;d:\CTEX\MiKTeX\miktex\bin;d:\CTEX\CTeX\ctex\bin;d:\CTEX\CTeX\cct\bin;d:\CTEX\CTeX\ty\bin;d:\CTEX\Ghostscript\gs9.05\bin;d:\CTEX\GSview\gsview;d:\CTEX\WinEdt;d:\Program Files (x86)\Java\jdk1.6.0_33\jre\bin;d:\strawberry\perl\bin
USERNAME=liyang
OS=Windows_NT
PROCESSOR_IDENTIFIER=Intel64 Family 6 Model 37 Stepping 2, GenuineIntel



--------------- S Y S T E M ---------------

OS: Windows 7 Build 7600

CPU:total 4 (8 cores per cpu, 2 threads per core) family 6 model 37 stepping 2, cmov, cx8, fxsr, mmx, sse, sse2, sse3, ssse3, sse4.1, sse4.2, popcnt, ht

Memory: 4k page, physical 4185592k(1459300k free), swap 8369284k(4819612k free)

vm_info: Java HotSpot(TM) 64-Bit Server VM (17.0-b16) for windows-amd64 JRE (1.6.0_21-b06), built on Jun 22 2010 00:46:52 by "java_re" with MS VC++ 8.0 (VS2005)

time: Wed Sep 12 10:51:45 2012
elapsed time: 17 seconds
User avatar
Lapo
Site Admin
Posts: 23026
Joined: 21 Mar 2005, 09:50
Location: Italy

Re: Problem of using native library by room extension?

Postby Lapo » 12 Sep 2012, 07:55

I see, unfortunately I don't think I'll be able to help because the error here is caused by native code.
As you can see the last bit of java code that was called before the crash is your extension, so I presume something weird is going on there.
Lapo

--

gotoAndPlay()

...addicted to flash games
wood9366
Posts: 7
Joined: 31 Aug 2012, 06:46

Re: Problem of using native library by room extension?

Postby wood9366 » 13 Sep 2012, 02:22

I don't think the last crash cause by extension. Because if I use that extension in normal way, put in extensions folder not __lib__.
No matter how many times I create and exit room, it'll not crash.

I just feel maybe it cause by the way to manage jar is different for __lib__ and extension folder.
__lib__ is like a common place, and more base layer in this structure. Library in there could be loaded in one times at very beginning, but extension folder should be free with room remove.

I'll keep tracking this problem, thanks for your help.
If I find a way for it, I'll post my solution here.

Return to “SFS2X Questions”

Who is online

Users browsing this forum: Stevenor and 107 guests