Hi,

Apologies if this isn't the correct forum to discuss this error as it
appears to be Python and SCGI related, but I'm hoping someone here has some
pointers.

Testing our Python application stack on Ubuntu 18.04 with latest versions
of SCGI (1.15) and the bundled version of Apache (2.4.29-1ubuntu4.8) I'm
getting weird errors after a previous error occurs.

Our application stack is as follows:

Browser --HTTP--> Apache+mod_proxy_scgi --SCGI--> python app --XMLRPC-->
service

If the service that our app calls returns an error, then I eventually
(after timeout) get a 500 in the browser, as expected.

However, then subsequent requests to our web app result in the following:

[2019-08-20 09:46:47  4534 ERROR    server __init__.py(128):run] Server
failure.
Traceback (most recent call last):
  File "/home/colin/svn/favoptic/trunk/favsite2/server/__init__.py", line
119, in run
    max_children = config.max_children)
  File "/home/colin/svn/favoptic/trunk/favsite2/server/fav_scgi_server.py",
line 87, in run
    s.serve()
  File
"/home/colin/venv/local/lib/python2.7/site-packages/scgi/scgi_server.py",
line 349, in serve
    self.serve_on_socket(self.get_listening_socket())
  File "/home/colin/svn/favoptic/trunk/favsite2/server/fav_scgi_server.py",
line 59, in serve_on_socket
    SCGIServer.serve_on_socket(self, s)
  File
"/home/colin/venv/local/lib/python2.7/site-packages/scgi/scgi_server.py",
line 340, in serve_on_socket
    self.delegate_request(conn)
  File
"/home/colin/venv/local/lib/python2.7/site-packages/scgi/scgi_server.py",
line 321, in delegate_request
    self.spawn_child(conn)
  File
"/home/colin/venv/local/lib/python2.7/site-packages/scgi/scgi_server.py",
line 208, in spawn_child
    for ch in self.children.values(): os.close(ch)
AttributeError: 'list' object has no attribute 'values'
[2019-08-20 09:46:47  4534 INFO     server __init__.py(133):run]
Child(publisher) exit: 0

and this keeps occuring many times per second.

If I replace SCGI with version 1.8, it seems to work fine. Errors are
reported correctly, and the subsequent requests also work fine.

Has anyone else here seen this before?

/Colin

Reply via email to