Skip to content

PermGen leak when reloading multiple times #11

@IonAgorria

Description

@IonAgorria

When you reload multiple times PermGen gets leaked and server crashes

reload
16:29:44 [INFO] [DEBUG] [PyOreWatcher]('OreWatcher Deshabilitado',)
16:29:44 [INFO] [PythonLoader] Disabling PythonLoader v0.3.4
16:29:44 [INFO] 229 recipes
16:29:44 [INFO] [PythonLoader] Loading PythonLoader v0.3.4
16:29:44 [INFO] [PythonLoader] Loading Plugin PyOreWatcher.py.dir
16:29:46 [SEVERE] org.bukkit.plugin.InvalidPluginException: Traceback (most recent call last):
File "", line 50, in
java.lang.OutOfMemoryError: PermGen space
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:791)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at org.bukkit.plugin.java.PluginClassLoader.findClass0(PluginClassLoader.java:80)
at org.bukkit.plugin.java.JavaPluginLoader.getClassByName0(JavaPluginLoader.java:300)
at org.bukkit.plugin.java.PluginClassLoader.findClass0(PluginClassLoader.java:76)
at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:53)
at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
at org.python.core.adapter.ClassicPyObjectAdapter$9.adapt(ClassicPyObjectAdapter.java:102)
at org.python.core.adapter.ExtensiblePyObjectAdapter.adapt(ExtensiblePyObjectAdapter.java:49)
at org.python.core.adapter.ClassicPyObjectAdapter.adapt(ClassicPyObjectAdapter.java:120)
at org.python.core.Py.java2py(Py.java:1563)
at org.python.proxies.main$OreWatcherClass$0.classDictInit(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at org.python.core.PyJavaType.init(PyJavaType.java:534)
at org.python.core.PyType.createType(PyType.java:1264)
at org.python.core.PyType.addFromClass(PyType.java:1201)
at org.python.core.PyType.fromClass(PyType.java:1291)
at org.python.core.PyType.setupProxy(PyType.java:636)
at org.python.core.PyType.newType(PyType.java:196)
at org.python.core.PyType.type___new__(PyType.java:150)
at org.python.core.PyType$exposed___new__.new_impl(Unknown Source)

java.lang.OutOfMemoryError: java.lang.OutOfMemoryError: PermGen space

16:29:46 [SEVERE] at net.lahwran.bukkit.jython.PythonPluginLoader.loadPlugin(PythonPluginLoader.java:296)
16:29:46 [SEVERE] at net.lahwran.bukkit.jython.PythonPluginLoader.loadPlugin(PythonPluginLoader.java:113)
16:29:46 [SEVERE] at net.lahwran.bukkit.jython.PythonPluginLoader.loadPlugin(PythonPluginLoader.java:83)
16:29:46 [SEVERE] at org.bukkit.plugin.SimplePluginManager.loadPlugin(SimplePluginManager.java:305)
16:29:46 [SEVERE] at com.master.bukkit.python.PythonLoader.onLoad(PythonLoader.java:113)
16:29:46 [SEVERE] at org.bukkit.craftbukkit.v1_5_R3.CraftServer.loadPlugins(CraftServer.java:244)
16:29:46 [SEVERE] at org.bukkit.craftbukkit.v1_5_R3.CraftServer.reload(CraftServer.java:603)
16:29:46 [SEVERE] at org.bukkit.Bukkit.reload(Bukkit.java:185)
16:29:46 [SEVERE] at org.bukkit.command.defaults.ReloadCommand.execute(ReloadCommand.java:23)
16:29:46 [SEVERE] at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:189)
16:29:46 [SEVERE] at org.bukkit.craftbukkit.v1_5_R3.CraftServer.dispatchCommand(CraftServer.java:523)
16:29:46 [SEVERE] at org.bukkit.craftbukkit.v1_5_R3.CraftServer.dispatchServerCommand(CraftServer.java:512)
16:29:46 [SEVERE] at net.minecraft.server.v1_5_R3.DedicatedServer.an(DedicatedServer.java:262)
16:29:46 [SEVERE] at net.minecraft.server.v1_5_R3.DedicatedServer.r(DedicatedServer.java:227)
16:29:46 [SEVERE] at net.minecraft.server.v1_5_R3.MinecraftServer.q(MinecraftServer.java:477)
16:29:46 [SEVERE] at net.minecraft.server.v1_5_R3.MinecraftServer.run(MinecraftServer.java:410)
16:29:46 [SEVERE] at net.minecraft.server.v1_5_R3.ThreadServerApplication.run(SourceFile:573)
16:29:46 [SEVERE] Caused by: Traceback (most recent call last):
File "", line 50, in
java.lang.OutOfMemoryError: PermGen space
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:791)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at org.bukkit.plugin.java.PluginClassLoader.findClass0(PluginClassLoader.java:80)
at org.bukkit.plugin.java.JavaPluginLoader.getClassByName0(JavaPluginLoader.java:300)
at org.bukkit.plugin.java.PluginClassLoader.findClass0(PluginClassLoader.java:76)
at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:53)
at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
at org.python.core.adapter.ClassicPyObjectAdapter$9.adapt(ClassicPyObjectAdapter.java:102)
at org.python.core.adapter.ExtensiblePyObjectAdapter.adapt(ExtensiblePyObjectAdapter.java:49)
at org.python.core.adapter.ClassicPyObjectAdapter.adapt(ClassicPyObjectAdapter.java:120)
at org.python.core.Py.java2py(Py.java:1563)
at org.python.proxies.main$OreWatcherClass$0.classDictInit(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at org.python.core.PyJavaType.init(PyJavaType.java:534)
at org.python.core.PyType.createType(PyType.java:1264)
at org.python.core.PyType.addFromClass(PyType.java:1201)
at org.python.core.PyType.fromClass(PyType.java:1291)
at org.python.core.PyType.setupProxy(PyType.java:636)
at org.python.core.PyType.newType(PyType.java:196)
at org.python.core.PyType.type___new__(PyType.java:150)
at org.python.core.PyType$exposed___new__.new_impl(Unknown Source)

java.lang.OutOfMemoryError: java.lang.OutOfMemoryError: PermGen space

16:29:46 [SEVERE] at org.python.core.Py.JavaError(Py.java:495)
16:29:46 [SEVERE] at org.python.core.Py.JavaError(Py.java:488)
16:29:46 [SEVERE] at org.python.core.PyJavaType.init(PyJavaType.java:541)
16:29:46 [SEVERE] at org.python.core.PyType.createType(PyType.java:1264)
16:29:46 [SEVERE] at org.python.core.PyType.addFromClass(PyType.java:1201)
16:29:46 [SEVERE] at org.python.core.PyType.fromClass(PyType.java:1291)
16:29:46 [SEVERE] at org.python.core.PyType.setupProxy(PyType.java:636)
16:29:46 [SEVERE] at org.python.core.PyType.newType(PyType.java:196)
16:29:46 [SEVERE] at org.python.core.PyType.type___new__(PyType.java:150)
16:29:46 [SEVERE] at org.python.core.PyType$exposed___new__.new_impl(Unknown Source)
16:29:46 [SEVERE] at org.python.core.PyType.invokeNew(PyType.java:466)
16:29:46 [SEVERE] at org.python.core.PyType.type___call__(PyType.java:1558)
16:29:46 [SEVERE] at org.python.core.PyType.call(PyType.java:1548)
16:29:46 [SEVERE] at org.python.core.PyObject.call(PyObject.java:422)
16:29:46 [SEVERE] at org.python.core.Py.makeClass(Py.java:1653)
16:29:46 [SEVERE] at org.python.core.Py.makeClass(Py.java:1614)
16:29:46 [SEVERE] at org.python.core.Py.makeClass(Py.java:1606)
16:29:46 [SEVERE] at org.python.pycode.pyx5.f$0(:66)
16:29:46 [SEVERE] at org.python.pycode.pyx5.call_function()
16:29:46 [SEVERE] at org.python.core.PyTableCode.call(PyTableCode.java:165)
16:29:46 [SEVERE] at org.python.core.PyCode.call(PyCode.java:18)
16:29:46 [SEVERE] at org.python.core.Py.runCode(Py.java:1275)
16:29:46 [SEVERE] at org.python.util.PythonInterpreter.execfile(PythonInterpreter.java:235)
16:29:46 [SEVERE] at org.python.util.PythonInterpreter.execfile(PythonInterpreter.java:230)
16:29:46 [SEVERE] at net.lahwran.bukkit.jython.PythonPluginLoader.loadPlugin(PythonPluginLoader.java:244)
16:29:46 [SEVERE] ... 16 more
16:29:46 [SEVERE] Caused by: java.lang.OutOfMemoryError: PermGen space
16:29:46 [SEVERE] at java.lang.ClassLoader.defineClass1(Native Method)
16:29:46 [SEVERE] at java.lang.ClassLoader.defineClass(ClassLoader.java:791)
16:29:46 [SEVERE] at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
16:29:46 [SEVERE] at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
16:29:46 [SEVERE] at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
16:29:46 [SEVERE] at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
16:29:46 [SEVERE] at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
16:29:46 [SEVERE] at java.security.AccessController.doPrivileged(Native Method)
16:29:46 [SEVERE] at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
16:29:46 [SEVERE] at org.bukkit.plugin.java.PluginClassLoader.findClass0(PluginClassLoader.java:80)
16:29:46 [SEVERE] at org.bukkit.plugin.java.JavaPluginLoader.getClassByName0(JavaPluginLoader.java:300)
16:29:46 [SEVERE] at org.bukkit.plugin.java.PluginClassLoader.findClass0(PluginClassLoader.java:76)
16:29:46 [SEVERE] at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:53)
16:29:46 [SEVERE] at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
16:29:46 [SEVERE] at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
16:29:46 [SEVERE] at org.python.core.adapter.ClassicPyObjectAdapter$9.adapt(ClassicPyObjectAdapter.java:102)
16:29:46 [SEVERE] at org.python.core.adapter.ExtensiblePyObjectAdapter.adapt(ExtensiblePyObjectAdapter.java:49)
16:29:46 [SEVERE] at org.python.core.adapter.ClassicPyObjectAdapter.adapt(ClassicPyObjectAdapter.java:120)
16:29:46 [SEVERE] at org.python.core.Py.java2py(Py.java:1563)
16:29:46 [SEVERE] at org.python.proxies.main$OreWatcherClass$0.classDictInit(Unknown Source)
16:29:46 [SEVERE] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
16:29:46 [SEVERE] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
16:29:46 [SEVERE] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
16:29:46 [SEVERE] at java.lang.reflect.Method.invoke(Method.java:601)
16:29:46 [SEVERE] at org.python.core.PyJavaType.init(PyJavaType.java:534)
16:29:46 [SEVERE] at org.python.core.PyType.createType(PyType.java:1264)
16:29:46 [SEVERE] at org.python.core.PyType.addFromClass(PyType.java:1201)
16:29:48 [SEVERE] at org.python.core.PyType.fromClass(PyType.java:1291)
16:29:55 [SEVERE] at org.python.core.PyType.setupProxy(PyType.java:636)
16:30:02 [SEVERE] at org.python.core.PyType.newType(PyType.java:196)
16:30:08 [SEVERE] at org.python.core.PyType.type___new
(PyType.java:150)
16:30:09 [SEVERE] at org.python.core.PyType$exposed___new__.new_impl(Unknown Source)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions