If I'm the only one using a windows machine I would be ok with removing the dependency, but I guess I'm not.
regards marcel
Felix Meschberger wrote:
Hi all,
The Jackrabbit project contains a dependency on "cqfs-jackrabbit" and "cqfs" provided by Day Software. The former contains a single class CQFileSystem implementing the "org.apache.jackrabbit.core.fs.FileSystem" to provide an alternative for Jackrabbit's own LocalFileSystem implementation. This dependency is part of the Jackrabbit project such that this implementation is available to the test cases for them to run faster on Windows-based development boxes.
The problem with this project-level dependency is that the cqfs-jackrabbit project contains a dependency on the Jackrabbit project to get the interface to be implemented. Now there is a cyclic dependency which is not good conceptually and which creates a bootstrap problem.
I would like to break this cyclic dependency by removing the cqfs dependency from Jackrabbit altogether. This would result in the tests being configured to use LocalFileSystem instead of CQFileSystem. Consequently performance - esp. on Windows boxes - would suffer. Simple tests on Windows XP show, that a full build with test runs take around 10-11 minutes with LocalFileSystem compared to around 5-6 minutes with CQFileSystem. The same hardware running Fedora Core 3 runs the full build cycle in 4-5 minutes regardless of whether LocalFileSystem or CQFileSystem is used.
Nothing would of course prevent developers from configuring tests on their local platform with more performing FileSystem implementations.
What do you think ?
Regards Felix Meschberger
