diff options
| author | Matthias Radestock <matthias@lshift.net> | 2009-10-08 03:09:49 +0100 |
|---|---|---|
| committer | Matthias Radestock <matthias@lshift.net> | 2009-10-08 03:09:49 +0100 |
| commit | bfb9afede0a4393a47664de78f42321e0b01ba76 (patch) | |
| tree | 8f6ff2443aeea16b4d0518d8a6321630042a7635 /scripts/rabbitmq-server | |
| parent | 98a679a1e632dbeb768e8dc436d9bf7aac91e582 (diff) | |
| download | rabbitmq-server-git-bfb9afede0a4393a47664de78f42321e0b01ba76.tar.gz | |
make msg_store responsible for sync'ing
The API to the msg_store has changed: now instead of asking whether a
sync is needed for a set of msg ids, and subsequently requesting a
sync, we request a sync for a set of msg ids and supply a callback
that is invoked when that sync is done. That way the msg_store can
make its own decisions on when to sync, and less logic is required by
callers.
During queue deletion we must remove *all* queue messages from the
store, including those that are part of committed transactions for
which the disk_queue has not yet received the sync callback. To do
that we keep a record of these messages in a dict in the state. The
dict also ensures that we do not act on a sync callback involving a
queue which has since been deleted and perhaps recreated.
Diffstat (limited to 'scripts/rabbitmq-server')
0 files changed, 0 insertions, 0 deletions
