Re: Zope, DCOracle2, concurrent transactions, etc.
Maciej Wisniowski <[email protected]>
| Newsgroups | gmane.comp.web.zope.database |
|---|---|
| Message-ID | <[email protected]> |
Michael Mauws wrote: > Thanks yet again, Dieter, particularly for putting to rest a few of > the "solutions" I found while poking around. As you might expect, I've > been continuing to explore this problem and, at the moment, I'm > zeroing in on rollback segments. If this is indeed the problem, it > would fit well with what you're saying.... Hi! Rarely, but I have a similiar problems with Zope and Oracle - I mean Zope stops responding. You can easily check what is the cause with DeadlockDebugger, and I think you should definitely start your debugging from this point. In my case all Zope threads are hung in cursor.execute() line in DCOracle2 query (AFAIR) function - they're waiting for database to finish some queries. Usually the problem is with long lasting queries and nervous users that are clicking refresh buttons again and again. Unfortunatelly sometimes the problem is different - queries are 'locked' in Oracle. As db administrator says one query has locked a table and didn't removed a lock, and all other queries are waiting for this. If db admin executes commit/rollback to finish transactions everything starts working. Restarting Zope is solution too. So far I don't know exactly why these locks appear. They are rare - sometimes once a week or two and thus difficult to track down. I think it is a problem with Oracle procedures, but db admins say it may be that Zope is not commiting some transactions (is this possible?). I've added some code to DCOracle2 to log queries, and turned on debug mode to be able to see what hapened with transactions in Zope, but now I'm waiting for the problem to appear. Maybe your problem is something similiar. -- Maciej Wisniowski