summaryrefslogtreecommitdiff
path: root/cpp/src/qpid/broker/Queue.cpp
Commit message (Collapse)AuthorAgeFilesLines
* QPID-1695: Make LVQ persist durable messagesGordon Sim2009-02-261-5/+18
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@748214 13f79535-47bb-0310-9956-ffa450edef68
* QPID-1685: Fixed ring queue policyGordon Sim2009-02-251-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@747744 13f79535-47bb-0310-9956-ffa450edef68
* Ensure that the queue depth in bytes remains accurate for LVQ. This also ↵Gordon Sim2009-02-131-1/+3
| | | | | | ensures that there are no underflow exceptions from the policy that keeps this count. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@744222 13f79535-47bb-0310-9956-ffa450edef68
* Queue::checkLvqReplace() needs to update the lvq map if it makes a ↵Gordon Sim2009-02-121-2/+11
| | | | | | | | | | replacement or the map will contain a pointer to a stale message and further updates will be lost. Also added in locking to set-/get- ReplacementMessage() in Message.cpp git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@743857 13f79535-47bb-0310-9956-ffa450edef68
* QPID-1660: If selected consumer can't take a message, ensure others are ↵Gordon Sim2009-02-121-6/+26
| | | | | | notified of message availability. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@743694 13f79535-47bb-0310-9956-ffa450edef68
* QPID-1611 patch from mickCarl C. Trieloff2009-01-251-3/+7
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@737460 13f79535-47bb-0310-9956-ffa450edef68
* Use special management ids for objects used in state transfer to new ↵Gordon Sim2009-01-231-2/+6
| | | | | | | | | members. This prevents the ids getting out of sync across the cluster and allows management methods to be used reliably. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@737203 13f79535-47bb-0310-9956-ffa450edef68
* Reverted checkin r.736814 as it breaks the store recover.Kim van der Riet2009-01-231-7/+0
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@737091 13f79535-47bb-0310-9956-ffa450edef68
* QPID-1611: Patch from Mick Goulish to ensure queues are created in store in ↵Gordon Sim2009-01-221-0/+7
| | | | | | cluster configuration git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@736814 13f79535-47bb-0310-9956-ffa450edef68
* Fix tests broken by r735776: check payload pointer before use. Gordon Sim2009-01-201-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@735988 13f79535-47bb-0310-9956-ffa450edef68
* Put messages into LVQ FIFO if no key is specified.Carl C. Trieloff2009-01-191-7/+7
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@735776 13f79535-47bb-0310-9956-ffa450edef68
* QPID-1567: Initial support for asynchronous queue state replicationGordon Sim2009-01-151-4/+43
| | | | | | | | | | | | | | | * Added QueueEvents class with per broker instance * Modified qpid::broker::Queue to notify QueueEvents of enqueues and dequeues (based on configuration) * Added replication subdir containing two plugins: - an event listener that registers with QueueEvents and creates messages representing received events on a replication queue - a custom exchange type for processing messages of the format created by the listener plugin * Added new option for controlling event generation to qpid::client::QueueOptions * Added new queue option to qpid-config script for the same git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@734674 13f79535-47bb-0310-9956-ffa450edef68
* stats correction pointed out by gordonCarl C. Trieloff2009-01-031-4/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@730890 13f79535-47bb-0310-9956-ffa450edef68
* - browse correction, to update replacement message on browseCarl C. Trieloff2008-12-301-0/+8
| | | | | | | | - correct stats for lvq messages git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@730031 13f79535-47bb-0310-9956-ffa450edef68
* options name re-name to be more explicit & better testCarl C. Trieloff2008-12-171-8/+8
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@727517 13f79535-47bb-0310-9956-ffa450edef68
* LVQ browse policy updateCarl C. Trieloff2008-12-161-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@727184 13f79535-47bb-0310-9956-ffa450edef68
* LVQ queue option for no acquireCarl C. Trieloff2008-12-161-1/+9
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@727166 13f79535-47bb-0310-9956-ffa450edef68
* Added management accounting for transaction dequeues.Ted Ross2008-12-021-0/+4
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@722446 13f79535-47bb-0310-9956-ffa450edef68
* QPID-1497: Ensure policy count and size reflect transactionality of dequeuesGordon Sim2008-12-011-1/+9
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@722200 13f79535-47bb-0310-9956-ffa450edef68
* QPID-1280: fixed performance regression for multiple subscribers on shared queueGordon Sim2008-11-291-23/+23
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@721685 13f79535-47bb-0310-9956-ffa450edef68
* Further check in decode of policy.Gordon Sim2008-11-271-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@721174 13f79535-47bb-0310-9956-ffa450edef68
* * QPID-1488: test that policy pointer is setGordon Sim2008-11-271-4/+10
| | | | | | | | | * don't flow to disk for null store implementation * add checks for undeflow in queue policy git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@721166 13f79535-47bb-0310-9956-ffa450edef68
* Was causing cluster failures.Alan Conway2008-11-261-1/+3
| | | | | | | QPID-1488 Mick Goulish: QueuePolicy serialization fix for cluster braindump. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@720979 13f79535-47bb-0310-9956-ffa450edef68
* Ensure that callbacks are removed before IncompleteMessageList instance is ↵Gordon Sim2008-11-191-1/+0
| | | | | | | | | | deleted. (also removed commented out line of code from Queue.cpp) git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@719012 13f79535-47bb-0310-9956-ffa450edef68
* Removed optimisticConsume queue option, queues always consume optimistically.Alan Conway2008-11-121-11/+0
| | | | | | | There's no benefit to non-optimistic consume. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@713521 13f79535-47bb-0310-9956-ffa450edef68
* Fix namespace reference usage to work on WindowsStephen D. Huston2008-10-301-2/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@709286 13f79535-47bb-0310-9956-ffa450edef68
* Replicate session state for un-acknowledged messages to new cluster members.Alan Conway2008-10-301-11/+5
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@709242 13f79535-47bb-0310-9956-ffa450edef68
* Some fixes to the LVQ (primarily a patch from cctrieloff@redhat.com)Gordon Sim2008-10-231-19/+47
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@707446 13f79535-47bb-0310-9956-ffa450edef68
* Minor changes to provide access for cluster to replicate delivery records.Alan Conway2008-10-231-0/+27
| | | | | | | | | - broker::Queue: find message by position, set position. - broker::SemanticState: make record() public, add eachUnacked(), fix typo "NotifyEnabld" - broker::DeliveryRecord: added more public accessors git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@707406 13f79535-47bb-0310-9956-ffa450edef68
* Update to periodic purge of expired messages: check the dequeue rate to ↵Gordon Sim2008-10-141-10/+16
| | | | | | avoid interfering unnecessarily where the dequeing is sufficient to remove expired messages. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@704461 13f79535-47bb-0310-9956-ffa450edef68
* Field Table API: changed the getInt() & getString() operationsAndrew Stitcher2008-10-131-5/+5
| | | | | | | | which are inconsistent with all the other getXXX() functions to getAsString()/getAsInt() to better indicate their real function. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@704255 13f79535-47bb-0310-9956-ffa450edef68
* Reduce the scope over which lock is held during purge of expired messages.Gordon Sim2008-10-131-8/+12
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@704199 13f79535-47bb-0310-9956-ffa450edef68
* Periodically purge expired messages from queuesGordon Sim2008-10-131-0/+13
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@704166 13f79535-47bb-0310-9956-ffa450edef68
* QPID-1306Carl C. Trieloff2008-10-111-1/+2
| | | | | | | | - Added aquire safety check + test. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@703704 13f79535-47bb-0310-9956-ffa450edef68
* Handle ttl in messages transfers received by the broker 7 added test for itGordon Sim2008-10-101-1/+7
| | | | | | | | Moved Timer instance from DtxManager to Broker so it can be shared git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@703521 13f79535-47bb-0310-9956-ffa450edef68
* QPID-1306Carl C. Trieloff2008-10-091-2/+7
| | | | | | | | | | - from review, clean-up for acquire - test for LVQ acquire - suppress store for LVQ git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@703236 13f79535-47bb-0310-9956-ffa450edef68
* Minor indentation fixesGordon Sim2008-10-091-43/+43
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@703102 13f79535-47bb-0310-9956-ffa450edef68
* QPID-1306Carl C. Trieloff2008-10-081-20/+50
| | | | | | | | | | | | - added lvq support - added lvq tests - added safety test for lvq - updated QueueOptions for lvq - some refactor to queue, to have signel pop loction git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@702958 13f79535-47bb-0310-9956-ffa450edef68
* Rename size() to encodedSize() for encoded types to allow std collection ↵Alan Conway2008-10-071-1/+1
| | | | | | interfaces for types like FieldTable and Array. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@702551 13f79535-47bb-0310-9956-ffa450edef68
* QPID-1306Carl C. Trieloff2008-09-301-11/+3
| | | | | | | | Cleaner consume check, pointed out by gsim. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@700516 13f79535-47bb-0310-9956-ffa450edef68
* QPID-1306Carl C. Trieloff2008-09-301-40/+59
| | | | | | | | | | | | | | | | | This patch includes: - Optimistic Consume - Support for forcing Queue durable on cluster failure - Some cleanup on mgnt functions in Queue to inlines - Tests Still coming - header for client queue options - LVQ support bits. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@700489 13f79535-47bb-0310-9956-ffa450edef68
* QPID-1290 - Patch from William HenryTed Ross2008-09-231-3/+18
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@698275 13f79535-47bb-0310-9956-ffa450edef68
* Refactoring of queue/queue-policy:Gordon Sim2008-09-211-37/+31
| | | | | | | | | | | | - moved some logic out of Queue.cpp into QueuePolicy.cpp - moved QueuedMessage definition into its own header file - added checks for requeue and dequeue - split QueuePolicy logic into different sub classes Added ability to request old messages to be discareded to make room for new ones when configured limit has been reached. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@697603 13f79535-47bb-0310-9956-ffa450edef68
* QPID-1274 - Changed C++ namespace for generated management code. Improved ↵Ted Ross2008-09-151-4/+5
| | | | | | efficiency of generated functions to use const references for non-simple types. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@695511 13f79535-47bb-0310-9956-ffa450edef68
* QPID-1279 Implementations of management methods can now return error strings ↵Ted Ross2008-09-101-2/+1
| | | | | | along with its own error codes git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@693933 13f79535-47bb-0310-9956-ffa450edef68
* QPID-1261: initial fix (this degrades performance for shared queues with ↵Gordon Sim2008-09-091-68/+71
| | | | | | more than one consumer; I'll work on fixing that asap). This also moves the lock refered to in QQPID-1265 which I will update accordingly. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@693518 13f79535-47bb-0310-9956-ffa450edef68
* QPID-1174 Updates to the management frameworkTed Ross2008-09-031-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@691700 13f79535-47bb-0310-9956-ffa450edef68
* Remove 'clever' locking as it actually degrades performance.Gordon Sim2008-08-201-28/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@687361 13f79535-47bb-0310-9956-ffa450edef68
* Patch from Gordon Sim to fix issues with hasOutput implementation.Alan Conway2008-08-071-2/+23
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@683617 13f79535-47bb-0310-9956-ffa450edef68
* - Added OutputTask::hasOutput() test.Alan Conway2008-08-061-1/+5
| | | | | | | - Cluster only sends doOutput events when hasOutput() git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@683416 13f79535-47bb-0310-9956-ffa450edef68