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]
> > 
> > 
> > 

Reply via email to