Modify

Opened 6 years ago

Closed 6 years ago

Last modified 6 years ago

#12506 closed defect (invalid)

IndexError when starting trac

Reported by: Franz Owned by: Steffen Hoffmann
Priority: high Component: AccountManagerPlugin
Severity: critical Keywords: IndexError SQL
Cc: Trac Release: 1.0

Description

When trying to go to Trac startpage, I get an "Internal Server Error". When looking into trac.log, there some IndexError in method _get_name_for_cookie (see full traceback below).

There are several entries in table auth_cookie.

What I did:

  • Copying database dump and files (including svn) from productive server to test server
  • Starting test server: getting this error
  • Updgrading to Trac 1.1.6 (before was 1.1.1, but I have tried 1.1.3 beforehand and reverted to 1.1.1)
  • Starting test server: still getting this error
  • Updgrading Acct-Mgr to newest version: still getting this error
  • Disabling Acct-Mgr: Trac works fine

My Environment:

  • Trac 1.1.6
  • PostgreSQL 9.3.6
  • Python 2.7.6
  • running under Apache/2.4.7 and Ubuntu 14.04

Full Traceback

2015-09-04 11:00:42,089 Trac[build\bdist.win32\egg\trac\web\main] ERROR: Exception caught while post-processing request:
Traceback (most recent call last):
  File "build\bdist.win32\egg\trac\web\main.py", line 276, in dispatch
    self._post_process_request(req)
  File "build\bdist.win32\egg\trac\web\main.py", line 424, in _post_process_request
    f.post_process_request(req, *(None,)*extra_arg_count)
  File "build\bdist.win32\egg\navigationplugin\navigation.py", line 72, in post_process_request
    display = self.get_display(req)
  File "build\bdist.win32\egg\navigationplugin\navigation.py", line 145, in get_display
    return self.__get_pref_value(req, 'nav') or self.display_navigation
  File "build\bdist.win32\egg\navigationplugin\navigation.py", line 163, in __get_pref_value
    if req.session.has_key(SESSION_KEYS[session_key]):
  File "build\bdist.win32\egg\trac\web\api.py", line 389, in __getattr__
    value = self.callbacks[name](self)
  File "build\bdist.win32\egg\trac\web\main.py", line 327, in _get_session
    return Session(self.env, req)
  File "build\bdist.win32\egg\trac\web\session.py", line 203, in __init__
    if req.authname == 'anonymous':
  File "build\bdist.win32\egg\trac\web\api.py", line 389, in __getattr__
    value = self.callbacks[name](self)
  File "build\bdist.win32\egg\trac\web\main.py", line 160, in authenticate
    authname = authenticator.authenticate(req)
  File "build\bdist.win-amd64\egg\acct_mgr\util.py", line 81, in wrap
    return func(self, *args, **kwds)
  File "build\bdist.win-amd64\egg\acct_mgr\web_ui.py", line 425, in authenticate
    return auth.LoginModule.authenticate(self, req)
  File "build\bdist.win32\egg\trac\web\auth.py", line 90, in authenticate
    req.incookie['trac_auth'])
  File "build\bdist.win-amd64\egg\acct_mgr\web_ui.py", line 502, in _get_name_for_cookie
    name = self.env.db_query(sql, args)[0]
IndexError: list index out of range
2015-09-04 11:00:42,090 Trac[build\bdist.win32\egg\trac\web\main] ERROR: Internal Server Error:
Traceback (most recent call last):
  File "build\bdist.win32\egg\trac\web\main.py", line 587, in _dispatch_request
    dispatcher.dispatch(req)
  File "build\bdist.win32\egg\trac\web\main.py", line 207, in dispatch
    chosen_handler = self._get_valid_default_handler(req)
  File "build\bdist.win32\egg\trac\web\main.py", line 300, in _get_valid_default_handler
    name = req.session.get('default_handler')
  File "build\bdist.win32\egg\trac\web\api.py", line 389, in __getattr__
    value = self.callbacks[name](self)
  File "build\bdist.win32\egg\trac\web\main.py", line 327, in _get_session
    return Session(self.env, req)
  File "build\bdist.win32\egg\trac\web\session.py", line 203, in __init__
    if req.authname == 'anonymous':
  File "build\bdist.win32\egg\trac\web\api.py", line 389, in __getattr__
    value = self.callbacks[name](self)
  File "build\bdist.win32\egg\trac\web\main.py", line 160, in authenticate
    authname = authenticator.authenticate(req)
  File "build\bdist.win-amd64\egg\acct_mgr\util.py", line 81, in wrap
    return func(self, *args, **kwds)
  File "build\bdist.win-amd64\egg\acct_mgr\web_ui.py", line 425, in authenticate
    return auth.LoginModule.authenticate(self, req)
  File "build\bdist.win32\egg\trac\web\auth.py", line 90, in authenticate
    req.incookie['trac_auth'])
  File "build\bdist.win-amd64\egg\acct_mgr\web_ui.py", line 502, in _get_name_for_cookie
    name = self.env.db_query(sql, args)[0]
IndexError: list index out of range

Attachments (0)

Change History (2)

comment:1 Changed 6 years ago by Franz

Resolution: duplicate
Status: newclosed

I had some error with old templates of Trac (see Trac Ticket #11736); after fixing that issue I get following error:

  File "build\bdist.win-amd64\egg\acct_mgr\web_ui.py", line 425, in authenticate
    return auth.LoginModule.authenticate(self, req)
  File "build\bdist.win32\egg\trac\web\auth.py", line 90, in authenticate
    req.incookie['trac_auth'])
  File "build\bdist.win-amd64\egg\acct_mgr\web_ui.py", line 496, in _get_name_for_cookie
    db = self.env.get_db_cnx()
AttributeError: 'Environment' object has no attribute 'get_db_cnx'

This problem has already been reported with #11915, so I close this ticket as duplicate.

comment:2 Changed 6 years ago by Ryan J Ollos

Resolution: duplicateinvalid

Modify Ticket

Change Properties
Set your email in Preferences
Action
as closed The owner will remain Steffen Hoffmann.
The resolution will be deleted. Next status will be 'reopened'.

Add Comment


E-mail address and name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.