[
https://issues.apache.org/jira/browse/ARTEMIS-714?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15493618#comment-15493618
]
ASF subversion and git services commented on ARTEMIS-714:
---------------------------------------------------------
Commit c33f29631f9556e3a28140e0d14a99e0101b8e03 in activemq-artemis's branch
refs/heads/master from [~jmesnil]
[ https://git-wip-us.apache.org/repos/asf?p=activemq-artemis.git;h=c33f296 ]
ARTEMIS-714 Add suport for DataSource and SQLProvider
* add DataSource property to DatabaseStorageConfiguration to be able to
communicate with the data store using this DataSource instance instead
of relying on the creation the SQL connnection using the JDBC connection
URL/driver class name tuple.
* add SQLProvider.Factory property to DatabaseStorageConfiguration to
externalize the choice of the SQLProvider instead of relying on
hard-coded choices. If the property is null, the current behaviour will
be used (determing the SQLProvider based on the driver class name)
* bindingsJournal and messageJournal are already started in the start()
method. Remove redundant calls that were creating unused JDBC
connections that are never closed.
JIRA: https://issues.apache.org/jira/browse/ARTEMIS-714
> JDBC Store improvement
> ----------------------
>
> Key: ARTEMIS-714
> URL: https://issues.apache.org/jira/browse/ARTEMIS-714
> Project: ActiveMQ Artemis
> Issue Type: Improvement
> Components: Broker
> Affects Versions: 1.1.0
> Reporter: Jeff Mesnil
>
> We plan to integrate with Artemis JDBC store in our application server.
> After a code review, we saw 2 main improvements that would make the code more
> flexible and easier to maintain.
> First, in our app server, we have our sophisticated way to configure access
> to databases. We would like to be able to pass a DataSource instance to
> Artemis JDBC store instead of a (driver class name / URL) tuple.
> If the DataSource object is set, we create a Connection from it, otherwise we
> use the current code to create the connection from a class name + URL. This
> will introduce no changes to use of standalone Artemis broker.
> The second improvement is to make the SQLProvider injectable instead of
> relying on hard-coded class provided by Artemis jars.
> We would create an instance of the SQLProvider in our integration code and
> pass it to Artemis JDBC store. This will make it simpler to support new types
> of databases (or fix issues in the SQLProvider implementations) without
> requiring a new release of Artemis for that.
> If the SQLProvider instance injected in the JDBC store is null, the current
> code will be executed.
> Does these improvements sound correct?
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)