On Apr 4, 2007, at 6:10 PM, David Jencks wrote:
What I'm hoping for in the future for these kinds of situations is that there can be plugins configured for each of several databases, e.g. mysql, db2, firebird, etc and to switch the backend all you need to do is change a line in artifact_aliases.properties. I'm trying this out with Peter Petersson with the roller plugin we've started in the plugins dir.
That sounds like the right direction. This might get easier if we separate the datasource component from the actual database itself. I'm not sure about the roller plugin, but the Liferay datasource component includes not only the datasource but a derby database that is prepopulated with the Liferay schema. So, a side effect of installing the Liferay datasource plugin is that you get a new derby database under var/derby that's ready to roll. From an end user's perspective this makes it really easy to get a running portal server in Geronimo as a POC. But users looking for more configurability and optimization are not as well served. That becomes apparent as you read Hernan's new article.
Anyway, I think its generally better to have the "other project" supply plugins for the databases they support rather than asking users to create one themselves. Making the process easy... that will be the challenge.
I totally agree here as well. I think the main impediment right now is that setting up and maintaining a plugin repository (or even just a collection of plugins to be hosted elsewhere) requires some research and trial and error. We can help that situation by providing more examples and documentation, and by improving the overall design. I hope that Geronimo's own plugin repository will provide an example worth emulating.