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

Jim Fulton jim at zope.com
Mon Jun 22 11:37:16 EDT 2009


On Jun 22, 2009, at 11:31 AM, Alan Runyan wrote:

> On Mon, Jun 22, 2009 at 10:06 AM, Andreas Jung<lists at zopyx.com> wrote:
>> On 22.06.09 16:56, 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.
>>>
>>> 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.
>>>
>>> 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?
>> The reason is likely a long running transaction. Since the storage  
>> server
>> is single-threaded, a long running transaction will block pending  
>> requests.
>
> Question:
> Will the ZEO server respond to LOAD requests from ZEO clients while
> WRITEs are pending?


Yes, however, if the last phase of 2-phase commit takes long enough,  
clients will become blocked altogether.  This is because vote requests  
get blocked and eventually, all of the client threads are blocked  
voting.

Jim


--
Jim Fulton
Zope Corporation




More information about the ZODB-Dev mailing list