summaryrefslogtreecommitdiff
path: root/cpp/src/qpid/broker/DtxManager.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Fix build warnings/errors on WindowsStephen D. Huston2009-07-311-1/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@799720 13f79535-47bb-0310-9956-ffa450edef68
* Change all broker users of broker::Timer to use sys::TimerAndrew Stitcher2009-07-301-3/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@799273 13f79535-47bb-0310-9956-ffa450edef68
* Add directory to #includeAlan Conway2009-07-141-2/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@793909 13f79535-47bb-0310-9956-ffa450edef68
* Reverted checkins 793119, 793120, 793121, 793122 because of problems with ↵Kim van der Riet2009-07-131-2/+3
| | | | | | heartbeats and the store tests. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@793602 13f79535-47bb-0310-9956-ffa450edef68
* Change all broker users of broker::Timer to use sys::TimerAndrew Stitcher2009-07-101-3/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@793121 13f79535-47bb-0310-9956-ffa450edef68
* Start to fix Timer to improve encapsulation and then fixAndrew Stitcher2009-01-131-1/+1
| | | | | | | | its inbuilt race conditions (mostly due to the awkward interface of Timer and TimerTask) git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@734213 13f79535-47bb-0310-9956-ffa450edef68
* Add Message callbacks for async completion.Alan Conway2008-11-061-1/+0
| | | | | | | | 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
* Resolved unused argument warnings from MSVCStephen D. Huston2008-10-301-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@709282 13f79535-47bb-0310-9956-ffa450edef68
* Handle ttl in messages transfers received by the broker 7 added test for itGordon Sim2008-10-101-1/+1
| | | | | | | | 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-1095: fixes to dtx error codes for latest spec changes.Gordon Sim2008-05-281-3/+3
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@660924 13f79535-47bb-0310-9956-ffa450edef68
* Better workaround for boost::ptr_map incompatibility between boost 1.33 and ↵Alan Conway2008-04-211-4/+4
| | | | | | 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
* Update to dtx inline with latest spec:Gordon Sim2008-03-261-0/+3
| | | | | | | | | | | | * 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
* - 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
* Apply patch from QPID-732 by Ted Ross.Alan Conway2008-01-141-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The attached patch provides support for plugin modules in the C++ broker. - Plugins are supported (--load <lib>, --load-dir <dir> options provided) - Command options may be extended by plugins. - A workaround was added to make config-file parsing tolerant of unregistered options. - Store-specific options were removed so they can be supplied by a plugin - A pre-log facility was introduced so log messages can be generated prior to the initialization of the logging module. File-by-file details: M cpp/src/qpidd.cpp Added support for loadable plugin modules. This involves a two-phased handling of command line/config options. Phase-1 determines which modules to load and phase-2 is based on all of the command-line options supplied by qpidd and the loaded plugins. M cpp/src/Makefile.am Added dependency for boost_filesystem library. M cpp/src/qpid/Plugin.h Added 'earlyInitialize' method. Plugins are now initialized at two points: earlyInitialize is called prior to broker initialization and initialize is called at the end of broker init. This allows modules like the store to be hooked in early and other modules to be able to assume that the broker target is fully functional. M cpp/src/qpid/cluster/ClusterPlugin.cpp Added stub for the new pure-virtual earlyInitialize method. M cpp/src/qpid/Options.h M cpp/src/qpid/Options.cpp Added 'allowUnknown' option in the parse method. This is needed in phase-1 command processing when there are options for not-yet-loaded plugin modules. Because the stable version of boost does not permit 'allowUnknown' for config files, a workaround has been implemented in this module to pre-filter the config file text removing lines that represent unknown options. M cpp/src/qpid/broker/Broker.h M cpp/src/qpid/broker/Broker.cpp Removed all store-specific command options. Updated logic to allow the store to be a plugin module. M cpp/src/qpid/broker/DtxManager.h M cpp/src/qpid/broker/DtxManager.cpp M cpp/src/qpid/broker/QueueRegistry.h M cpp/src/qpid/broker/QueueRegistry.cpp Changed API to these classes such that the store is no longer supplied in the constructor but is supplied later, before any operations are called for. M cpp/src/qpid/broker/MessageStoreModule.h M cpp/src/qpid/broker/MessageStoreModule.cpp This module is still needed to provide "exception transfer" service. It was changed to not load the store module but rather use the already-loaded plugin store. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@611823 13f79535-47bb-0310-9956-ffa450edef68
* Removed redundant TimerA, use intrusive_ptr for Timer.Alan Conway2007-12-061-4/+4
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@601803 13f79535-47bb-0310-9956-ffa450edef68
* Fixed to build with boost 1.34 as well as boost 1.33Alan Conway2007-11-281-7/+10
| | | | | | | | - boost::ptr_map API changed. - Boost.Test unit test framework changes. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@599067 13f79535-47bb-0310-9956-ffa450edef68
* Added framing::BodyHolder:Alan Conway2007-11-221-3/+1
| | | | | | | | | | | | | | - 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
* Session resume support in client & broker: Client can resume a sessionAlan Conway2007-10-261-4/+8
| | | | | | | | | | | | | | | | | | | | | | | | | 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
* Timeout handling for dtx, plus tests.Gordon Sim2007-06-081-10/+72
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@545531 13f79535-47bb-0310-9956-ffa450edef68
* Some tests and fixes for dtx preview.Gordon Sim2007-06-051-9/+32
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@544522 13f79535-47bb-0310-9956-ffa450edef68
* Updates to dtx support.Gordon Sim2007-05-311-0/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@543182 13f79535-47bb-0310-9956-ffa450edef68
* Ensure work is marked completed when recovered.Gordon Sim2007-05-251-8/+0
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@541689 13f79535-47bb-0310-9956-ffa450edef68
* Added support for recovering prepared transactions.Gordon Sim2007-05-251-1/+21
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@541619 13f79535-47bb-0310-9956-ffa450edef68
* Some dtx related updates.Gordon Sim2007-04-191-0/+59
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@530500 13f79535-47bb-0310-9956-ffa450edef68