On 11/18/20 10:13 AM, Gargoyle wrote:
I've just made the switch from Ubuntu to Fedora 33 for my main desktop system. Of the few teething problems I am going through, the initial 8192 limit for fs.inotify.max_user_watches was probably causing the most side effects. As a developer, I pretty much have netbeans open all day and am forever tailing log files, so I hit this problem pretty much straight away.
After some digging around I found a script to list the current count of watchers per process. The half-dozen worst offenders were:-
INOTIFY WATCHER COUNT PID CMD
4903 4620 /data/Applications/java/jdk-15/bin/java -Djdk.home=/data/Applications/java/jdk-15 -classpath /data/Applications/netbeans 3573 3032 /usr/libexec/tracker-miner-fs-3 64 2022 /usr/lib/systemd/systemd --user 47 2663 /usr/libexec/gsd-xsettings 27 34846 /usr/share/atom/atom --type=renderer --enable-experimental-web-platform-features --field-trial-handle=123480363484759119 18 2812 /usr/bin/gnome-software --gapplication-service
So netbeans + tracker-miner had pretty much consumed the entire pool within an hour of starting the system.
I've bumped the figure up to 65K by adding an entry to /etc/sysctl.conf and asked on #fedora if anyone knew of the side effects of having a high number - the only answers found were that approx 1K of unswapable kernel memory is used per watcher. So this increase only puts an additional 57MB of such memory usage onto my system.
Are there any other side effects of this to worry about?
If not, then perhaps the default should be significantly increased with the aim of removing the problem for new users with modern desktop/laptop machines which probably have 4GB+ RAM. I've not rebooted my machine overnight and netbeans is now up to 13,000 watches and tracker-miner upto 4,500. So in less than 24 hours I have exceeded 16K watches.
Perhaps an new default value in the region of 32K - 64K would be more appropriate?
See also https://bugzilla.redhat.com/show_bug.cgi?id=1575156
I wonder how was this fixed.