diff options
| author | Matthew Sackman <matthew@lshift.net> | 2009-10-09 15:43:22 +0100 |
|---|---|---|
| committer | Matthew Sackman <matthew@lshift.net> | 2009-10-09 15:43:22 +0100 |
| commit | 1031b829a0e48910c4048beb41d95f339c4ce880 (patch) | |
| tree | afe61c72221bab7d1d049dbf8ebe30654d13e75a /src/rabbit.erl | |
| parent | a9149a4a4ab9e99de7d2571b74647fb625d9a6bf (diff) | |
| download | rabbitmq-server-git-1031b829a0e48910c4048beb41d95f339c4ce880.tar.gz | |
Prefetcher has priority over q1.
However, we actually assume that the prefetcher does no work. The only other possibility is to assume that the prefetcher always completes, which can lead to q1 being pointlessly evicted to disk. Also, we stop the prefetcher as soon as have to reduce our memory usage, and at that point everything should work out. So, when starting the prefetcher, we don't adjust the ram_msg_count, but as we drain or stop the prefetcher, we include the prefetched alphas in the ram_msg_count and then evict q1 to disk as necessary. Whilst this means we will have more msgs in RAM then we claim, the fact that we stop the prefetcher as soon as we have to reduce our memory usage saves us from ruin.
Diffstat (limited to 'src/rabbit.erl')
0 files changed, 0 insertions, 0 deletions
