What version are you running? 2.0.2 What's the URL of the page containing the problem? /r/85/ What steps will reproduce the problem? 1. Not sure what happened here, but here is an approximate set of events. 2. Diff was uploaded, but didn't get applied cleanly and RB complained 3. Diff was discarded and a new diff was uploaded which also didn't apply 4. This diff was also discarded and then it turns out that the previous discarded diff was actually applied, so maybe it wasn't discarded. Since it was not applied correctly, went to admin and deleted the diff from the DB. Bad idea, I guess! 5. Right now, if you just visit the URL, it crashes the server What is the expected output? What do you see instead? Expect to see main review page, but see a 500 server error Is there any way to recover from this? Is there a script that checks for DB consistency and notifies or corrects them? What operating system are you using? What browser? All browsers Please provide any additional information below. The error trace is as follows: Traceback (most recent call last): File "/usr/lib/python2.6/site-packages/Django-1.6.5-py2.6.egg/django/core/handlers/base.py", line 112, in get_response response = wrapped_callback(request, *callback_args, **callback_kwargs) File "/usr/lib/python2.6/site-packages/ReviewBoard-2.0.2-py2.6.egg/reviewboard/accounts/decorators.py", line 23, in _check return view_func(*args, **kwargs) File "/usr/lib/python2.6/site-packages/ReviewBoard-2.0.2-py2.6.egg/reviewboard/site/decorators.py", line 35, in _check return view_func(request, local_site=local_site, *args, **kwargs) File "/usr/lib/python2.6/site-packages/ReviewBoard-2.0.2-py2.6.egg/reviewboard/reviews/views.py", line 662, in review_detail changedesc.fields_changed[field_id]) File "/usr/lib/python2.6/site-packages/ReviewBoard-2.0.2-py2.6.egg/reviewboard/reviews/fields.py", line 159, in get_change_entry_sections_html 'rendered_html': mark_safe(self.render_change_entry_html(info)), File "/usr/lib/python2.6/site-packages/ReviewBoard-2.0.2-py2.6.egg/reviewboard/reviews/builtin_fields.py", line 386, in render_change_entry_html diffset = self.diffsets_by_id[added_diff_info]
Fixed in release-2.0.x (915d270). Thanks!
- PendingReview + Fixed