Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 380353

Summary: Orion requires local file system
Product: [ECD] Orion Reporter: Rafael Chaves <eclipse>
Component: ServerAssignee: John Arthorne <john.arthorne>
Status: RESOLVED WONTFIX QA Contact:
Severity: normal    
Priority: P3    
Version: unspecified   
Target Milestone: ---   
Hardware: PC   
OS: Linux   
Whiteboard:

Description Rafael Chaves CLA 2012-05-23 01:10:57 EDT
I have been looking into plugging my own file system into the Orion server but at a few places Orion assumes the EFS "local" file system implementation is being used, for instance, IndexPurgeJob#markStaleIndexes.
Comment 1 Rafael Chaves CLA 2012-05-23 01:13:43 EDT
BTW, follows the small change I made to allow mounting Orion on an alternate file system (in org.eclipse.orion.internal.server.servlets.Activator):

private void initializeFileSystem() {
	String rootLocation = System.getProperty("orion.project.root", URI.create("file:" + getPlatformLocation()).toString());
	URI rootURI = URI.create(rootLocation);
	if (rootURI == null)
		throw new RuntimeException("Unable to compute base file system location"); //$NON-NLS-1$

	IFileStore rootStore = null;
	try {
		rootStore = EFS.getStore(rootURI);
		rootStore.mkdir(EFS.NONE, null);
		rootStoreURI = rootStore.toURI();
	} catch (CoreException e) {
		throw new RuntimeException("Error initializing location: " + rootURI, e); //$NON-NLS-1$
	}

	//initialize user area if not specified
	if (System.getProperty(PROP_USER_AREA) == null) {
		System.setProperty(PROP_USER_AREA, rootStore.getFileStore(new Path(".metadata/.plugins/org.eclipse.orion.server.core/userArea")).toString()); //$NON-NLS-1$
	}
}
Comment 2 Rafael Chaves CLA 2012-05-23 01:15:57 EDT
Which has a bogus null check and lacks an actually required null check, but you get what I mean.
Comment 3 Rafael Chaves CLA 2012-05-23 02:03:41 EDT
Just hit other parts of the code that seem to rely on file: the git support. Since git support is one of the key reasons why I want to use Orion, I guess I should find another approach of plugging into the server.
Comment 4 John Arthorne CLA 2012-05-23 09:45:20 EDT
I will happily fix any cases you come across in our code. Git will definitely be a problem though, because there are no Git implementations I'm aware of that will work against higher level abstractions like EFS.
Comment 5 Rafael Chaves CLA 2012-05-29 03:54:51 EDT
Right, I guess I meant the Git-integration code in Orion, not git per se. I am not in an easy position to reproduce that problem (I am no longer using the wrapping file system approach) so I can't provide you with a source location, sorry.
Comment 6 John Arthorne CLA 2012-11-14 13:31:06 EST
Not planning to do anything here.