Memory leaking



  • Yea my server4 never uses over 800KB but i did only start playing with 0.5.1



  • @Linrox said:

    Yea my server4 never uses over 800KB but i did only start playing with 0.5.1

    In my case the high usage could be because I'm running it on Linux and the server is a Windows executable. Mono is probably adding more than I'd like to that tally. I haven't had problems with leaks, I tend to break things and crash before that would become a problem, but running that close to the RAM limit does impact performance pretty heavily.



  • you running a linux server hawk? care to help me out with a guide for people that wanna host servers on linux ?



  • @Linrox can you also send me an image of your settings window and task manager showing the high memory usage ? so i can create a bug report in git with all important information



  • @Hawk which Distro of linux are you using for the server



  • @NoBlackThunder said:

    you running a linux server hawk? care to help me out with a guide for people that wanna host servers on linux ?

    I'd be happy to, although I'm still rather wet behind the ears on this platform (for some odd reason nobody writes games in COBOL-400 where I might actually be useful, lol). In my case it was as simple as installing Mono ("sudo apt-get install mono-complete && sudo apt-get update"") and launching the client and server files from a terminal. It doesn't give me a server GUI so any tweaks I make have to be done manually in the configs (which make me want to swear in Klingon from the lack of commentation, but at least y'all have solid naming conventions so I'm learning my way around.) I haven't set up a public server yet; apart from sharing the IP and port I'm not sure what else might be involved, but it's been working well enough for LAN play. Feel free to consult with any questions or issues and I'll do what I can to help, but at the moment I've managed to completely bork my server (Zlib is throwing a fatal exception and I'm waiting for the next hotfix before I reinstall) so take my advice with a grain of salt. I'm much better at creatively breaking code than fixing it. ;)

    @Linrox said:

    @Hawk which Distro of linux are you using for the server

    I'm currently on Ubuntu 16.10.



  • i am looking into people with experience installing and having issues with mono mainly .. worked fine on my vm .. so i got lots of stuff ready .. but i need to get help with the worst part, mono .. i have heard some people have issues so i am looking into expertise there



  • @NoBlackThunder said:

    i am looking into people with experience installing and having issues with mono mainly .. worked fine on my vm .. so i got lots of stuff ready .. but i need to get help with the worst part, mono .. i have heard some people have issues so i am looking into expertise there

    This is my first experience with it, but apart from using too many resources for a headless server it hasn't given me any problems (although I can't yet confirm or deny that some other issues I've experienced may be related).

    This is what I'm currently looking at when trying to launch:

    [ERROR] FATAL UNHANDLED EXCEPTION: System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> Ionic.Zlib.ZlibException: Bad state (oversubscribed dynamic bit lengths tree)
    at Ionic.Zlib.InflateManager.Inflate (FlushType flush) <0x41faf870 + 0x00933> in <filename unknown>:0
    at Ionic.Zlib.ZlibCodec.Inflate (FlushType flush) <0x41faf7d0 + 0x0002f> in <filename unknown>:0
    at Ionic.Zlib.ZlibBaseStream.Read (System.Byte[] buffer, Int32 offset, Int32 count) <0x41fae4d0 + 0x002b3> in <filename unknown>:0
    at Ionic.Zlib.DeflateStream.Read (System.Byte[] buffer, Int32 offset, Int32 count) <0x41fae450 + 0x00047> in <filename unknown>:0
    at Ionic.Crc.CrcCalculatorStream.Read (System.Byte[] buffer, Int32 offset, Int32 count) <0x41fae350 + 0x000a4> in <filename unknown>:0
    at System.IO.Stream.InternalCopyTo (System.IO.Stream destination, Int32 bufferSize) <0x7f5a25551170 + 0x00061> in <filename unknown>:0
    at System.IO.Stream.CopyTo (System.IO.Stream destination) <0x7f5a25550e60 + 0x0009b> in <filename unknown>:0
    at (wrapper remoting-invoke-with-check) System.IO.Stream:CopyTo (System.IO.Stream)
    at Eco.Core.Serialization.DataStore.Load (System.String fileName) <0x41fabcb0 + 0x000d5> in <filename unknown>:0
    at Eco.Core.Plugins.StorageManager.Load (System.String fileName) <0x41fabc70 + 0x00023> in <filename unknown>:0
    at Eco.Core.Serialization.EcoSerializer`1[T].Initialize (System.String schemaFileName, Boolean needsDeserializer) <0x41eef550 + 0x000a7> in <filename unknown>:0
    at Eco.Core.Plugins.StorageManager.Initialize () <0x41ed2000 + 0x00987> in <filename unknown>:0
    at Eco.Core.Plugins.StorageManager..ctor () <0x41e9a0c0 + 0x0013b> in <filename unknown>:0
    at (wrapper managed-to-native) System.Reflection.MonoCMethod:InternalInvoke (System.Reflection.MonoCMethod,object,object[],System.Exception&)
    at System.Reflection.MonoCMethod.InternalInvoke (System.Object obj, System.Object[] parameters) <0x7f5a257348d0 + 0x0003f> in <filename unknown>:0
    --- End of inner exception stack trace ---
    at System.Reflection.MonoCMethod.InternalInvoke (System.Object obj, System.Object[] parameters) <0x7f5a257348d0 + 0x00079> in <filename unknown>:0
    at System.RuntimeType.CreateInstanceMono (Boolean nonPublic) <0x7f5a25582560 + 0x00124> in <filename unknown>:0
    at System.RuntimeType.CreateInstanceSlow (Boolean publicOnly, Boolean skipCheckThis, Boolean fillCache, System.Threading.StackCrawlMark& stackMark) <0x7f5a25582510 + 0x00049> in <filename unknown>:0
    at System.RuntimeType.CreateInstanceDefaultCtor (Boolean publicOnly, Boolean skipCheckThis, Boolean fillCache, System.Threading.StackCrawlMark& stackMark) <0x7f5a255822b0 + 0x0005c> in <filename unknown>:0
    at System.Activator.CreateInstance[T] () <0x7f5a254a2ec0 + 0x00089> in <filename unknown>:0
    at Eco.Server.PluginManager.AddPlugin[T] () <0x41dedd90 + 0x0009f> in <filename unknown>:0
    at Eco.Server.PluginManager..ctor () <0x41decd10 + 0x0010b> in <filename unknown>:0
    at Eco.Server.MainClass.Main (System.String[] args) <0x41de0540 + 0x00293> in <filename unknown>:0

    This build had been working earlier so it's probably my fault. I'm not sure what I might have done (I've been forced to kill the client because it hangs when quitting, so that may have corrupted something) or how Mono is (mis?)handling the calls but if it persists on a clean install I'll file a report along with the other glitches I've been compiling. Otherwise, I'm available if you need any Linux-specific testing. We're on a new frontier of computer game/education hybrids that have the potential to significantly impact the world and I'd really like to see this one succeed. I may not be able to save the planet, but I might be able to help figure out what's killing it

    [i3-3220 CPU @ 3.30GHz × 4/GeForce GTX 645 (375.26 open source driver)/Ubuntu 16.10 (4.8.0-32-generic)/6GB RAM]



  • seems like the save is corrupted



  • @NoBlackThunder I just tried the latest update 0.5.3 and the memory leak is still there. But it happens really quick in the forest areas (lots of trees).



  • Interesting



  • ok i added a link here to anther persons bug report .. i think they should be the same cause https://github.com/StrangeLoopGames/EcoIssues/issues/990


Log in to reply