Help us enhance your Sophos Community experience. Share your thoughts in our Sophos Community survey.

[9.091][BUG]Possible memory leak in http proxy when using local content database

Hi, I had been using http proxy in default configuration and it was working great. But whats the fun in running stuff with all defaults [:P] so I loaded up local database (mem option). Since that time, the httpproxy daemon consumes all the way to 1GB ram by itself [:O] Screenshots:

1. Screenshot of random memory usage spikes in the middle of the night. I double checked and no up2dates etc were being applied.
2. Memory usage with default configuration and no local db.
3.Memory usage with local db enabled (cc set http sc_local_db mem)
4. Memory usage after a day of usage
5. Memory usage a few hours after restarting the proxy.

Regards
Bill
Parents
  • An update with clarity.  This is existing and expected behavior and we are not changing it.

    The local database is currently about 330 MB in size, so the resident memory will grow 330 MB.  When the database is updated (which can happen daily) it loads a second copy into memory so the memory usage is now 330MB x2.  The old copy in memory is not removed, however the system can choose to swap it out if it needs to.

    The memory will not continue to grow when it gets more updates.
Reply
  • An update with clarity.  This is existing and expected behavior and we are not changing it.

    The local database is currently about 330 MB in size, so the resident memory will grow 330 MB.  When the database is updated (which can happen daily) it loads a second copy into memory so the memory usage is now 330MB x2.  The old copy in memory is not removed, however the system can choose to swap it out if it needs to.

    The memory will not continue to grow when it gets more updates.
Children
  • An update with clarity.  This is existing and expected behavior and we are not changing it.
    This most certainly is not expected behavior and definitely did not exist before it completely failed to load in one of the earlier beta releases. If you are doing incremental changes to the database then it shouldn't load a new copy and even if it does the old one should not hold on to the memory indefinitely. 

    I have been using urid database and find it almost as fast as local database but for people with slower connections / high pings urid may not be ideal. With your current decision of calling this expected behavior and the proxy using 1 gb ram shortly after restart, local db is useless for people with anything less than 4 gb ram. But that's your decision and I am not spending any more time arguing about it. 

    Regards
    Bill
  • An update with clarity.  This is existing and expected behavior and we are not changing it.

    The local database is currently about 330 MB in size, so the resident memory will grow 330 MB.  When the database is updated (which can happen daily) it loads a second copy into memory so the memory usage is now 330MB x2.  The old copy in memory is not removed, however the system can choose to swap it out if it needs to.

    The memory will not continue to grow when it gets more updates.


    question..what happens at the next update?  does copy 2 simply get updated then and it doesn't copy it a third time correct?

    Owner:  Emmanuel Technology Consulting

    http://etc-md.com

    Former Sophos SG(Astaro) advocate/researcher/Silver Partner

    PfSense w/Suricata, ntopng, 

    Other addons to follow

  • An update with clarity.  This is existing and expected behavior and we are not changing it.




    This is pretty bad - why would anyone want an old copy of the database in mem thats not doing anything. How does the system determine to remove the old one?

    Did this happen in 9.006-5? I run a UTM 120 ver 5 with the MEM option and it is happy running along at around 70% ram and 5%  swap.... I don't need more crap in ram when its not needed...