Univention Bugzilla – Bug 44965
UMC-Webserver crashes with "[Errno24] Too many open files" at login
Last modified: 2017-08-31 13:31:00 CEST
Created attachment 9010 [details] Screenshot of the traceback, that appeared when trying to log in After opening many umc-modules I was not able to login to the umc anymore. I got a traceback (see screenshot.png). Restarting the webserver solved the problem.
Created attachment 9011 [details] result of the lsof command
Executing `lsof -p $PID_WEBSERVER`, where $PID_WEBSERVER comes from `pgrep -fl web-server` gave the output that can be seen in the attachment result_of_the_lsof_command.
Happend also in a Customer Environment with UCS 4.2-1 e118
(In reply to Nico Stöckigt from comment #3) > Happend also in a Customer Environment with UCS 4.2-1 e118 If possible please attach a lsof output of the process.
Added traceback to comment for easier bug search: Traceback (most recent call last): File "/usr/sbin/univention-management-console-web-server", line 235, in check_queue cls.dispatch(queuerequest) File "/usr/sbin/univention-management-console-web-server", line 250, in dispatch client = SessionClient(ip=queuerequest.ip) File "/usr/sbin/univention-management-console-web-server", line 126, in __init__ self.client = Client() File "/usr/lib/pymodules/python2.7/univention/management/console/protocol/client.py", line 119, in __init__ File "/usr/lib/pymodules/python2.7/univention/management/console/protocol/client.py", line 143, in _init_socket File "/usr/lib/python2.7/socket.py", line 187, in __init__ _sock = _realsocket(family, type, proto) error: [Errno 24] Too many open files Occured several times at UCS@school customer "lsof -i $PID-UMC-WEBSERVER ; lsof -i $PID-UMC-SERVER ; ps faxwww" is available at ticket 2017081421000335
Created attachment 9116 [details] patch
univention-management-console.yaml: r82101 | YAML Bug #44965 univention-management-console (9.0.80-62): r82100 | Bug #44965: fix a memory leak in the UMC-Server process
The problem lies in the UMC-Server, which didn't close the connections after 30 seconds if a request was send whichs response could be send in one chunk to the client. The response wasn't closed because state.requests still contained the response which was already answered but the logic in _timeout_connection() expects an empty state.requests to close the connection.
Works. YAML file is OK. → VERIFIED
check_errata_for_release sagt: [FAIL] bug.43658.scope+version: Bug 43658 scope: --- [FAIL] changes.valid: Mismatching binary package version: 9.0.80-63A~4.2.0.2017081413 != univention-management-console 9.0.80-63A~4.2.0.201708141353 from univention-management-console 9.0.80-63A~4.2.0.201708141353 Im Scope ist 9.0.80-63A~4.2.0.201708141353 gebaut
Vielleicht war das auch Bug 43658, egal, bitte einfach prüfen.
r82167
<http://errata.software-univention.de/ucs/4.2/139.html>