summaryrefslogtreecommitdiff
path: root/cpp/src/qpid/broker/SemanticState.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Changes to threading: queues serialiser removed, io threads used to drive ↵Gordon Sim2007-11-291-89/+72
| | | | | | | | | | dispatch to consumers Fix to PersistableMessage: use correct lock when accessing synclist, don't hold enqueue lock when notifying queues git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@599395 13f79535-47bb-0310-9956-ffa450edef68
* Added qpid::InlineVector - std::vector with inline storage to avoidAlan Conway2007-11-161-1/+1
| | | | | | | | | | | | heap allocation for small vectors. Made SequenceNumberSet : public InlineVector<SequenceNumber, 2> In 100k perftest reduces heap allocation in client by 40%, broker 9%. . git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@595808 13f79535-47bb-0310-9956-ffa450edef68
* Replaced shared_ptr with intrusive_ptr for qpid::Broker::Message.Alan Conway2007-11-141-5/+5
| | | | | | | Gives 9% reduction in broker heap use (perftest --count 100000.) git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@595056 13f79535-47bb-0310-9956-ffa450edef68
* - removed debugCarl C. Trieloff2007-11-121-1/+0
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@594271 13f79535-47bb-0310-9956-ffa450edef68
* - fix for dequeue window mode, no ack. (needs to record and dequeue)Carl C. Trieloff2007-11-121-2/+3
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@594155 13f79535-47bb-0310-9956-ffa450edef68
* - enable the ability to lazy load from async storeCarl C. Trieloff2007-11-081-3/+3
| | | | | | | | | | - 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
* Exception handling for dispatch functorGordon Sim2007-11-081-1/+1
| | | | | | | | Don't dequeue no-ack messages unless they have been acquired git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@593212 13f79535-47bb-0310-9956-ffa450edef68
* Suspension of one xid on a channel should allow for work on other xids to be ↵Gordon Sim2007-11-051-0/+13
| | | | | | done prior to resuming the initial xid. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@591986 13f79535-47bb-0310-9956-ffa450edef68
* Check that session is attached before accepting delivery from queue (note ↵Gordon Sim2007-10-291-0/+4
| | | | | | further synching is required between the actually delivery of frames and the change from attached to detached). git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@589778 13f79535-47bb-0310-9956-ffa450edef68
* Session resume support in client & broker: Client can resume a sessionAlan Conway2007-10-261-12/+15
| | | | | | | | | | | | | | | | | | | | | | | | | after voluntary suspend() or network failure. Frames lost in network failure are automatically re-transmitted for transparent re-connection. client::Session improvements: - Locking to avoid races between network & user threads. - Replaced client::StateManager with sys::StateMonitor - avoid heap allocation. qpid::Exception clean up: - use QPID_MSG consistently to format exception messages. - throw typed exceptions (in reply_exceptions.h) for AMQP exceptions. - re-throw correct typed exception on client for exceptions from broker. - Removed QpidError.h rubygen/templates/constants.rb: - constants.h: Added FOO_CLASS_ID and FOO_BAR_METHOD_ID constants. - reply_constants.h: Added throwReplyException(code, text) log::Logger: - Fixed shutdown race in Statement::~Initializer() git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@588761 13f79535-47bb-0310-9956-ffa450edef68
* Hack for no-local when used with jms topicsGordon Sim2007-10-231-0/+8
| | | | | | | | Fix for releasing of exclusive ownership of queues second time around git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@587525 13f79535-47bb-0310-9956-ffa450edef68
* Fix for QPID-644Gordon Sim2007-10-181-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@585899 13f79535-47bb-0310-9956-ffa450edef68
* Use shared pointers for consumers (held by queues and sessions) to prevent ↵Gordon Sim2007-10-171-44/+49
| | | | | | | | | | having to hold lock across deliver() while avoiding invocation on stale pointers. Ensure auto-deleted queues are properly cleaned up (i.e. are unbound from exchanges) to avoid leaking memory as messages are accumulated in inaccessible queues. (some cleanup to follow on this) git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@585417 13f79535-47bb-0310-9956-ffa450edef68
* * Revised allocation algorithm to ensure all consumers are given the ↵Gordon Sim2007-10-161-5/+10
| | | | | | | | | | | opportunity to consume a message * If already have infinit credit, don't try to add to it * If get disconnected while processing close, just finish off the close and don't signal the disconnection git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@585085 13f79535-47bb-0310-9956-ffa450edef68
* Locking for updates to subscriber credit. Revised log statements to reduce ↵Gordon Sim2007-10-151-8/+18
| | | | | | noise. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@584841 13f79535-47bb-0310-9956-ffa450edef68
* Remove default queue concept which is no longer applicable in 0-10.Gordon Sim2007-10-151-6/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@584719 13f79535-47bb-0310-9956-ffa450edef68
* Further fixes to locking between queue and semantic state to avoid deadlocking.Gordon Sim2007-10-121-36/+51
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@584172 13f79535-47bb-0310-9956-ffa450edef68
* Exclusive no longer implies auto-delete on queue.declare.Gordon Sim2007-10-111-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@583821 13f79535-47bb-0310-9956-ffa450edef68
* Fixed compile error.Alan Conway2007-10-091-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@583298 13f79535-47bb-0310-9956-ffa450edef68
* Added some debug logs to indicate credit levels and verify if a message is ↵Rajith Muditha Attapattu2007-10-091-0/+5
| | | | | | | | | enqueued. I found it useful during testing git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@583253 13f79535-47bb-0310-9956-ffa450edef68
* Don't recover messages for cancelled subscriptions.Gordon Sim2007-10-051-1/+7
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@582353 13f79535-47bb-0310-9956-ffa450edef68
* Fix (and refactor) processing of ranges in message handler.Gordon Sim2007-10-041-1/+5
| | | | | | | | Alter release() to push released messages onto head in reverse order (todo: make this atomic instead) git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@581869 13f79535-47bb-0310-9956-ffa450edef68
* Fixed recovery; unacked message records are now updated to hold the new ↵Gordon Sim2007-10-021-13/+9
| | | | | | | | | | command id when messages are resent. Added unit and python test as previous bug was not being picked up by the existing tests. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@581175 13f79535-47bb-0310-9956-ffa450edef68
* Renamed the following files for consistency:Alan Conway2007-09-251-1/+1
| | | | | | | | | | | | | | | | | | broker/BrokerExchange.cpp -> Exchange.cpp broker/BrokerExchange.h -> Exchange.h broker/BrokerQueue.cpp -> Queue.cpp broker/BrokerQueue.h -> Queue.h client/ClientChannel.cpp -> Channel.cpp client/ClientChannel.h -> Channel.h client/ClientConnection.cpp -> Connection.cpp client/ClientExchange.cpp -> Exchange.cpp client/ClientExchange.h -> Exchange.h client/ClientMessage.h -> Message.h client/ClientQueue.cpp -> Queue.cpp client/ClientQueue.h -> Queue.h git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@579340 13f79535-47bb-0310-9956-ffa450edef68
* Split broker::Session into:Alan Conway2007-09-211-0/+591
broker::SessionState: session info (uuid etc.) + handler chains. broker::SemanticState: session state for the SemanticHandler. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@578219 13f79535-47bb-0310-9956-ffa450edef68