]> Sergey Matveev's repositories - public-inbox.git/commitdiff
inboxidle: clue users into resolving ENOSPC from inotify
authorEric Wong <e@80x24.org>
Sat, 26 Dec 2020 05:59:22 +0000 (05:59 +0000)
committerEric Wong <e@80x24.org>
Sat, 26 Dec 2020 20:20:13 +0000 (20:20 +0000)
It may not be obvious to users a ENOSPC error is from hitting
a (tunable) kernel-imposed limit on inotify watches, and not
some storage device running out of space.  Give them a hint
here to reduce our own support burden.

(cherry picked from commit 5e05c2eb58a450849f1826f3d02ed62b814b6617)

lib/PublicInbox/InboxIdle.pm

index 0cdd2e2a8e56df7a54103d5a6592c6dea06822bb..357bd216b5c30642fef65c84bbd343053d53ec25 100644 (file)
@@ -45,6 +45,11 @@ sub in2_arm ($$) { # PublicInbox::Config::each_inbox callback
                $self->{on_unlock}->{$w->name} = $ibx;
        } else {
                warn "E: ".ref($inot)."->watch($lock, IN_MODIFY) failed: $!\n";
                $self->{on_unlock}->{$w->name} = $ibx;
        } else {
                warn "E: ".ref($inot)."->watch($lock, IN_MODIFY) failed: $!\n";
+               if ($!{ENOSPC} && $^O eq 'linux') {
+                       warn <<"";
+I: consider increasing /proc/sys/fs/inotify/max_user_watches
+
+               }
        }
 
        # TODO: detect deleted packs (and possibly other files)
        }
 
        # TODO: detect deleted packs (and possibly other files)