Hi Vince,
Dr. DiPierro wrote: > db['_execute']=lambda *a,**b: timer(db,lambda:db._execute(*a,**b)) Look carefully at the line above, I believe that there may be an infinite recursion. When you try to call db._execute, the method will itself call db._execute and then once the thread tries to obtain the portalocker mutex a second time the thread will freeze forever. I believe you need to rename the original method to something else (like db._execute_old). This should prevent the recursion. Here's an untested example for you to play with: db._execute_old = db._execute db['_execute']=lambda *a,**b: timer(db,lambda:db._execute_old(*a,**b)) I hope that helps, --Jonathan --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "web2py Web Framework" group. To post to this group, send email to web2py@googlegroups.com To unsubscribe from this group, send email to web2py+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/web2py?hl=en -~----------~----~----~----~------~----~------~--~---