Modify ↓
Opened 17 years ago
Closed 17 years ago
#4083 closed defect (fixed)
oops when saving Legacy Notification
| Reported by: | Steve Romanow | Owned by: | Steve Romanow |
|---|---|---|---|
| Priority: | normal | Component: | AnnouncerPlugin |
| Severity: | major | Keywords: | |
| Cc: | Trac Release: | 0.11 |
Description
Using rhel 5.2, apache, mod_python, python 2.4, trac 11.1.
Oops… Trac detected an internal error:
ProgrammingError: column "value" is of type text but expression is of type boolean HINT: You will need to rewrite or cast the expression.
System Information: Trac: 0.11.1 Python: 2.4.3 (#1, Jan 14 2008, 18:32:40) [GCC 4.1.2 20070626 (Red Hat 4.1.2-14)] setuptools: 0.6c9 psycopg2: 2.0.7 (dec dt ext pq3) Genshi: 0.5.1 mod_python: 3.2.8
Attachments (0)
Change History (5)
comment:1 Changed 17 years ago by
comment:2 Changed 17 years ago by
| Owner: | changed from Robert Corsaro to Steve Romanow |
|---|
comment:3 Changed 17 years ago by
| Status: | new → assigned |
|---|
comment:4 Changed 17 years ago by
hint from doki_pen:
take a look at line 76 of the subscribers/ticket_compat.py file those should all be casted to strings
comment:5 Changed 17 years ago by
| Resolution: | → fixed |
|---|---|
| Status: | assigned → closed |
cast to unicode instead. Fixed in r4899
Note: See
TracTickets for help on using
tickets.



Python Traceback Most recent call last: * File "/usr/lib/python2.4/site-packages/Trac-0.11.1-py2.4.egg/trac/web/main.py", line 423, in _dispatch_request Code fragment: 418. try: 419. if not env and env_error: 420. raise HTTPInternalError(env_error) 421. try: 422. dispatcher = RequestDispatcher(env) 423. dispatcher.dispatch(req) 424. except RequestDone: 425. pass 426. resp = req._response or [] 427. 428. except HTTPException, e: Local variables: Name Value after [u' except RequestDone:', u' pass', u' resp = ... before [u' try:', u' if not env and env_error:', u' raise ... dispatcher <trac.web.main.RequestDispatcher object at 0xb78f2c2c> e <psycopg2.ProgrammingError instance at 0xb78b5c2c> env <trac.env.Environment object at 0xb7c84d0c> env_error None exc_info (<class psycopg2.ProgrammingError at 0xb78ef14c>, ... filename '/usr/lib/python2.4/site-packages/Trac-0.11.1-py2.4.egg/trac/web/main.py' frames [{'function': '_dispatch_request', 'lines_before': [u' try:', u' ... has_admin True line u' dispatcher.dispatch(req)' lineno 422 message u'ProgrammingError: column "value" is of type text but expression is of ... req <Request "POST u'/prefs/announcer'"> resp [] tb <traceback object at 0xb765b52c> tb_hide None traceback 'Traceback (most recent call last):\n File ... * File "/usr/lib/python2.4/site-packages/Trac-0.11.1-py2.4.egg/trac/web/main.py", line 222, in dispatch Code fragment: 217. else: 218. output = chrome.render_template(req, template, 219. data, content_type) 220. # Give the session a chance to persist changes 221. if req.session: 222. req.session.save() 223. 224. req.send(output, content_type or 'text/html') 225. else: 226. self._post_process_request(req) 227. except RequestDone: Local variables: Name Value chosen_handler <trac.prefs.web_ui.PreferencesModule object at 0xb78f2e2c> chrome <trac.web.chrome.Chrome object at 0xb78d8a2c> content_type None ctype 'application/x-www-form-urlencoded' data {'dateinfo': <function dateinfo at 0xb77eef0c>, 'active_panel': ... err (<class psycopg2.ProgrammingError at 0xb78ef14c>, ... handler <trac.prefs.web_ui.PreferencesModule object at 0xb78f2e2c> options {} output '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" ... req <Request "POST u'/prefs/announcer'"> resp ('prefs_announcer.html', {'dateinfo': <function dateinfo at 0xb77eef0c>, ... self <trac.web.main.RequestDispatcher object at 0xb78f2c2c> template 'prefs_announcer.html' * File "/usr/lib/python2.4/site-packages/Trac-0.11.1-py2.4.egg/trac/web/session.py", line 102, in save Code fragment: 97. (self.sid,)) 98. self._old = dict(self.items()) 99. if attrs: 100. cursor.executemany("INSERT INTO session_attribute " 101. "(sid,authenticated,name,value) " 102. "VALUES(%s,%s,%s,%s)", attrs) 103. elif not authenticated: 104. # No need to keep around empty unauthenticated sessions 105. cursor.execute("DELETE FROM session " 106. "WHERE sid=%s AND authenticated=0", (self.sid,)) 107. db.commit() Local variables: Name Value attrs [('sromanow', 1, u'query_time', u'1226524251'), ('sromanow', 1, u'name', ... authenticated 1 cursor <trac.db.util.IterableCursor object at 0xb766c3bc> db <trac.db.pool.PooledConnection object at 0xb784b20c> k u'announcer_specified_email' now 1226527316 self {u'query_time': u'1226524251', u'name': u'Steve Romanow', ... v u'' * File "/usr/lib/python2.4/site-packages/Trac-0.11.1-py2.4.egg/trac/db/util.py", line 57, in executemany Code fragment: 52. 53. def executemany(self, sql, args=None): 54. # print 'executemany', repr(sql) 55. if args: 56. # print repr(args) 57. return self.cursor.executemany(sql_escape_percent(sql), args) 58. return self.cursor.executemany(sql) 59. 60. 61. class ConnectionWrapper(object): 62. """Generic wrapper around connection objects. Local variables: Name Value args [('sromanow', 1, u'query_time', u'1226524251'), ('sromanow', 1, u'name', ... self <trac.db.util.IterableCursor object at 0xb766c3bc> sql 'INSERT INTO session_attribute (sid,authenticated,name,value) ... * File "/usr/lib/python2.4/site-packages/Trac-0.11.1-py2.4.egg/trac/db/util.py", line 57, in executemany Code fragment: 52. 53. def executemany(self, sql, args=None): 54. # print 'executemany', repr(sql) 55. if args: 56. # print repr(args) 57. return self.cursor.executemany(sql_escape_percent(sql), args) 58. return self.cursor.executemany(sql) 59. 60. 61. class ConnectionWrapper(object): 62. """Generic wrapper around connection objects. Local variables: Name Value args [('sromanow', 1, u'query_time', u'1226524251'), ('sromanow', 1, u'name', ... self <trac.db.util.IterableCursor object at 0xb76fda94> sql 'INSERT INTO session_attribute (sid,authenticated,name,value) ... File "/usr/lib/python2.4/site-packages/Trac-0.11.1-py2.4.egg/trac/web/main.py", line 423, in _dispatch_request dispatcher.dispatch(req) File "/usr/lib/python2.4/site-packages/Trac-0.11.1-py2.4.egg/trac/web/main.py", line 222, in dispatch req.session.save() File "/usr/lib/python2.4/site-packages/Trac-0.11.1-py2.4.egg/trac/web/session.py", line 102, in save "VALUES(%s,%s,%s,%s)", attrs) File "/usr/lib/python2.4/site-packages/Trac-0.11.1-py2.4.egg/trac/db/util.py", line 57, in executemany return self.cursor.executemany(sql_escape_percent(sql), args) File "/usr/lib/python2.4/site-packages/Trac-0.11.1-py2.4.egg/trac/db/util.py", line 57, in executemany return self.cursor.executemany(sql_escape_percent(sql), args)