You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "Steve Huston (JIRA)" <qp...@incubator.apache.org> on 2009/10/14 01:55:31 UTC

[jira] Updated: (QPID-2017) Files for Async Store interface layer (NOTE, read carefully - license issues)

     [ https://issues.apache.org/jira/browse/QPID-2017?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Steve Huston updated QPID-2017:
-------------------------------

    Attachment: store.tar
                store-new.patch

I've attached two new files related to this:

- store.tar: The store files I'm proposing to add. This has two levels:
                   store - the portable store code
                   ms-sql - the code particular to the Microsoft SQL Server storage provider

- store-new.patch: Patch for the existing broker to allow the above to work. There are a couple of areas here:
      - Extend the plugin loading to sense the module file suffix for the platform (.so vs .dll)
      - Remove the init(Options*) method from the MessageStore interface. The new store::MessageStorePlugin class (in the portable store layer) takes are of initialization at earlyInitialize - the init() method was never called anywhere in the broker except from the store anyway.

I'd like to be sure this is included in 0.6. If you have feedback on this, please let me know ASAP as I'd like to get this checked in this week.

> 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
>            Assignee: Steve Huston
>         Attachments: BindingDbt.cpp, BindingDbt.h, BufferValue.cpp, BufferValue.h, IdDbt.cpp, IdDbt.h, IdSequence.cpp, IdSequence.h, JournalImpl.h, MessageStoreImpl.cpp, MessageStoreImpl.h, PreparedTransaction.cpp, PreparedTransaction.h, store-new.patch, store.tar, StoreException.h, StorePlugin.cpp, TxnCtxt.cpp, TxnCtxt.h
>
>
> 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:dev-subscribe@qpid.apache.org


RE: [jira] Updated: (QPID-2017) Files for Async Store interface layer (NOTE, read carefully - license issues)

Posted by Steve Huston <sh...@riverace.com>.
Commit is in, but not (yet) the cmake file change that adds it to the
build.

-Steve

> -----Original Message-----
> From: Kim van der Riet [mailto:kim.vdriet@redhat.com] 
> Sent: Wednesday, October 14, 2009 10:52 AM
> To: dev@qpid.apache.org
> Subject: Re: [jira] Updated: (QPID-2017) Files for Async 
> Store interface layer (NOTE, read carefully - license issues)
> 
> 
> I would like to have a closer look, but will be tied up for 
> the rest of
> this week. Can you delay the final commit until next week?
> 
> On Tue, 2009-10-13 at 16:55 -0700, Steve Huston (JIRA) wrote:
> > [ 
> https://issues.apache.org/jira/browse/QPID-2017?page=com.atlas
sian.jira.plugin.system.issuetabpanels:all-tabpanel ]
> 
> Steve Huston updated QPID-2017:
> -------------------------------
> 
>     Attachment: store.tar
>                 store-new.patch
> 
> I've attached two new files related to this:
> 
> - store.tar: The store files I'm proposing to add. This has two
levels:
>                    store - the portable store code
>                    ms-sql - the code particular to the Microsoft SQL
Server storage provider
> 
> - store-new.patch: Patch for the existing broker to allow the above
to work. There are a couple of areas here:
>       - Extend the plugin loading to sense the module file suffix
for the platform (.so vs .dll)
>       - Remove the init(Options*) method from the MessageStore
interface. The new store::MessageStorePlugin class (in the portable
store layer) takes are of initialization at earlyInitialize - the
init() method was never called anywhere in the broker except from the
store anyway.
> 
> I'd like to be sure this is included in 0.6. If you have feedback on
this, please let me know ASAP as I'd like to get this checked in this
week.
> 



---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org



---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


Re: [jira] Updated: (QPID-2017) Files for Async Store interface layer (NOTE, read carefully - license issues)

Posted by Kim van der Riet <ki...@redhat.com>.
I would like to have a closer look, but will be tied up for the rest of
this week. Can you delay the final commit until next week?

On Tue, 2009-10-13 at 16:55 -0700, Steve Huston (JIRA) wrote:
> [ https://issues.apache.org/jira/browse/QPID-2017?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
> 
> Steve Huston updated QPID-2017:
> -------------------------------
> 
>     Attachment: store.tar
>                 store-new.patch
> 
> I've attached two new files related to this:
> 
> - store.tar: The store files I'm proposing to add. This has two levels:
>                    store - the portable store code
>                    ms-sql - the code particular to the Microsoft SQL Server storage provider
> 
> - store-new.patch: Patch for the existing broker to allow the above to work. There are a couple of areas here:
>       - Extend the plugin loading to sense the module file suffix for the platform (.so vs .dll)
>       - Remove the init(Options*) method from the MessageStore interface. The new store::MessageStorePlugin class (in the portable store layer) takes are of initialization at earlyInitialize - the init() method was never called anywhere in the broker except from the store anyway.
> 
> I'd like to be sure this is included in 0.6. If you have feedback on this, please let me know ASAP as I'd like to get this checked in this week.
> 



---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org