diff options
| author | Matthew Sackman <matthew@lshift.net> | 2009-08-16 23:19:53 +0100 |
|---|---|---|
| committer | Matthew Sackman <matthew@lshift.net> | 2009-08-16 23:19:53 +0100 |
| commit | 3a69615fae0fabd893f59b99f5c0d0cfbc3f56f7 (patch) | |
| tree | d794c4bf70ce66775b1d25994f67eed1c57bc5f3 /scripts | |
| parent | c6ca402ff9b4763b3d1c7758db6c94b8354beff1 (diff) | |
| download | rabbitmq-server-git-3a69615fae0fabd893f59b99f5c0d0cfbc3f56f7.tar.gz | |
A Matthias stipulated refactoring. Also, in testing found some issues with the prefetcher, found a couple of places where it being stopped wasn't being recorded properly but that wasn't the cause of the problem. Eventually found the cause to be the disk_queue attempting to publish to the prefetcher and getting back exit:{normal,_} instead of exit:{noproc,_}, which I didn't know could happen. To test:
1) create 100 queues
2) fire 100 msgs to each queue ((1 msg to every queue)*100)
3) pin all queues to disk
4) unpin all queues
5) do step 2 again
6) wait for the prefetchers to start up (watch CPU load and disk activity)
7) pin all queues to disk
In step 7, the prefetchers are being stopped whilst the disk_queue is feeding them messages. I believe that exit:{noproc,_} comes back when sending a msg to a non-existant process, and exit:{normal,_} comes back if the process existed when we sent the message as part of the call but the process exited (normally) before our message was replied to.
Diffstat (limited to 'scripts')
0 files changed, 0 insertions, 0 deletions
