Description of problem: The condor_schedd runs out of file descriptors and EXCEPTs, via dprintf. Version-Release number of selected component (if applicable): 7.0.4-0.4 (with qmf-plugins) How reproducible: Always Steps to Reproduce: 1. run the condor_schedd with plugins enabled 2. submit 512 jobs 3. remove 512 jobs Actual results: condor_schedd EXCEPTs with a message in the SchedLog: **** PANIC -- OUT OF FILE DESCRIPTORS at line 783 in dprintf.c Expected results: A working schedd... Additional info: This appears to only happen when the QMF plugins are loaded. In such a case /proc/<schedd pid>/fd can be ls'd to see many sockets open. Also lsof | grep <schedd pid> lists the sockets.
qpidc is r711740
I can reproduce a similar symptom when running the example qmf-agent with no available broker. It appears that when the connection fails (connection-refused), the FD is not reclaimed and is not reused.
More specific information: In the c++ client, when Connection.open() fails (i.e. throws and exception), it appears to leak a file descriptor. Calling Connection.close() in the exception handler does not solve the problem.
To verify, run the qmf-agent example with no running broker. qmf-agent will continually attempt to connect to the broker. Use "/usr/sbin/lsof | grep qmf" to see if there are an increasing number of file descriptors allocated to the qmf-agent process. The number of FDs should remain constant.
An advisory has been issued which should help the problem described in this bug report. This report is therefore being closed with a resolution of ERRATA. For more information on therefore solution and/or where to find the updated files, please follow the link below. You may reopen this bug report if the solution does not work for you. http://rhn.redhat.com/errata/RHBA-2009-0036.html