diff options
| author | Martin Ritchie <ritchiem@apache.org> | 2009-02-27 13:37:03 +0000 |
|---|---|---|
| committer | Martin Ritchie <ritchiem@apache.org> | 2009-02-27 13:37:03 +0000 |
| commit | 2a2f31bf97366c0c67e7fe0d41135bd3e4c7b1ba (patch) | |
| tree | cde292bc392d07d8fb48b1eee5e370f5dde644ec /cpp/src | |
| parent | 9f75e5deb5ef0ca80e77a4f11983bb6a44e10e50 (diff) | |
| download | qpid-python-2a2f31bf97366c0c67e7fe0d41135bd3e4c7b1ba.tar.gz | |
QPID-1635,QPID-1636,QPID-1638 : Updated QueueEntries to contain additional values from AMQMessage, _flags and expiry this allows the checking of immediate delivery and expiry on unloaded messages.
Updated nomenclature to use load/unload rather than the overloaded flow/recover.
Created new FileQueueBackingStoreFactory to ensure that validates and creates initial flowToDiskLocation and creates a new BackingStore.
Responsibility for FlowToDisk has been added to the QueueEntryLists. This will allow the easy unloading of the structure in the future. Inorder to do this the size,count and memory count properties had to be moved from the SimpleAMQQueue to the QueueEntryList.
An Inhaler thread was created in addition to the synchronous loading of messages. This is initiated as a result of a flowed QEL dropping below the minimumMemory value.
A test to ensure that the queue never exceeds its set memory usage and that the count does not go negative has been added to SimpleAMQQueueTest.
The SimpleAMQQueue is responsible for deciding when a message can be unloaded after delivery takes place. The QEL cannot decide this as there is no state for a message being marked as sent to a consumer. Only Aquired and Dequeued. The unloaded message is only deleted after the QueueEntry is deleted from the QEL. This negates the need to recreated the data on disk if the message needs to be unloaded again.
All files/directories relating to FtD are created as deleteOnExit files so that under clean shutdown the VM will ensure that the files are deleted. On startup the flowToDiskLocation is also purged to ensure a clean starting point.
SAMQQueueThreadPoolTest was augmented to take in to account the new inhaler executor reference.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@748519 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/src')
0 files changed, 0 insertions, 0 deletions
