summaryrefslogtreecommitdiff
path: root/cpp/src/qpid/broker/Message.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Fix race condition in enqueue/dequeue callbacks.Alan Conway2009-10-091-14/+22
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@823669 13f79535-47bb-0310-9956-ffa450edef68
* r817742 (the fix for QPID-2102), introduced a deadlock and a race condition ↵Gordon Sim2009-09-281-25/+28
| | | | | | | | | into flow-to-disk behaviour, fixed by this checkin. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@819524 13f79535-47bb-0310-9956-ffa450edef68
* Minor update to allow store access to the message isPersistent() method. ↵Kim van der Riet2009-09-221-1/+1
| | | | | | This is required for correctly setting the transient flag. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@817748 13f79535-47bb-0310-9956-ffa450edef68
* Joint checkin from gsim, kpvdr, cctrieloff. See QPID-2102: Exceeding reject ↵Kim van der Riet2009-09-221-3/+16
| | | | | | queue policy under a transaction causes broker crash git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@817742 13f79535-47bb-0310-9956-ffa450edef68
* Reversed checkin of r.813825 until its problems can be resolvedKim van der Riet2009-09-141-26/+26
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@814692 13f79535-47bb-0310-9956-ffa450edef68
* Joint checkin with cctrieloff. Refactor of exchange routing so that ↵Kim van der Riet2009-09-111-26/+26
| | | | | | multi-queue policy differences may be resolved and allow for correct multi-queue flow-to-disk behavior. Different queues may have differing policies and persistence properties - these were previously being neglected. New c++ test added. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@813825 13f79535-47bb-0310-9956-ffa450edef68
* Add directory to #includeAlan Conway2009-07-141-3/+3
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@793909 13f79535-47bb-0310-9956-ffa450edef68
* QPID-1974: Fixes (and tests) for updating lvq state to new cluster members.Gordon Sim2009-07-081-0/+15
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@792103 13f79535-47bb-0310-9956-ffa450edef68
* Corrected the case where message on more than one queue does not persist ↵Carl C. Trieloff2009-07-071-1/+9
| | | | | | when last node standing is enabled git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@791672 13f79535-47bb-0310-9956-ffa450edef68
* QPID-1901: only try to load content if there is someGordon Sim2009-06-111-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@783721 13f79535-47bb-0310-9956-ffa450edef68
* If expiration is already set, don't alter it.Gordon Sim2009-06-081-2/+5
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@782712 13f79535-47bb-0310-9956-ffa450edef68
* Fix lifecycle issue in ExpiryPolicy - remove deleted messages from unexpired ↵Alan Conway2009-03-301-1/+3
| | | | | | map. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@760087 13f79535-47bb-0310-9956-ffa450edef68
* QPID-1744: fix as applied to branch in r755315.Gordon Sim2009-03-171-0/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@755316 13f79535-47bb-0310-9956-ffa450edef68
* QPID-1721: Fixes for replication between clusters when new members are addedGordon Sim2009-03-091-0/+5
| | | | | | | | | | * suppress event generation during node catch up * ensure sequence counters used for duplicate detection are synchronised in both primary and dr clusters when new members join * connect queue with the event manager within queue registry rather than adapter as the latter path is not used for catchup git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@751719 13f79535-47bb-0310-9956-ffa450edef68
* Queue::checkLvqReplace() needs to update the lvq map if it makes a ↵Gordon Sim2009-02-121-0/+2
| | | | | | | | | | 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
* Cluster support for message time-to-live.Alan Conway2009-02-091-8/+14
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@742774 13f79535-47bb-0310-9956-ffa450edef68
* Correction for: start a broker in cluster, send messages that are flow to ↵Carl C. Trieloff2009-01-301-17/+26
| | | | | | disk, then join a broker to the cluster. Then consume from the new node. Cotent released messages where loosing content. This patch corrects that. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@739378 13f79535-47bb-0310-9956-ffa450edef68
* Removed BodyHolder: minor performance improvement, opens the way for more ↵Alan Conway2009-01-221-3/+2
| | | | | | efficient memory management. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@736783 13f79535-47bb-0310-9956-ffa450edef68
* QPID-1495: Patch from Danushka Menikkumbura to fix compilation problem.Gordon Sim2008-12-011-2/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@722037 13f79535-47bb-0310-9956-ffa450edef68
* Ensure that callbacks are removed before IncompleteMessageList instance is ↵Gordon Sim2008-11-191-0/+2
| | | | | | | | | | 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
* broker/Message, IncompleteMessageList: drop waitFor(De|En)Complete, replace ↵Alan Conway2008-11-071-2/+6
| | | | | | with callbacks. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@712258 13f79535-47bb-0310-9956-ffa450edef68
* Add Message callbacks for async completion.Alan Conway2008-11-061-4/+23
| | | | | | | | Add unit test for async completion. Add sync parameter to generated session functions, defaults as before but allows greater control. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@711998 13f79535-47bb-0310-9956-ffa450edef68
* Adjust namespace references to work with MSVCStephen D. Huston2008-10-301-4/+8
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@709281 13f79535-47bb-0310-9956-ffa450edef68
* Some fixes to the LVQ (primarily a patch from cctrieloff@redhat.com)Gordon Sim2008-10-231-0/+14
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@707446 13f79535-47bb-0310-9956-ffa450edef68
* Field Table API: changed the getInt() & getString() operationsAndrew Stitcher2008-10-131-2/+2
| | | | | | | | 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
* Optimisation for testing expiration and disabling of setting timestamp until ↵Gordon Sim2008-10-131-3/+6
| | | | | | performance impact is evaluated git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@704211 13f79535-47bb-0310-9956-ffa450edef68
* Handle ttl in messages transfers received by the broker 7 added test for itGordon Sim2008-10-101-1/+25
| | | | | | | | 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-09-301-2/+8
| | | | | | | | | | | | | | | | | 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
* Change to lazy-loading to avoid relying on the content-size to be set by client.Gordon Sim2008-06-041-14/+18
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@663243 13f79535-47bb-0310-9956-ffa450edef68
* Boost's string split function causes problems on older versions of the ↵Gordon Sim2008-05-011-4/+2
| | | | | | library. Replaced with homegrown equivalent. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@652689 13f79535-47bb-0310-9956-ffa450edef68
* QPID-977: shutdown mgmt client cleanly in federation tests (patch from ↵Gordon Sim2008-04-291-0/+46
| | | | | | | | | tross@redhat.com) QPID-981: added custom options to queue declare to tag each message as it goes through a bridge queue and allow loop prevention through specifying exclusions git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@652075 13f79535-47bb-0310-9956-ffa450edef68
* Generate c++ code from final 0-10 specGordon Sim2008-04-241-5/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@651423 13f79535-47bb-0310-9956-ffa450edef68
* QPID-920: converted c++ client to use final 0-10 protocolGordon Sim2008-04-201-3/+3
| | | | | | | | | | * connection handler converted to using invoker & proxy and updated to final method defs * SessionCore & ExecutionHandler replace by SessionImpl * simplified handling of completion & results, removed handling of responses git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@649915 13f79535-47bb-0310-9956-ffa450edef68
* Send accept in response to message publications if required.Gordon Sim2008-03-271-0/+5
| | | | | | | | Hold up completion (and accept) until message from transfer is fully enqueued. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@641929 13f79535-47bb-0310-9956-ffa450edef68
* - Refactored RefCounted class to avoid virtual inheritanceAndrew Stitcher2008-03-241-0/+1
| | | | | | | | | | - Removed extraneous includes and definitions from RefCounted.h - Fixed all the places that were relying on RefCounted.h to be including the intrusive_ptr header file and were assuming that something had imported intrusive_ptr into the qpid namespace git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@640479 13f79535-47bb-0310-9956-ffa450edef68
* Further updates to support final 0-10 specGordon Sim2008-03-041-0/+3
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@633627 13f79535-47bb-0310-9956-ffa450edef68
* Some fixes for 'flow to disk' (i.e. dropping message content from memory, ↵Gordon Sim2007-12-141-1/+14
| | | | | | and loading it from disk for delivery) git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@604215 13f79535-47bb-0310-9956-ffa450edef68
* Only release content for durable queues.Gordon Sim2007-12-141-9/+11
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@604169 13f79535-47bb-0310-9956-ffa450edef68
* Some fixes relating to message 'staging'.Gordon Sim2007-12-131-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@603973 13f79535-47bb-0310-9956-ffa450edef68
* Switched all regular PersistentMessage* and PersistentMessage& to ↵Kim van der Riet2007-11-261-2/+4
| | | | | | intrusive_ptr<PersistentMessage>, so as to hook into the refcount for a message while it is in the store. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@598440 13f79535-47bb-0310-9956-ffa450edef68
* Added framing::BodyHolder:Alan Conway2007-11-221-2/+2
| | | | | | | | | | | | | | - Uniform holder for all body types, replaces MethodHolder. - Uses in_place constructors to avoid avoid body copy. framing::AMQFrame: - Holds body in heap-allocated intrusive_ptr<BodyHolder> - Uses in_place constructors to avoid avoid body copy. Removed/downgraded to TODO many redundant FIXME comments. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@597513 13f79535-47bb-0310-9956-ffa450edef68
* Stopped frameset from assembling messages piecewise.Alan Conway2007-11-131-10/+10
| | | | | | | Roughly halves allocations on the broker, not much effect on client. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@594647 13f79535-47bb-0310-9956-ffa450edef68
* Patch QPID-680 from trossCarl C. Trieloff2007-11-131-0/+7
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@594364 13f79535-47bb-0310-9956-ffa450edef68
* Get rid of BasicHeaderProperties, dead code from 0-8 protocol.Alan Conway2007-11-091-4/+3
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@593692 13f79535-47bb-0310-9956-ffa450edef68
* - enable the ability to lazy load from async storeCarl C. Trieloff2007-11-081-2/+2
| | | | | | | | | | - the ci has a raw ptr for Queue in QueuedMessage, if any has any concerns, ping me and I will convert it to an auto_ptr Carl. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@593251 13f79535-47bb-0310-9956-ffa450edef68
* Make standard exchanges durableGordon Sim2007-11-081-8/+16
| | | | | | | | Ensure flags are set correctly for recovered messages with no content git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@593159 13f79535-47bb-0310-9956-ffa450edef68
* - clean up between base & subclassesCarl C. Trieloff2007-11-061-2/+5
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@592530 13f79535-47bb-0310-9956-ffa450edef68
* Enabled packed struct encoding in python, cpp, and java. Also fixed ↵Rafael H. Schloming2007-10-141-1/+1
| | | | | | computation of required byte credit in Message.cpp. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@584474 13f79535-47bb-0310-9956-ffa450edef68
* Correction to interpretation of flags (B/E refer to the first/last segment ↵Gordon Sim2007-10-021-1/+1
| | | | | | in the frameset and should be set on all frames in such segments). git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@581214 13f79535-47bb-0310-9956-ffa450edef68
* mark Message::sendContent() as constGordon Sim2007-10-021-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@581209 13f79535-47bb-0310-9956-ffa450edef68