summaryrefslogtreecommitdiff
path: root/qpid/cpp/src/qpid/broker/SemanticState.cpp
Commit message (Collapse)AuthorAgeFilesLines
* QPID-2324: Raise 404 on cancellation if no such subscription exists.Gordon Sim2011-02-251-2/+5
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1074642 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3051: Ensure credit window is moved correctly even if it contains ↵Gordon Sim2011-02-211-2/+5
| | | | | | rejected messages. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1073085 13f79535-47bb-0310-9956-ffa450edef68
* Revert experimental cluster code, too close to 0.8 release.Alan Conway2010-10-271-1/+6
| | | | | | | | | Reverts revisions: r1023966 "Introduce broker::Cluster interface." r1024275 "Fix compile error: outline set/getCluster fucntions on Broker." r1027210 "New cluster: core framework and initial implementation of enqueue logic." git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1028055 13f79535-47bb-0310-9956-ffa450edef68
* Introduce broker::Cluster interface.Alan Conway2010-10-181-6/+1
| | | | | | | | | See cpp/src/qpid/cluster/new-cluster-design.txt and new-cluster-plan.txt. qpid/cpp/src/tests/BrokerClusterCalls.cpp is a unit test that verifies the broker makes the expected calls on broker::Cluster in various situations. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1023966 13f79535-47bb-0310-9956-ffa450edef68
* QPID-2688: ensure that unacked messages are requeued before autodeletion ↵Gordon Sim2010-06-221-9/+32
| | | | | | occurs when session closes git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@956988 13f79535-47bb-0310-9956-ffa450edef68
* QPID-2004: Now that connections are cleaned up on shutdown, some cluster ↵Gordon Sim2010-06-021-2/+0
| | | | | | safety assertions need to be relaxed. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@950735 13f79535-47bb-0310-9956-ffa450edef68
* Use UnauthorizedAccessException for ACL violations rather than ↵Gordon Sim2010-05-061-1/+1
| | | | | | NotAllowedException git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@941636 13f79535-47bb-0310-9956-ffa450edef68
* Code cleanup Ted Ross2010-04-231-1/+1
| | | | | | | | | | - Removed IdAllocator (it's no longer needed) - Cleaned up the calls to ManagementAgent::addObject to handle durable objects - Removed the deferred call to addObject for durable objects - Removed unneeded calls to self._checkClosed() in qmf.console.Agent git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@937516 13f79535-47bb-0310-9956-ffa450edef68
* Fix for QPID-2470 - Broker does not honour flow-to-disk policy on recoveryKim van der Riet2010-04-131-2/+11
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@933711 13f79535-47bb-0310-9956-ffa450edef68
* Merged the changes from the qmf-devel0.7a branch back to the trunk.Ted Ross2010-03-311-1/+1
| | | | | | | | | | | | | | | | | This is a checkpoint along the QMFv2 development path. This update introduces portions of QMFv2 into the code: - The C++ agent (qpid/agent) uses QMFv2 for data and method transfer o The APIs no longer use qpid::framing::* o Consequently, boost is no longer referenced from the API headers. o Agents and Objects are now referenced by strings, not numbers. o Schema transfer still uses the QMFv1 format. - The broker-resident agent can use QMFv1 or QMFv2 based on the command line options. It defaults to QMFv1 for compatibility. - The pure-python QMF console (qmf.console) can concurrently interact with both QMFv1 and QMFv2 agents. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@929716 13f79535-47bb-0310-9956-ffa450edef68
* QPID-2347: Signal deletion of queue to active subscribers via a ↵Gordon Sim2010-01-221-1/+6
| | | | | | resource-deleted exception. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@902055 13f79535-47bb-0310-9956-ffa450edef68
* Cluster-safe assertions.Alan Conway2010-01-201-1/+18
| | | | | | | | | Assert that replicated data structures are modified in a cluster-safe context - in cluster delivery thread or during update. Assertions added to Queue.cpp and SemanticState.cpp. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@901282 13f79535-47bb-0310-9956-ffa450edef68
* Removed dead code: OutputTask::hasOutput and Queue::checkForMessages.Alan Conway2010-01-141-4/+0
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@899356 13f79535-47bb-0310-9956-ffa450edef68
* This further improves the fix made at rev 19819 in Qpid trunk for QPID-2175Rajith Muditha Attapattu2010-01-111-3/+4
| | | | | | | The check is now done without creating any new strings to avoid extra allocations. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@898021 13f79535-47bb-0310-9956-ffa450edef68
* This is a fix for QPID-2290 and the proper fix for QPID-2175Rajith Muditha Attapattu2009-12-181-3/+4
| | | | | | | If the client doesn't add a domain to the userID supplied in the message, the broker will add the default realm before performing the userID check. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@892123 13f79535-47bb-0310-9956-ffa450edef68
* QPID-2089: Dequeue on acquire for accept mode NONEGordon Sim2009-12-151-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@890721 13f79535-47bb-0310-9956-ffa450edef68
* expose less internals and some term clean up thanks to gsim's commentsCarl C. Trieloff2009-11-161-6/+5
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@880755 13f79535-47bb-0310-9956-ffa450edef68
* Add management subscription objectCarl C. Trieloff2009-11-131-3/+50
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@835962 13f79535-47bb-0310-9956-ffa450edef68
* Fixed: cluster udpate did not presever deliver-properties.exchange on messages.Alan Conway2009-10-051-10/+20
| | | | | | | | Also minor improvements: - Improved debug logging for consumers. - Cluster tests scripts work with latest corosync: don't check/set ais group. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@821830 13f79535-47bb-0310-9956-ffa450edef68
* QMF Engine updates:Ted Ross2009-09-291-1/+1
| | | | | | | | | - Connected console handler callbacks - Added string representations for a number of object classes - Added a feature that completes query requests sent to disconnected agents git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@819819 13f79535-47bb-0310-9956-ffa450edef68
* Backed out a broker change that was unintentionally carried along in another ↵Ted Ross2009-09-251-1/+1
| | | | | | commit. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@818996 13f79535-47bb-0310-9956-ffa450edef68
* QMF updates:Ted Ross2009-09-251-1/+1
| | | | | | | | | | | | - Refactored into two namespaces: 1) 'qmf' for the public QMF api (c++) 2) 'qmf::engine' for the public engine API (used for language bindings) - Added object and first_object calls to Console (in Ruby) - Made objects call compatible with the kwarg arguments used in the older API - Added to_s functions to classes that needed them git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@818994 13f79535-47bb-0310-9956-ffa450edef68
* Joint checkin from gsim, kpvdr, cctrieloff. See QPID-2102: Exceeding reject ↵Kim van der Riet2009-09-221-0/+3
| | | | | | queue policy under a transaction causes broker crash git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@817742 13f79535-47bb-0310-9956-ffa450edef68
* Reversed checkin of r.813825 until its problems can be resolvedKim van der Riet2009-09-141-27/+27
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@814692 13f79535-47bb-0310-9956-ffa450edef68
* Joint checkin with cctrieloff. Refactor of exchange routing so that ↵Kim van der Riet2009-09-111-27/+27
| | | | | | 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@813825 13f79535-47bb-0310-9956-ffa450edef68
* Optimized handling of accepts and completions.Alan Conway2009-08-121-15/+39
| | | | | | | | | | SemanticState::accept/completed now make a single pass through the SequenceSet of commands and the unacked DeliveryRecord list in parallel, rather than doing a pass through unacked for every range in the SequenceSet. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@803655 13f79535-47bb-0310-9956-ffa450edef68
* Remove some unnecessary promotions of char* to std::string.Alan Conway2009-07-211-1/+3
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@796333 13f79535-47bb-0310-9956-ffa450edef68
* Add directory to #includeAlan Conway2009-07-141-11/+11
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@793909 13f79535-47bb-0310-9956-ffa450edef68
* Performance improvements in AggregateOutput and SemanticState.Alan Conway2009-06-161-28/+30
| | | | | | | | | | | | | | Replaced AggregateOutput hierarchy with a flat list per connection holding only the OutputTasks that are potentially active. Tasks are droped from the list as soon as they return false, and added back when they may have output. Inlined frequently-used SequenceNumber functions. Replace std::list in QueueListeners with std::vector. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@785408 13f79535-47bb-0310-9956-ffa450edef68
* ConsumerImpl optimization - use atomic value for queueHasMessages.Alan Conway2009-05-251-17/+8
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@778452 13f79535-47bb-0310-9956-ffa450edef68
* ConsumerImpl optimization - only dispatch on queue if we were notified of ↵Alan Conway2009-05-251-2/+18
| | | | | | messages. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@778443 13f79535-47bb-0310-9956-ffa450edef68
* DeliveryRecord optimizations.Alan Conway2009-05-061-10/+10
| | | | | | | | Replace linear search with binary search. Collapse multi-pass mark-then-erase to a signle pass. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@772384 13f79535-47bb-0310-9956-ffa450edef68
* Remove useless qpid/shared_ptr.h wrapper.Alan Conway2009-05-061-2/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@772294 13f79535-47bb-0310-9956-ffa450edef68
* Undo buggy commit 770802.Alan Conway2009-05-041-4/+4
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@771354 13f79535-47bb-0310-9956-ffa450edef68
* Replace std::list with std::deque for SemanticState::unacked - more ↵Alan Conway2009-05-011-4/+4
| | | | | | efficient, improves latency. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@770802 13f79535-47bb-0310-9956-ffa450edef68
* cluster: fix delivery-property.exchange-name set on updated messages.Alan Conway2009-03-051-12/+4
| | | | | | | | | Logging improvements, useful for debugging: - qpid/SessionState.cpp: show frame bodies with command IDs. - assign cluster-wide id number to each Event. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@750456 13f79535-47bb-0310-9956-ffa450edef68
* Fix for bug in credit reallocation, along with test from rafaels@redhat.com ↵Gordon Sim2009-02-251-2/+4
| | | | | | that reproduces it. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@747833 13f79535-47bb-0310-9956-ffa450edef68
* QPID-1660: If selected consumer can't take a message, ensure others are ↵Gordon Sim2009-02-121-2/+12
| | | | | | notified of message availability. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@743694 13f79535-47bb-0310-9956-ffa450edef68
* Cluster support for message time-to-live.Alan Conway2009-02-091-6/+5
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@742774 13f79535-47bb-0310-9956-ffa450edef68
* QPID-1567: added 'exactly-once' guarantee to asynchronous replication of ↵Gordon Sim2009-01-201-4/+8
| | | | | | | | | | | | queue state * altered replication protocol to detect and eliminate duplicates * added support for acknowledged transfer over inter-broker bridges * added option to qpid-route to control this git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@736018 13f79535-47bb-0310-9956-ffa450edef68
* * QPID-1488: test that policy pointer is setGordon Sim2008-11-271-2/+3
| | | | | | | | | * 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@721166 13f79535-47bb-0310-9956-ffa450edef68
* Cluster: replicate transaction state to newcomers.Alan Conway2008-11-051-1/+1
| | | | | | | | | | | | | constants.rb: generate type code constants for AMQP types. Useful with Array. framing/Array: - added some std:::vector like functions & typedefs. - use TypeCode enums, human readable ostream << operator. rubygen - fixed error in generation of exceptions for bad codes. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk@711587 13f79535-47bb-0310-9956-ffa450edef68
* Adjust ACL-related enums to avoid Windows macro clashes; fixes QPID-1368Stephen D. Huston2008-10-301-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk@709283 13f79535-47bb-0310-9956-ffa450edef68
* Revised transactional options to perftest as they could not be used on older ↵Gordon Sim2008-10-241-14/+2
| | | | | | | | | | boost versions due to ambiguity. Refactored TxAccept to avoid excessive testing and searching for delivery records. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk@707615 13f79535-47bb-0310-9956-ffa450edef68
* Minor changes to provide access for cluster to replicate delivery records.Alan Conway2008-10-231-1/+1
| | | | | | | | | - 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@707406 13f79535-47bb-0310-9956-ffa450edef68
* Refactored DeliveryRecord and delivery path to remove some redundant code.Gordon Sim2008-10-211-18/+12
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk@706811 13f79535-47bb-0310-9956-ffa450edef68
* cluster: DumpClient updates consumer notifyEnabled and blocked.Alan Conway2008-10-201-0/+5
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk@706293 13f79535-47bb-0310-9956-ffa450edef68
* Added missing message.subscribe arguments to SemanticState::ConsumerImpl for ↵Alan Conway2008-10-161-10/+20
| | | | | | replication (and future use.) git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk@705359 13f79535-47bb-0310-9956-ffa450edef68
* c++ broker: Don't hold on to delivery records for accepted/released messages ↵Gordon Sim2008-10-151-15/+1
| | | | | | | | | | unless required due to being in windowing mode. python client: Modified start() on incoming queue to setthe flow mode as credit (not windowing) git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk@704838 13f79535-47bb-0310-9956-ffa450edef68
* Handle ttl in messages transfers received by the broker 7 added test for itGordon Sim2008-10-101-4/+11
| | | | | | | | Moved Timer instance from DtxManager to Broker so it can be shared git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk@703521 13f79535-47bb-0310-9956-ffa450edef68