funkyjive opened a new pull request, #4402:
URL: https://github.com/apache/activemq-artemis/pull/4402

   Using locking capabilities of the database, implement the a primitive 
manager to allow quorum voting to occur. This implementation has support for 
Oracle, MSSQL and Postgres -- with H2 being used for unit tests.
   
   The locking features used are not locks against a tables, but instead the 
idea of an arbitrarily named "application" lock.  There is no SQL standard for 
this behavior and each database implementation is different. I have accounted 
for this by creating the concept of a database adapter -- i.e. adapting the 
primitive manager to work for the particular database. I have attempted to 
reduce duplication by declaring a BaseDatabaseAdapter which I think should work 
generally for all databases.  
   
   Additionally, I introduced the concept of a DatabaseConnectionProvider.  
This was done for any users that are utilizing Artemis as an embedded feature 
or that otherwise need to declare their own mechanism for getting credentials.  
For instance, they may very well want to utilize some encryption for storing a 
database password in the configuration.  The DefaultDatabaseConnectionProvider 
just gets url, username and password from the properties.  It is likely that 
this implementation is enough for most uses, especially if we make something 
that allows the password to be stored encrypted.  


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to