Opened 6 years ago

Closed 6 weeks ago

#8981 closed defect (fixed)

Editing fails with "KeyError: 'id'"

Reported by: Robert Rossmair Owned by:
Priority: normal Component: DiscussionPlugin
Severity: normal Keywords:
Cc: Ryan J Ollos Trac Release: 0.12


'Submit changes' fails and produces the following log entry:

2011-07-13 11:08:40,587 Trac[main] ERROR: Internal Server Error:.
Traceback (most recent call last):
  File "/usr/local/lib/python2.6/dist-packages/Trac-0.12.3dev_r10746-py2.6.egg/trac/web/", line 522, in _dispatch_request
  File "/usr/local/lib/python2.6/dist-packages/Trac-0.12.3dev_r10746-py2.6.egg/trac/web/", line 243, in dispatch
    resp = chosen_handler.process_request(req)
  File "/usr/local/lib/python2.6/dist-packages/TracDiscussion-0.8_r9877-py2.6.egg/tracdiscussion/", line 112, in process_request
    template, data = api.process_discussion(context)
  File "/usr/local/lib/python2.6/dist-packages/TracDiscussion-0.8_r9877-py2.6.egg/tracdiscussion/", line 259, in process_discussion
    self._do_actions(context, actions)
  File "/usr/local/lib/python2.6/dist-packages/TracDiscussion-0.8_r9877-py2.6.egg/tracdiscussion/", line 1098, in _do_actions
    listener.topic_changed(context, topic, context.topic)
  File "/usr/local/lib/python2.6/dist-packages/TracDiscussion-0.8_r9877-py2.6.egg/tracdiscussion/", line 91, in topic_changed
KeyError: 'id'

Trac Version is 0.12.3dev-r10746
Discussion Plugin Version: 0.8-r9877

Attachments (0)

Change History (8)

comment:1 Changed 6 years ago by Radek Bartoň

Priority: highnormal
Status: newassigned

Current revision is in unfinished state. Read Plugin Versions section at DiscussionPlugin page.

comment:2 Changed 5 years ago by Ryan J Ollos

#9528 was closed as a duplicate.

comment:3 Changed 3 years ago by Steffen Hoffmann

In 13939:

DiscussionPlugin: Change listeners got incomplete objects, refs #6783 and #8981.

Fixed tag-related change listeners to get discussion item IDs, what caused
KeyErrors before, just raised a couple of other issues. Not all of these
issues are resolved yet. I decided to initially catch listener errors with
logged warnings for improved API method robustness.

Moved time stamp generation nearer to db action and letting _add_item()
return the added item ID obsoleted four api methods at once.

comment:4 Changed 3 years ago by Steffen Hoffmann

Owner: changed from Radek Bartoň to Steffen Hoffmann

comment:5 Changed 3 years ago by Steffen Hoffmann

Cc: Ryan J Ollos added; anonymous removed

As hinted in the commit message fixing tag-related change listeners uncovered more work to be done to make change listener calls conform to method descriptions in interface definitions. I'll continue to push related change for a complete solution.

comment:6 Changed 6 months ago by Ryan J Ollos

Status: assignednew

comment:7 Changed 6 months ago by Ryan J Ollos

Owner: Steffen Hoffmann deleted

comment:8 Changed 6 weeks ago by Ryan J Ollos

Resolution: fixed
Status: newclosed

Modify Ticket

Change Properties
Set your email in Preferences
as closed The ticket will remain with no owner.
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.