Not sure if this started in 3.25 or 3.26 but we are burning through 512MB of Ram in 1.5 to 3.5 hours. Seems to get worse under heavier traffic. We use a single core AMD Athlon 2800+ system with DDR 266 512 Ram. 4 days ago with 3.25 the DNS service on the Router OS crashed. After reboot everything seemed fine. Yesterday we lost DNS again - when you check the DNS settings it shows no static or cached records and DNS server IPs are missing. Rebooted and all looked normal again. Last night I upgraded to 3.26 to see if that would stop the DNS crash. Before I did I read what people were reporting and noticed that Multi-Core routers were reporting memory leaks. I checked my router this morning after updating to 3.26 last night and noticed that I was loosing Ram at a rate of 100MB per hour. By this after noon after a couple of kernel crash and auto-reboots, I’m now loosing 300MB per hour under higher loads. I’m running BGP, Static-DHCP, Simple Ques, and Winbox Service on this router.
Any suggestions? Is anyone else having memory leak problems on a single core system?
UPDATE: Pinpointed the leak - DNS Server Cache keeps flushing as the DNS service consumes memory but never releases it. Even after a cache flush. It still resolves DNS but when ever you allow Remote Requests the System Memory starts to deplete. I upgraded RAM to 1GB to allow more time between system reboots. DNS Cache maxes out no mater how much to little memory cache you allow. With Remote Requests off the Cache only has 42 records (have 21 Static records), yet its maxed out the 10240 Kib. What ever level you set the Cache size at, that’s how much is maxed. The system is trying to correct the memory consumption by flushing the cache but the system memory keeps depleting. Cache size goes down but memory never released. The more DNS requests, the faster the memory depletes.
Tried to downgrade to 3.25 to test earlier version but file was omitted due to newer version installed. Besides I upgraded to 3.26 from 3.25 due to DNS crashes. Now I think the problem started with 3.25 and I didn’t notice the memory leak problem. 3.20 ran great but had to upgrade to 3.25 in order to implement BGP.
Update: Got an email response from Mikrotik:
We have found that it might be caused by DNS cache, the problem will be fixed in the next 3.27 MikroTik RouterOS version.
Regards,
Sergejs
Additionally I checked with another local ISP using Mikrotik. They watched thier Router OS with 3.26 and found that they too had a Memory leak. Also they had thier winbox service crash when the memory still had 250MB left and had to login localy on the router to disable the winbox service and re-enable it to restore winbox access.
Update: 3.27 appears to have stopped the leak. Thank you!