qpid-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Kenneth Giusti" <kgiu...@apache.org>
Subject Re: Review Request: Lock the message headers to prevent changes during encode.
Date Tue, 20 Mar 2012 13:23:19 GMT

This is an automatically generated e-mail. To reply, visit:

(Updated 2012-03-20 13:23:19.671544)

Review request for qpid, Gordon Sim and Kim van der Riet.


Crash also occurs during message body encode.  Proposed fix simply moves scope of lock to
include the message body.


While running the broker with an async store, it is possible to crash the broker using perftest.
 This is due to a race condition where the broker is updating the message's headers (ttl)
while the store is encoding the same.

To reproduce:

1) run broker with async store:  
qpidd --load-module /home/kgiusti/store/cpp/lib/.libs/msgstore.so  --auth no --port 8888 --num-jfile
16 --jfile-size-pgs 128 --data-dir /tmp/tmp.364FDjf0YW

2) run qpid-perftest in a loop against the broker:
    while true; do qpid-perftest --port 8888 --mode fanout --count 25000 --size 256 --durable
yes --nsubs 4 ; done

This addresses bug qpid-3877.

Diffs (updated)

  /trunk/qpid/cpp/src/qpid/broker/Message.cpp 1302629 

Diff: https://reviews.apache.org/r/4150/diff


Ran the above tests without crash.
+make check.



  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message