Modify ↓
Opened 10 years ago
Closed 10 years ago
#12078 closed defect (cantfix)
IntegrityError: UNIQUE constraint failed: ticket_change.ticket, ticket_change.time, ticket_change.field
Reported by: | Owned by: | ||
---|---|---|---|
Priority: | normal | Milestone: | |
Component: | general | Version: | 1.0 |
Severity: | normal | Keywords: | |
Cc: | Branch: | ||
Release Notes: | |||
API Changes: | |||
Internal Changes: |
Description
How to Reproduce
While doing a POST operation on /batchmodify
, Trac issued an internal error.
I get this fault when using Batch Modify to change the "Blocking" field. I assume the problem lies within the relation between "Blocking" and "Blocked By".
Request parameters:
{'__FORM_TOKEN': u'9b61781acf6f1236b1837d3d', 'batchmod_submit': u'Change tickets', 'batchmod_value_blocking': u'61', 'batchmod_value_comment': u'', 'query_href': u'/query?status=closed&col=id&col=summary&col=status&col=type&col=priority&col=milestone&col=component&col=parent&order=priority', 'selected_tickets': u'1,2,3,4,5'}
User agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:38.0) Gecko/20100101 Firefox/38.0
System Information
Trac | 1.0
|
Babel | 0.9.6 (translations unavailable)
|
Docutils | 0.11
|
Genshi | 0.7 (with speedups)
|
Mercurial | 2.8.2
|
mod_wsgi | 3.4 (WSGIProcessGroup WSGIApplicationGroup %{GLOBAL})
|
Pygments | 1.6
|
pysqlite | 2.6.0
|
Python | 2.7.6 (default, Mar 22 2014, 23:03:41) [GCC 4.8.2]
|
pytz | 2012c
|
setuptools | 0.6
|
SQLite | 3.8.2
|
jQuery | 1.7.2
|
Enabled Plugins
AdvancedTicketWorkflowPlugin | 0.11dev-r9962
|
InterLinksPlugin | 1.4
|
NavAdd | 0.1
|
TicketCreationStatus | 0.1
|
trac-WorkflowNotificationPlugin | 0.4
|
Tracchildtickets | 2.5.0
|
TracMasterTickets | 3.0.2
|
TracMercurial | 1.0.0.3dev
|
TracProgressMeterMacro | 0.3
|
TracTypedTicketWorkflow | 0.2dev
|
WantedPages | 0.4dev
|
Python Traceback
Traceback (most recent call last): File "/usr/local/lib/python2.7/dist-packages/Trac-1.0-py2.7.egg/trac/web/main.py", line 497, in _dispatch_request dispatcher.dispatch(req) File "/usr/local/lib/python2.7/dist-packages/Trac-1.0-py2.7.egg/trac/web/main.py", line 214, in dispatch resp = chosen_handler.process_request(req) File "/usr/local/lib/python2.7/dist-packages/Trac-1.0-py2.7.egg/trac/ticket/batch.py", line 63, in process_request new_values, comment, action) File "/usr/local/lib/python2.7/dist-packages/Trac-1.0-py2.7.egg/trac/ticket/batch.py", line 162, in _save_ticket_changes t.save_changes(req.authname, comment, when=when) File "/usr/local/lib/python2.7/dist-packages/Trac-1.0-py2.7.egg/trac/ticket/model.py", line 369, in save_changes listener.ticket_changed(self, comment, author, old_values) File "/usr/local/lib/python2.7/dist-packages/TracMasterTickets-3.0.2-py2.7.egg/mastertickets/api.py", line 111, in ticket_changed links.save(author, comment, tkt.time_changed, db) File "/usr/local/lib/python2.7/dist-packages/TracMasterTickets-3.0.2-py2.7.egg/mastertickets/model.py", line 72, in save (n, when_ts, author, field, old_value, new_value)) File "/usr/local/lib/python2.7/dist-packages/Trac-1.0-py2.7.egg/trac/db/util.py", line 65, in execute return self.cursor.execute(sql_escape_percent(sql), args) File "/usr/local/lib/python2.7/dist-packages/Trac-1.0-py2.7.egg/trac/db/sqlite_backend.py", line 78, in execute result = PyFormatCursor.execute(self, *args) File "/usr/local/lib/python2.7/dist-packages/Trac-1.0-py2.7.egg/trac/db/sqlite_backend.py", line 56, in execute args or []) File "/usr/local/lib/python2.7/dist-packages/Trac-1.0-py2.7.egg/trac/db/sqlite_backend.py", line 48, in _rollback_on_error return function(self, *args, **kwargs) IntegrityError: UNIQUE constraint failed: ticket_change.ticket, ticket_change.time, ticket_change.field
Attachments (0)
Note:
See TracTickets
for help on using tickets.
PluginIssue: th:MasterTicketsPlugin.
Side note: th:ProgressMeterMacro isn't needed with Trac 1.0 and later.