Bug 41734 - UMC-Server: crash error: [Errno 9] Bad file descriptor
UMC-Server: crash error: [Errno 9] Bad file descriptor
Status: RESOLVED WONTFIX
Product: UCS
Classification: Unclassified
Component: UMC (Generic)
UCS 4.1
Other Linux
: P5 normal (vote)
: ---
Assigned To: UMC maintainers
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2016-07-05 16:59 CEST by Florian Best
Modified: 2019-01-03 07:23 CET (History)
1 user (show)

See Also:
What kind of report is it?: Bug Report
What type of bug is this?: 7: Crash: Bug causes crash or data loss
Who will be affected by this bug?: 1: Will affect a very few installed domains
How will those affected feel about the bug?: 2: A Pain – users won’t like this once they notice it
User Pain: 0.080
Enterprise Customer affected?:
School Customer affected?:
ISV affected?:
Waiting Support:
Flags outvoted (downgraded) after PO Review:
Ticket number:
Bug group (optional): Error handling
Max CVSS v3 score:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Florian Best univentionstaff 2016-07-05 16:59:40 CEST
Dirk gave me the following traceback which is impossible to occur from code perspective as this exception is caught.

    14.06.16 01:50:52.669  MAIN        ( ERROR   ) : Traceback (most recent call last):
      File "/usr/sbin/univention-management-console-server", line 236, in <module>
        umc_daemon.do_action()
      File "/usr/lib/pymodules/python2.7/daemon/runner.py", line 186, in do_action
        func(self)
      File "/usr/sbin/univention-management-console-server", line 150, in _restart
        self._start()
      File "/usr/lib/pymodules/python2.7/daemon/runner.py", line 131, in _start
        self.app.run()
      File "/usr/sbin/univention-management-console-server", line 204, in run
        notifier.loop()
      File "/usr/lib/pymodules/python2.7/notifier/nf_generic.py", line 286, in loop
        step()
      File "/usr/lib/pymodules/python2.7/notifier/nf_generic.py", line 242, in step
        if not timer[ CALLBACK ]():
      File "/usr/lib/pymodules/python2.7/notifier/__init__.py", line 104, in __call__
        return self._function( *tmp, **self._kwargs )
      File "/usr/lib/pymodules/python2.7/univention/management/console/protocol/session.py", line 868, in _mod_connect
        _send_error()
      File "/usr/lib/pymodules/python2.7/univention/management/console/protocol/session.py", line 854, in _send_error
        self.result(res)
      File "/usr/lib/pymodules/python2.7/univention/management/console/base.py", line 405, in result
        self.signal_emit('success', response)
      File "/usr/lib/pymodules/python2.7/notifier/signals.py", line 75, in signal_emit
        self.__signals[ signal ].emit( *args )
      File "/usr/lib/pymodules/python2.7/notifier/signals.py", line 41, in emit
        cb( *args )
      File "/usr/lib/pymodules/python2.7/notifier/__init__.py", line 104, in __call__
        return self._function( *tmp, **self._kwargs )
      File "/usr/lib/pymodules/python2.7/univention/management/console/protocol/server.py", line 265, in _response
        notifier.socket_add(state.socket, self._do_send, notifier.IO_WRITE)
      File "/usr/lib/pymodules/python2.7/notifier/nf_generic.py", line 87, in socket_add
        fd = _get_fd( id )
      File "/usr/lib/pymodules/python2.7/notifier/nf_generic.py", line 71, in _get_fd
        return obj.fileno()
      File "/usr/lib/python2.7/socket.py", line 224, in meth
        return getattr(self._sock,name)(*args)
      File "/usr/lib/python2.7/socket.py", line 170, in _dummy
        raise error(EBADF, 'Bad file descriptor')
    error: [Errno 9] Bad file descriptor

He said it occurred under heavy load.
Comment 1 Florian Best univentionstaff 2016-07-05 17:00:23 CEST
14.06.16 01:50:52.669  MAIN        ( ERROR   ) : Traceback (most recent call last): 
  File "/usr/sbin/univention-management-console-server", line 236, in <module>
    umc_daemon.do_action()
  File "/usr/lib/pymodules/python2.7/daemon/runner.py", line 186, in do_action
    func(self)
  File "/usr/sbin/univention-management-console-server", line 150, in _restart
    self._start()
  File "/usr/lib/pymodules/python2.7/daemon/runner.py", line 131, in _start 
    self.app.run()
  File "/usr/sbin/univention-management-console-server", line 204, in run 
    notifier.loop()
  File "/usr/lib/pymodules/python2.7/notifier/nf_generic.py", line 286, in loop
    step() 
  File "/usr/lib/pymodules/python2.7/notifier/nf_generic.py", line 242, in step
    if not timer[ CALLBACK ]():
  File "/usr/lib/pymodules/python2.7/notifier/__init__.py", line 104, in __call__
    return self._function( *tmp, **self._kwargs )
  File "/usr/lib/pymodules/python2.7/univention/management/console/protocol/session.py", line 868, in _mod_connect
    _send_error()
  File "/usr/lib/pymodules/python2.7/univention/management/console/protocol/session.py", line 854, in _send_error
    self.result(res)
  File "/usr/lib/pymodules/python2.7/univention/management/console/base.py", line 405, in result 
    self.signal_emit('success', response)
  File "/usr/lib/pymodules/python2.7/notifier/signals.py", line 75, in signal_emit
    self.__signals[ signal ].emit( *args )
  File "/usr/lib/pymodules/python2.7/notifier/signals.py", line 41, in emit
    cb( *args )
  File "/usr/lib/pymodules/python2.7/notifier/__init__.py", line 104, in __call__
    return self._function( *tmp, **self._kwargs )
  File "/usr/lib/pymodules/python2.7/univention/management/console/protocol/server.py", line 265, in _response
    notifier.socket_add(state.socket, self._do_send, notifier.IO_WRITE)
  File "/usr/lib/pymodules/python2.7/notifier/nf_generic.py", line 87, in socket_add
    fd = _get_fd( id )
  File "/usr/lib/pymodules/python2.7/notifier/nf_generic.py", line 71, in _get_fd
    return obj.fileno()
  File "/usr/lib/python2.7/socket.py", line 224, in meth
    return getattr(self._sock,name)(*args)
  File "/usr/lib/python2.7/socket.py", line 170, in _dummy
    raise error(EBADF, 'Bad file descriptor')
error: [Errno 9] Bad file descriptor
Comment 2 Stefan Gohmann univentionstaff 2019-01-03 07:23:00 CET
This issue has been filled against UCS 4.1. The maintenance with bug and security fixes for UCS 4.1 has ended on 5st of April 2018.

Customers still on UCS 4.1 are encouraged to update to UCS 4.3. Please contact
your partner or Univention for any questions.

If this issue still occurs in newer UCS versions, please use "Clone this bug" or simply reopen the issue. In this case please provide detailed information on how this issue is affecting you.