question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Memory leak in Valetudo?

See original GitHub issue

I discovered a small issue when using Home-Assistant to Poll the Map too often (every 10 seconds to get a sort of Live map). The /tmp directory filled and the vacuum locked up. A re-boot fixes the issue obviously.

I had done other things on the vacuum in the past so I might have had less space available than normal.

A quick work-around was to throw this into cron */1 * * * * cd /tmp/maps && ls -t /tmp/maps | tail -n +2 | xargs rm --

Issue Analytics

  • State:closed
  • Created 5 years ago
  • Comments:15 (7 by maintainers)

github_iconTop GitHub Comments

1reaction
Hypfercommented, Mar 23, 2019

Testing Node 11.12 shows no signs of the leak so I guess https://github.com/nodejs/node/issues/23862 this is the culprit.

Fixed in Node 11.10 https://github.com/nodejs/node/pull/25993

1reaction
axel-kahcommented, Dec 30, 2018

Tracing the memory leak is a lot harder than I thought. Stumbling blocks:

Debugging on the robot:

  • the binary output of pkg does not support the --inspect flag
  • passing the --inspect flag to pkg --options does not work
  • using memwatch-sigusr2 (depends on memwatch-next) requires crosscompilation (didn’t want to get into that)

Debugging on the host:

  • usage of the VAC_MAP_TEST env variable was not self explanatory and could not find more documentation. What kind of file do you have to povide? I only found out it’s not a rendered png 😃
  • Webserver.js needed slight adaptation to use custom paths for the rrlog files (copied from robot) and temp folder. This effectively mocked the robots filesystem and allows to use the regular code paths that create png maps from logfiles (win!).

Using --inspect was finally possible! Using chromiums debugger for stepping/breaking worked and taking heap snapshots as well. I took several snapshots while requesting 100 maps in between. Unfortunately comparing those snapshots is also not as straight forward as I thought. I can see that the heap increases and creates arrays almost linearly with request count but when trying to attribute it to object class names, function names or anything recognizable from the source I failed because It’s all just very generic names in the heap detail view.

Do the devs have any input for me how to debug this properly, what to look for?

Read more comments on GitHub >

github_iconTop Results From Across the Web

FAQ | Valetudo
Frequently asked questions. Why the name? Valetudo is the roman name for the greek goddess Hygieia, which is the goddess of health, cleanliness...
Read more >
Fixing a memory leak - LeakCanary
Follow these 4 steps to fix memory leaks: Find the leak trace. Narrow down the suspect references. Find the reference causing the leak....
Read more >
Telegraf 1.24.1 maintenance release fixes memory leak for ...
We fixed a memory leak for plugins using ParserFunc . We removed some special handling of parsers and unwrapped the remaining parsers.
Read more >
Hypfer/Valetudo 2021.07.1 on GitHub - NewReleases.io
New release Hypfer/Valetudo version 2021.07.1 Valetudo 2021.07.1 on GitHub. ... Valetudo was also extended to watch its own Memory usage
Read more >
erkenci kus episode 32 english subtitles
... the Sanem memory that entered Jan's house. com/channel/UCbDFiuwL7FDqRWrCO0aLRVw? ... <a href="https://mahaguru.de/ford-f150-antifreeze-leak.html">Kus ...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found