Here’s the backtrace it reports:
A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred.
[/usr/lib64/python2.7/site-packages/flup/server/fcgi_base.py](file:///usr/lib64/python2.7/site-packages/flup/server/fcgi_base.py) in **run** (self=<flup.server.fcgi_base.Request object>)
<small> 556</small> """Runs the handler, flushes the streams, and ends the request."""
<small> 557</small> try:
=><small> 558</small> protocolStatus, appStatus = self.server.handler(self)
<small> 559</small> except:
<small> 560</small> traceback.print_exc(file=self.stderr)
<small>protocolStatus *undefined* , appStatus *undefined* , **self** = <flup.server.fcgi_base.Request object>, self. **server** = <flup.server.fcgi.WSGIServer object>, self.server. **handler** = <bound method WSGIServer.handler of <flup.server.fcgi.WSGIServer object>></small>
[/usr/lib64/python2.7/site-packages/flup/server/fcgi_base.py](file:///usr/lib64/python2.7/site-packages/flup/server/fcgi_base.py) in **handler** (self=<flup.server.fcgi.WSGIServer object>, req=<flup.server.fcgi_base.Request object>)
<small> 1116</small> try:
<small> 1117</small> try:
=><small> 1118</small> result = self.application(environ, start_response)
<small> 1119</small> try:
<small> 1120</small> for data in result:
<small> **result** = None, **self** = <flup.server.fcgi.WSGIServer object>, self. **application** = <roundup.cgi.wsgi_handler.RequestDispatcher object>, **environ** = {'CONTENT_LENGTH': '', 'CONTENT_TYPE': '', 'DOCUMENT_ROOT': '/usr/html', 'DOCUMENT_URI': '/issue8861', 'GATEWAY_INTERFACE': 'CGI/1.1', 'HTTPS': 'on', 'HTTP_ACCEPT': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 'HTTP_ACCEPT_ENCODING': 'gzip, deflate, br', 'HTTP_ACCEPT_LANGUAGE': 'ca,en-US;q=0.7,en;q=0.3', 'HTTP_CACHE_CONTROL': 'max-age=0', ...}, **start_response** = <function start_response></small>
[/usr/lib64/python2.7/site-packages/roundup/cgi/wsgi_handler.py](file:///usr/lib64/python2.7/site-packages/roundup/cgi/wsgi_handler.py) in **__call__** (self=<roundup.cgi.wsgi_handler.RequestDispatcher object>, environ={'CONTENT_LENGTH': '', 'CONTENT_TYPE': '', 'DOCUMENT_ROOT': '/usr/html', 'DOCUMENT_URI': '/issue8861', 'GATEWAY_INTERFACE': 'CGI/1.1', 'HTTPS': 'on', 'HTTP_ACCEPT': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 'HTTP_ACCEPT_ENCODING': 'gzip, deflate, br', 'HTTP_ACCEPT_LANGUAGE': 'ca,en-US;q=0.7,en;q=0.3', 'HTTP_CACHE_CONTROL': 'max-age=0', ...}, start_response=<function start_response>)
<small> 52</small> return []
<small> 53</small>
=><small> 54</small> tracker = roundup.instance.open(self.home, not self.debug)
<small> 55</small>
<small> 56</small> # need to strip the leading '/'
<small>tracker *undefined* , *global* **roundup** = <module 'roundup' from '/usr/lib64/python2.7/site-packages/roundup/__init__.pyc'>, roundup. **instance** = <module 'roundup.instance' from '/usr/lib64/python2.7/site-packages/roundup/instance.pyc'>, roundup.instance. **open** = <function open>, **self** = <roundup.cgi.wsgi_handler.RequestDispatcher object>, self. **home** = '/home/roundup', self. **debug** = False</small>
[/usr/lib64/python2.7/site-packages/roundup/instance.py](file:///usr/lib64/python2.7/site-packages/roundup/instance.py) in **open** (tracker_home='/home/roundup', optimize=True)
<small> 325</small> return OldStyleTrackers.open(tracker_home, optimize=optimize)
<small> 326</small>
=><small> 327</small> return Tracker(tracker_home, optimize=optimize)
<small> 328</small>
<small> 329</small> # vim: set filetype=python sts=4 sw=4 et si :
<small> *global* **Tracker** = <class roundup.instance.Tracker>, **tracker_home** = '/home/roundup', **optimize** = True</small>
[/usr/lib64/python2.7/site-packages/roundup/instance.py](file:///usr/lib64/python2.7/site-packages/roundup/instance.py) in **__init__** (self=<roundup.instance.Tracker instance>, tracker_home='/home/roundup', optimize=True)
<small> 90</small> pass
<small> 91</small>
=><small> 92</small> self.backend = backends.get_backend(rdbms_backend)
<small> 93</small>
<small> 94</small> if self.optimize:
<small> **self** = <roundup.instance.Tracker instance>, self.backend *undefined* , *global* **backends** = <module 'roundup.backends' from '/usr/lib64/python2.7/site-packages/roundup/backends/__init__.pyc'>, backends. **get_backend** = <function get_backend>, **rdbms_backend** = 'postgresql'</small>
[/usr/lib64/python2.7/site-packages/roundup/backends/__init__.py](file:///usr/lib64/python2.7/site-packages/roundup/backends/__init__.py) in **get_backend** (name='postgresql')
<small> 40</small> # import the backend module
<small> 41</small> module_name = 'back_%s' % name
=><small> 42</small> module = __import__(module_name, vars)
<small> 43</small> vars[name] = module
<small> 44</small> return module
<small>module *undefined* , *builtin* **__import__** = <built-in function __import__>, **module_name** = 'back_postgresql', **vars** = {'__builtins__': {'ArithmeticError': <type 'exceptions.ArithmeticError'>, 'AssertionError': <type 'exceptions.AssertionError'>, 'AttributeError': <type 'exceptions.AttributeError'>, 'BaseException': <type 'exceptions.BaseException'>, 'BufferError': <type 'exceptions.BufferError'>, 'BytesWarning': <type 'exceptions.BytesWarning'>, 'DeprecationWarning': <type 'exceptions.DeprecationWarning'>, 'EOFError': <type 'exceptions.EOFError'>, 'Ellipsis': Ellipsis, 'EnvironmentError': <type 'exceptions.EnvironmentError'>, ...}, '__doc__': 'Container for the hyperdb storage backend implementations.\n', '__docformat__': 'restructuredtext', '__file__': '/usr/lib64/python2.7/site-packages/roundup/backends/__init__.pyc', '__name__': 'roundup.backends', '__package__': 'roundup.backends', '__path__': ['/usr/lib64/python2.7/site-packages/roundup/backends'], '_modules': {'mysql': ('MySQLdb',), 'postgresql': ('psycopg',), 'sqlite': ('pysqlite', 'pysqlite2', 'sqlite3', '_sqlite3', 'sqlite')}, 'get_backend': <function get_backend>, 'have_backend': <function have_backend>, ...}</small>
[/usr/lib64/python2.7/site-packages/roundup/backends/back_postgresql.py](file:///usr/lib64/python2.7/site-packages/roundup/backends/back_postgresql.py) in **<module>** ()
<small> 14</small> ISOLATION_LEVEL_SERIALIZABLE = None
<small> 15</small>
=><small> 16</small> from psycopg2 import psycopg1 as psycopg
<small> 17</small> from psycopg2.extensions import QuotedString
<small> 18</small> from psycopg2.extensions import ISOLATION_LEVEL_READ_UNCOMMITTED
<small>psycopg2 *undefined* , psycopg1 *undefined* , psycopg *undefined* </small>
**<type 'exceptions.ImportError'>** : cannot import name psycopg1
args = ('cannot import name psycopg1',)
message = 'cannot import name psycopg1'