We are running on a Wilfly 9.0.1, Java 8, Solaris sparc. After 10 hours of uptime the application reaches aprox 9000 open file descriptors. The majority of these descriptors (7000 out of 9000 are of FIFO type) as below:
java 33475 jboss 1448u FIFO 0xc414ba182e40 0t1 451289989 (fifofs) PIPE->0xc414ba182ed0
java 33475 jboss 1449u FIFO 0xc414ba182ed0 0t1 451289989 (fifofs) PIPE->0xc414ba182e40
java 33475 jboss 1450u VCHR 175,5220 91750404 /devices/pseudo/poll@0:poll (COMMON)
java 33475 jboss 1451u FIFO 0xc417b0352580 0t1 451289990 (fifofs) PIPE->0xc417b0352610
java 33475 jboss 1452u FIFO 0xc417b0352610 0t1 451289990 (fifofs) PIPE->0xc417b0352580
java 33475 jboss 1453u VCHR 175,5221 91750404 /devices/pseudo/poll@0:poll (COMMON)
java 33475 jboss 1454u FIFO 0xc4159c9f0160 0t1 451289991 (fifofs) PIPE->0xc4159c9f01f0
java 33475 jboss 1455u FIFO 0xc4159c9f01f0 0t1 451289991 (fifofs) PIPE->0xc4159c9f0160
java 33475 jboss 1456u VCHR 175,5222 91750404 /devices/pseudo/poll@0:poll (COMMON)
The limit of max file descriptors is set to 32000.
When the threshold of aprox 9000 is reached we experience side effects as other application hanging when invoking a rest web service exposed by this application.
With the reaching of this threshold we also see IPv4 CLOSE_WAIT connections.
Do you have any hints on how to investigate this, how to determine the provenience of these file descriptors (FIFO).