Solution appears like a hack to me. Why do you close the connection in every process? Can you not just close once in parent? Execute commits alone in each process.
On Aug 11, 10:50 am, Spajderix <spajde...@gmail.com> wrote: > Malcolm Tredinnick pisze: > > > > > On Tue, 2009-08-11 at 11:06 +0200, Spajderix wrote: > > >> Hi! > > >> I've written a standalone script, which looks throught a table in db for > >> tasks to perform. It then starts subprocesses for each task it founds > >> using multiprocessing.Process class from python. Everything's fine when > >> there is one task, but when i try to start more subprocesses at once i get: > > >> OperationalError: (2013, 'Lost connection to MySQL server during query') > >> raise errorclass, errorvalue > >> OperationalError: (2006, 'MySQL server has gone away') > > >> I guess that this happens because all subprocesses share one connection, > >> and when one of them closes this connection, rest of subprocesses raises > >> an error. > > > That certainly sounds believable. We call close() explicitly, too, so > > that is why ongoing operations are interrupted in the middle. > > >> Do you know a way to go round this problem? > > > If you close the database connection, Django will open a new one the > > next time it needs it. So I suspect you can work around this by > > explicitly closing the connection immediately after you start a new > > process (in the new process). Then the process will get its own > > connection when you try to do something. > > > Regards, > > Malcolm > > Thank you! That solved the problem:) --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Django users" group. To post to this group, send email to django-users@googlegroups.com To unsubscribe from this group, send email to django-users+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/django-users?hl=en -~----------~----~----~----~------~----~------~--~---