Roundup Tracker - Issues

Issue 1034211

classification
newid locking with back_mysql.py
Type: Severity: normal
Components: Database Versions:
process
Status: closed fixed
:
: richard : mklatt, richard
Priority: normal :

Created on 2004-09-24 17:23 by mklatt, last changed 2004-09-24 17:23 by mklatt.

Files
File name Uploaded Description Edit Remove
back_mysql.py.patch mklatt, 2004-09-24 17:24
Messages
msg1463 Author: [hidden] (mklatt) Date: 2004-09-24 17:23
When using the MySQL backend, I discovered that I would
get "duplicate key" errors when more than one process
was adding issues to Roundup at the same time. An
example of this error message is shown below. 

A simple patch to back_mysql.py seemed to solve the
problem.  I've attached the patch file and hope this
change will be applied to the next release.

BTW - I'm *very* happy with Roundup overall.  This bug
just bite us on the day we switched to Roundup from our
old tracker.  

-Michael

Error from Roundup:

An unexpected error occurred during the processing
of your message. The tracker administrator is being
notified.


----  traceback of failure  ----
Traceback (most recent call last):
  File
"/usr/lib/python2.3/site-packages/roundup/mailgw.py",
line 529, in handle_Message
    return self.handle_message(message)
  File
"/usr/lib/python2.3/site-packages/roundup/mailgw.py",
line 906, in handle_message
    messageidssageid, inreplytoreplyto, **msg_props)
  File
"/usr/lib/python2.3/site-packages/roundup/backends/rdbms_common.py",
line 2575, in create
    newid elf.create_inner(**propvalues)
  File
"/usr/lib/python2.3/site-packages/roundup/backends/rdbms_common.py",
line 1436, in create_inner
    self.db.addnode(self.classname, newid, propvalues)
  File
"/usr/lib/python2.3/site-packages/roundup/backends/rdbms_common.py",
line 759, in addnode
    self.cursor.execute(sql, vals)
  File
"/usr/lib/python2.3/site-packages/MySQLdb/cursors.py",
line 95, in execute
    return self._execute(query, args)
  File
"/usr/lib/python2.3/site-packages/MySQLdb/cursors.py",
line 114, in _execute
    self.errorhandler(self, exc, value)
  File
"/usr/lib/python2.3/site-packages/MySQLdb/connections.py",
line 33, in defaulterrorhandler
    raise errorclass, errorvalue
IntegrityError: (1062, "Duplicate entry '68452' for key 1")
History
Date User Action Args
2004-09-24 17:23:45mklattcreate