summaryrefslogtreecommitdiff
path: root/cpp/src/qpid/broker/SemanticState.cpp
Commit message (Collapse)AuthorAgeFilesLines
* synchronized with trunk except for ruby dirRafael H. Schloming2009-12-261-156/+280
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/branches/qpid.rnr@893970 13f79535-47bb-0310-9956-ffa450edef68
* Patch from Gordon Sim to fix issues with hasOutput implementation.Alan Conway2008-08-071-2/+1
| | | | 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-0/+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
* - Add support for ACL on message transferCarl C. Trieloff2008-08-011-1/+9
| | | | | | | | - Performance optimizations for ACL on message transfer git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@681690 13f79535-47bb-0310-9956-ffa450edef68
* Only reduce count and size maintained for queue plicy when messages are ↵Gordon Sim2008-07-251-1/+1
| | | | | | actually dequeued (i.e. acked). git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@679805 13f79535-47bb-0310-9956-ffa450edef68
* Enable dequeue for prototype clusterAlan Conway2008-07-171-3/+7
| | | | | | | | | - qpid/broker/SemanticState.cpp: moved doOutput into write idle callback. - qpid/broker/Connection.cpp: make doOutput an intercept point. - qpid/cluster/*: intercept doOutput to serialize output in cluster thread. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@677486 13f79535-47bb-0310-9956-ffa450edef68
* Removed dead code.Alan Conway2008-07-091-13/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@675155 13f79535-47bb-0310-9956-ffa450edef68
* Bring cluster code up to date.Alan Conway2008-06-181-1/+0
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@669236 13f79535-47bb-0310-9956-ffa450edef68
* Moved from AccumulatedAck to SequenceSet in managing transactional acceptsGordon Sim2008-06-091-60/+3
| | | | | | | | | Added transactional option to perftest Removed clientid from ConnectionSettings as it appears not to be used git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@665890 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-0/+3
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@663243 13f79535-47bb-0310-9956-ffa450edef68
* Better exception handling for commit.Gordon Sim2008-06-031-0/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@662774 13f79535-47bb-0310-9956-ffa450edef68
* QPID-1095: another error code correctionGordon Sim2008-05-281-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@660952 13f79535-47bb-0310-9956-ffa450edef68
* Fixes to binding of member functions as raised on qpid list by Manuel Teira.Gordon Sim2008-05-281-11/+10
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@660886 13f79535-47bb-0310-9956-ffa450edef68
* QPID-1042: ensure delievery record is kept where accept_mode=not-required, ↵Gordon Sim2008-05-091-1/+1
| | | | | | acquire_mode=not-acquired and flow_mode=credit git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@654737 13f79535-47bb-0310-9956-ffa450edef68
* Generate c++ code from final 0-10 specGordon Sim2008-04-241-9/+4
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@651423 13f79535-47bb-0310-9956-ffa450edef68
* QPID-944: do no-local checking where requested when there is an exclusive ↵Gordon Sim2008-04-221-0/+5
| | | | | | subscription active git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@650450 13f79535-47bb-0310-9956-ffa450edef68
* Better workaround for boost::ptr_map incompatibility between boost 1.33 and ↵Alan Conway2008-04-211-6/+6
| | | | | | 1.34, based on public properties of ptr::map types rather than version numbers. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@650221 13f79535-47bb-0310-9956-ffa450edef68
* QPID-920: converted c++ client to use final 0-10 protocolGordon Sim2008-04-201-4/+5
| | | | | | | | | | * 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
* Handle the set-redelivered flag on the final version of the message.release ↵Gordon Sim2008-04-091-2/+2
| | | | | | command. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@646452 13f79535-47bb-0310-9956-ffa450edef68
* Update to dtx inline with latest spec:Gordon Sim2008-03-261-5/+18
| | | | | | | | | | | | * Updated dtx handling in c++ broker to take account of separation of completion and acceptance. * Added final dtx method defs to extra xml fragment and implemented appropriate handlers in c++ broker. * Converted dtx python tests (recover test still requires some work on decoding arrays). * Allow creation of structs without type codes through a python session method. * Fixed exception handling in python client for commands with results. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@641464 13f79535-47bb-0310-9956-ffa450edef68
* Fix compile errors/warnings with gcc 4.3Alan Conway2008-03-251-1/+2
| | | | | | | | | | | | | - added missing #includes that were implicitly included via old headers. - add namespace-qualifiers to fix "changes meaning of name" warnings. - ./qpid/ptr_map.h:51: fixed "qualified return value" warning. - use const char* for "conversion from string constant to ‘char*’" warnings Applied patch from https://issues.apache.org/jira/browse/QPID-869 remove depenency on boost/date_time, causes warnings with gcc 4.3. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@640806 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
* Altered management of delivery records to support separateion of completion ↵Gordon Sim2008-03-071-10/+14
| | | | | | | | | | (which drives flow control) and acceptance. Converted flow control python tests. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@634661 13f79535-47bb-0310-9956-ffa450edef68
* Fixes to c++ broker:Gordon Sim2008-03-061-3/+3
| | | | | | | | | | | | | - use final version of delivery properties where appropriate - start sequence numbering of outgoing messages at 0 - explicit accept-mode is now 0 (no more confirm-mode) - add default initialisers for numeric fields in methods Converted some more python tests to use final 0-10 client. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@634368 13f79535-47bb-0310-9956-ffa450edef68
* Fix message delivery for 0-10 final codepathGordon Sim2008-03-061-2/+8
| | | | | | | | Convert two more python tests to use 0-10 client git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@634229 13f79535-47bb-0310-9956-ffa450edef68
* A further step to final 0-10 spec.Gordon Sim2008-03-031-4/+33
| | | | | | | | | The extra.xml fragment adds class defs for connection in session that are in line with latest spec but use old schema. The preview codepath (99-0) remains unaltered. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@633108 13f79535-47bb-0310-9956-ffa450edef68
* Use sessions reference to broker rather than connections in semantic state ↵Gordon Sim2008-02-261-3/+3
| | | | | | as the sessions ref is valid even when not attached. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@631128 13f79535-47bb-0310-9956-ffa450edef68
* Some refactoring of the 0-10 codepath (being migrated to final spec) that ↵Gordon Sim2008-02-251-18/+13
| | | | | | primarily colocates the current session and execution layers to facilitate implementing the new session layer that will now encompass this behaviour. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@630934 13f79535-47bb-0310-9956-ffa450edef68
* Set the exchange field in delivery properties on the broker.Gordon Sim2008-01-171-0/+1
| | | | | | | | (required an adjustment to the size of messages in the bytes based credit test) git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@612805 13f79535-47bb-0310-9956-ffa450edef68
* Further use of get_pointer function to mask differences between boost versions.Gordon Sim2007-12-071-3/+3
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@602103 13f79535-47bb-0310-9956-ffa450edef68
* Changed to use the get_pointer function for compatability with boost 1.33 ↵Gordon Sim2007-12-071-2/+4
| | | | | | and 1.34 git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@602063 13f79535-47bb-0310-9956-ffa450edef68
* 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