On Wed, 2015-09-02 at 18:35 +0000, Tomek Rekawek wrote: > Hi, > > One more thing. The “upgrade" command requires a lot of Maven > dependencies (Amazon API client for the S3 support, Jackrabbit 2 for > the repository upgrades, etc.) Some of these dependencies conflicts > with the Oak modules (eg. Jackrabbit 2 uses older lucene-core than > the oak-lucene and the new version is not backward-compatible). > Because of that, the dependency management in the oak-run module is > complicated - even before my patch there is a separate profile for > building the project using Jackrabbit 2 dependencies and there are > also two assembly files building the normal jar and the “jackrabbit > 2” jar.
Without being familiar with the codebase, it sounds like it's a good candidate oak-run being based on OSGi. Classpath incompatibilities should be solved in a more elegant manner and we can also benefit from all the OSGi goodies. Robert > > I think we should extract the upgrade command to a separate Maven > module (eg. oak-migrator or oak-upgrade-tool). This way we can > precisely define what are the required dependencies and we don’t need > to care if they are compatible with other oak-run commands. > > Any objections? :) > > Best regards, > Tomek > > > On 02/09/15 14:58, "Tomek Rekawek" <[email protected]> wrote: > > > Hello, > > > > I created a pull request [1] for the OAK-2171 [2]. It exposes all > > features added recently to the oak-upgrade module (version history > > copy, filtering paths) as well as all migration paths (eg. mongo -> > > rdb) in the oak-run upgrade command. There are also tests. Looking > > forward to feedback :) > > > > Best regards, > > Tomek > > > > [1] https://github.com/apache/jackrabbit-oak/pull/38 > > [2] https://issues.apache.org/jira/browse/OAK-2171 > > > > -- > > Tomek Rękawek | Adobe Research | www.adobe.com > > [email protected] > > > > > >
