[ZODB-Dev] "Transaction blocked waiting for storage"

Jim Fulton jim at zope.com
Mon Jun 22 11:05:43 EDT 2009


On Jun 22, 2009, at 10:56 AM, Pedro Ferreira wrote:

> Hello all,
> We occasionally get some messages like this in the logs:
>
> 2009-06-22T14:12:42 (30651/137.138.128.213:35787) Transaction blocked
> waiting for storage. Clients waiting: 1.

This is normal.

> But today we eventually got to:
>
> 2009-06-22T16:00:11 (30651/137.138.4.153:53416) Transaction blocked
> waiting for storage. Clients waiting: 204.

This isn't. :)

> Which lasted some minutes.  During that time, our system seemed to  
> hang,
> even if it was possible to connect to the db through the command line.
> It eventually went back to normal by itself.
> Any clue on what might have caused this?


One of your applications took a very long time in the last phase of 2- 
phase commit (between a tpc_vote and a tpc_finish call).

You avoid this in the future, you might want to set the transaction- 
timeout in your ZEO server:

         The maximum amount of time to wait for a transaction to commit
         after acquiring the storage lock, specified in seconds.  If the
         transaction takes too long, the client connection will be  
closed
         and the transaction aborted.

30 seconds should normally be more than long enough.

Jim

--
Jim Fulton
Zope Corporation




More information about the ZODB-Dev mailing list