After upgrading to latest Turbogears SVN (r801) and to latest SQLObject (r1616, 
0.7-bugfix) I get weird lock error when trying to destroy an SQLObject's 
instance. I cross-posting this to TurboGears group because this may have 
something with its AutoHubs feature.

I'm running MySQL 4.1 on Windows XP SP2. Python 2.4.

Sample session:

>>> from turbogears.identity.soprovider import TG_User, TG_Group
>>> u1=TG_User(userId='max', password='x', emailAddress='', displayName='')
>>> u1
<TG_User 1L userId=u'max' emailAddress=u'' displayName=u'' password=u'x' 
created='datetime.datetime...)'>
>>> u1.destroySelf()
[ here it hangs for about a minute ]
Traceback (most recent call last):
  File "<console>", line 1, in ?
  File 
"c:\python24\lib\site-packages\sqlobject-0.7.1dev_r1613-py2.4.egg\sqlobject\inheritance\__init__.py",
 line 242, in destroySelf
    super(InheritableSQLObject, self).destroySelf()
  File 
"c:\python24\lib\site-packages\sqlobject-0.7.1dev_r1613-py2.4.egg\sqlobject\main.py",
 line 1462, in destroySelf
    self._connection._SO_delete(self)
  File 
"c:\python24\lib\site-packages\sqlobject-0.7.1dev_r1613-py2.4.egg\sqlobject\dbconnection.py",
 line 801, in _SO_delete
    return self._dbConnection._SO_delete(inst)
  File 
"c:\python24\lib\site-packages\sqlobject-0.7.1dev_r1613-py2.4.egg\sqlobject\dbconnection.py",
 line 618, in _SO_delete
    self.query("DELETE FROM %s WHERE %s = %s" %
  File 
"c:\python24\lib\site-packages\sqlobject-0.7.1dev_r1613-py2.4.egg\sqlobject\dbconnection.py",
 line 329, in query
    return self._runWithConnection(self._query, s)
  File 
"c:\python24\lib\site-packages\sqlobject-0.7.1dev_r1613-py2.4.egg\sqlobject\dbconnection.py",
 line 242, in _runWithConnection
    val = meth(conn, *args)
  File 
"c:\python24\lib\site-packages\sqlobject-0.7.1dev_r1613-py2.4.egg\sqlobject\dbconnection.py",
 line 326, in _query
    self._executeRetry(conn, conn.cursor(), s)
  File 
"c:\python24\lib\site-packages\sqlobject-0.7.1dev_r1613-py2.4.egg\sqlobject\mysql\mysqlconnection.py",
 line 66, in _executeRetry
    return cursor.execute(query)
  File "C:\Python24\lib\site-packages\MySQLdb\cursors.py", line 137, in execute
    self.errorhandler(self, exc, value)
  File "C:\Python24\lib\site-packages\MySQLdb\connections.py", line 33, in 
defaulterrorhandler
    raise errorclass, errorvalue
OperationalError: (1205, 'Lock wait timeout exceeded; try restarting 
transaction')

Same session with debug=1:

>>> from turbogears.identity.soprovider import TG_User, TG_Group
>>> u1=TG_User(userId='max', password='x', emailAddress='', displayName='')
 1/QueryIns:  INSERT INTO tg_user (display_name, created, email_address, 
password, user_id, child_name) VALUES ('', '2006-02-21 11:06:31', '',
x', 'max', NULL)
 1/QueryOne:  SELECT child_name, user_id, email_address, display_name, 
password, created FROM tg_user WHERE id = 2
>>> u1.destroySelf()
 2/Query   :  DELETE FROM tg_user WHERE id = 2
[ hangs here ]

I'm crushed. ;-(
Can at least someone is able to reproduced this?


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"TurboGears" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at http://groups.google.com/group/turbogears
-~----------~----~----~----~------~----~------~--~---

Reply via email to