Welcome to the Inedo Forums! Check out the Forums Guide for help getting started.

If you are experiencing any issues with the forum software, please visit the Contact Form on our website and let us know!

ProGet in docker/linux hanging after using all memory



  • Hello.

    We run proget in a container on linux. We experience that the proget container consumes more and more memory (looking at the mono.exe process it runs) and then finally freezes once all memory on host machine is consumed. Only solution then is to restart the container (not the DB container, which is running fine). We have a 8GB host linux machine. Almost all of that memory is consumed by the proget container.
    It really does seem like a memory leak. We are currently, using crontab, restarting the container every day as a workaround.

    Do you have any idea what could be causing this and how we can proceed in troubleshooting it?


  • inedo-engineer

    Hello; we haven't had any other users report this, so I'm afraid I don't have any idea how to help. It certainly sounds like a memory leak, and it'st most definitely a mono-specific bug; unfortunately these are extremely hard to track down, and sometimes are even platform specific (i.e. depending on host operating system).

    I would make sure to upgrade to latest version of container image.

    If you're not already using SQL Server for Linux (and you're using Postgres), then switch to SQL Server.

    I would simplify configuration; if you have a lot of connectors, etc.

    Try putting a ngix proxy infront of it.

    Once we have a clue about where the mono-bug is, we can at least consider ways to work-around it.



  • Thanks for the answer!

    @atripp said in ProGet in docker/linux hanging after using all memory:

    Hello; we haven't had any other users report this, so I'm afraid I don't have any idea how to help. It certainly sounds like a memory leak, and it'st most definitely a mono-specific bug; unfortunately these are extremely hard to track down, and sometimes are even platform specific (i.e. depending on host operating system).

    I would make sure to upgrade to latest version of container image.

    If you're not already using SQL Server for Linux (and you're using Postgres), then switch to SQL Server.

    We use SQL Server.

    I would simplify configuration; if you have a lot of connectors, etc.

    We have 3 feeds and 2 connectors.

    Try putting a ngix proxy infront of it.

    We have that! =).

    Once we have a clue about where the mono-bug is, we can at least consider ways to work-around it.

    Yes. Maybe someone else have clues or have seen something similar. Most "linux container progets" run mono.exe right?

    BR


  • inedo-engineer

    @patchlings said in ProGet in docker/linux hanging after using all memory:

    Most "linux container progets" run mono.exe right?

    Actually, all of them run mono.exe. We've had some people build a WINE-version of our products as a container, but I'm not sure if that's any better...



  • Looking at the mono process it grows to more than 2 GB Resident memory on one day. Is there any number to compare this to?


  • inedo-engineer

    Not in particular; .NET does garbage collection, in the background, as needed; so it's not uncommon to see processes "swell" to consume available memory and then "contract" overtime, as memory usage (percentage-wise) gets high.


Log in to reply
 

Inedo Website HomeSupport HomeCode of ConductForums GuideDocumentation