Enhancement #2850

Dovecot: adjust inotify instances limit

Added by Filippo Carletti almost 7 years ago. Updated over 6 years ago.

Status:CLOSEDStart date:
Priority:NormalDue date:
Assignee:-% Done:

100%

Category:nethserver-mail-server
Target version:v6.6
Resolution:WONTFIX NEEDINFO:Yes

Description

/var/log/maillog has lines like the following:

Sep  1 11:56:31 mail dovecot: imap(user): Warning: Inotify instance limit for user 494 (UID vmail) exceeded, disabling. Increase /proc/sys/fs/inotify/max_user_instances

By default:

# cat /proc/sys/fs/inotify/max_user_instances
128

128 seems too low for a system with tens of users.
A quick workaround is to increase the maximum number of instances:
echo "fs.inotify.max_user_instances = 1024" >>/etc/sysctl.conf
sysctl -p

dovecot uses inotify ti support IDLE IMAP command. I'm not sure that a lot of instances is really needed. Maybe dovecot is leaking inotify instances.

History

#1 Updated by Davide Principi almost 7 years ago

  • Subject changed from Adjust inotify instances to Dovecot: adjust inotify instances limit
  • Target version set to v6.5

How many clients were connected when dovecot logged that message?

The following commands may help:
  • Who is consuming inotify resources [1]:
    find /proc/*/fd -type l -lname '*inotify' -print 2>/dev/null \
      | cut -d / -f 3 | (while read pid; do ps --no-headers -p $pid -o user,command; done) \
      | sort | uniq -c
    
  • Count open IMAP connections:
    ss -tnp state established src \*:993 '||' src \*:143 | wc -l
    

References:
1. http://unix.stackexchange.com/questions/15509/whos-consuming-my-inotify-resources

#2 Updated by Davide Principi almost 7 years ago

  • NEEDINFO changed from No to Yes

#3 Updated by Giacomo Sanchietti almost 7 years ago

  • Status changed from NEW to TRIAGED
  • % Done changed from 0 to 20

#4 Updated by Giacomo Sanchietti almost 7 years ago

  • Category set to nethserver-mail-server

#5 Updated by Davide Principi almost 7 years ago

Any idea about how to implement this enhancement?

  • Increase default value?
  • A prop?
  • Custom template?

I would not modify /etc/syslog.conf automatically: it's not a template.

#6 Updated by Giacomo Sanchietti over 6 years ago

  • Target version changed from v6.5 to v6.6-rc1

#7 Updated by Giacomo Sanchietti over 6 years ago

  • Target version changed from v6.6-rc1 to v6.6

#8 Updated by Filippo Carletti over 6 years ago

  • Status changed from TRIAGED to CLOSED
  • % Done changed from 20 to 100
  • Resolution set to WONTFIX

Documentation.

Also available in: Atom PDF