﻿id,summary,reporter,owner,description,type,status,priority,component,severity,resolution,keywords,cc,release
9971,"PostgreSQL 9.1: ProgrammingError: column ""ticket_type"" does not exist",msudyin@…,anonymous,"Hello,

On Trac 0.12.3 with PostgewSQL 9.1 database back-end the following error is observed when try to go Admin > Child Tickets Plugin > Parent Types page:
{{{
2012-04-17 22:11:05,817 Trac[main] ERROR: Internal Server Error:
Traceback (most recent call last):
  File ""/usr/local/lib/python2.6/dist-packages/Trac-0.12.3-py2.6.egg/trac/web/main.py"", line 522, in _dispatch_request
    dispatcher.dispatch(req)
  File ""/usr/local/lib/python2.6/dist-packages/Trac-0.12.3-py2.6.egg/trac/web/main.py"", line 243, in dispatch
    resp = chosen_handler.process_request(req)
  File ""/usr/local/lib/python2.6/dist-packages/Trac-0.12.3-py2.6.egg/trac/admin/web_ui.py"", line 117, in process_request
    path_info)
  File ""/usr/local/lib/python2.6/dist-packages/Tracchildtickets-2.5.0-py2.6.egg/childtickets/admin.py"", line 43, in render_admin_panel
    for t in self._types():
  File ""/usr/local/lib/python2.6/dist-packages/Tracchildtickets-2.5.0-py2.6.egg/childtickets/admin.py"", line 133, in _types
    cursor.execute('select name from enum where type=""ticket_type""')
  File ""/usr/local/lib/python2.6/dist-packages/Trac-0.12.3-py2.6.egg/trac/db/util.py"", line 66, in execute
    return self.cursor.execute(sql)
ProgrammingError: column ""ticket_type"" does not exist
LINE 1: select name from enum where type=""ticket_type""
                                         ^
ProgrammingError: column ""ticket_type"" does not exist
LINE 1: select name from enum where type=""ticket_type""
                                         ^

}}}

Issue is fixed easily:
{{{
--- childtickets/admin.py.orig       2012-04-15 19:48:06.000000000 +0700
+++ childtickets/admin.py            2012-04-17 22:20:32.000000000 +0700
@@ -130,7 +130,7 @@ class ChildTicketsAdminPanel(Component):
         # For trac 0.13 : self.env.db_query('SELECT name FROM enum WHERE type=""ticket_type""')
         db = self.env.get_db_cnx()
         cursor = db.cursor()
-        cursor.execute('select name from enum where type=""ticket_type""')
+        cursor.execute(""select name from enum where type='ticket_type'"")
         if not ptype:
             # No parent type supplied, return simple list.
             return [ x for (x,) in cursor.fetchall() ]

}}}",defect,closed,normal,ChildTicketsPlugin,blocker,fixed,,,0.12
