Files for Async Store interface layer (NOTE, read carefully - license issues)
-----------------------------------------------------------------------------

                 Key: QPID-2017
                 URL: https://issues.apache.org/jira/browse/QPID-2017
             Project: Qpid
          Issue Type: Task
          Components: C++ Broker
            Reporter: Kim van der Riet


These are the interface layer files for the C++ async store. They are 
encumbered with BDB, which is used to save the broker state. For this reason, 
these files are LGPL - and may not be checked in to subversion until BDB is 
replaced with an appropriate ASF-compatible replacement. Then these files may 
be re-licensed with an ASF license.

The StorePlugin.cpp file contains the actual plugin code; this in turn creates 
an instance of MessageStoreImpl, subclassed from qpid::broker::MessageStore.

MessageStoreImpl: This class is the centre of the async store and is 
responsible for coordinating recovery, initialization, transactions (both local 
and distributed), flow-to-disk loading and unloading and persisting broker 
state (queues, bindings etc.) in BDB. This class is in need of a tidy-up and 
refactorization - it has become rather large and unwieldy.

JournalImpl: This is the implementation of the async store. The header file is 
provided for context, as this is used throughout the MessageStoreImpl class.
DataTokenImpl: This is also a part of the async store implementation: an 
instance of this class tracks each stored message through the asyncronous write 
cycle, and can be used to track its status and find information such as the 
record ID (rid) in the store.

TxnCtxt: This class is the transaction context; an instance of this class is 
created for each transaction.

The remaining files are for various data structures which are reasonably 
straight forward to understand.

ASF legal recommends cleaning the files, then re-attaching to the JIRA without 
BDB code & with ASL headers before then committing to svn.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:[email protected]

Reply via email to