2013/4/16 Oleg Broytman <p...@phdru.name> > > On Tue, Apr 16, 2013 at 10:52:29AM +0100, "Maciej (Matchek) Blizi??ski" > <mac...@opencsw.org> wrote: > > File > > "/opt/csw/lib/python/site-packages/sqlobject/mysql/mysqlconnection.py", > > line 71, in makeConnection > > conn.ping(True) # Attempt to reconnect. This setting is persistent. > > ProgrammingError: (2014, "Commands out of sync; you can't run this command > > now") > > conn.ping() is intended to reopen the connection after a timeout; > AFAIR the default timeout is 3600 seconds, not a few minutes. There > shouldn't be any problem with ping after a minute or two. > > "Commands out of sync"means the application calls functions in the > wrong order: > https://dev.mysql.com/doc/refman/5.1/en/commands-out-of-sync.html > Is the app multithreaded? Could it be the app tries to reuse the same > transaction in different threads?
That was my suspicion too, but it's an wsgi application which doesn't use threads. I experimented by reducing the number of wsgi application copies / threads in Apache config to 1. It didn't help, so it's probably not that. I've got an update: I noticed that MySQLdb[1] has a new version (1.2.4) so I upgraded it and the problem seems to have gone away. Maybe it was some interplay between SqlObject and the MySQL driver for Python, or just simply the db driver had a problem. Maciej [1] https://pypi.python.org/pypi/MySQL-python ------------------------------------------------------------------------------ Try New Relic Now & We'll Send You this Cool Shirt New Relic is the only SaaS-based application performance monitoring service that delivers powerful full stack analytics. Optimize and monitor your browser, app, & servers with just a few lines of code. Try New Relic and get this awesome Nerd Life shirt! http://p.sf.net/sfu/newrelic_d2d_apr _______________________________________________ sqlobject-discuss mailing list sqlobject-discuss@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/sqlobject-discuss