Issue with MS2 Notification API using subfolders

LabKey Support Forum (Inactive)
Issue with MS2 Notification API using subfolders jean.matscher  2011-05-11 01:27
Status: Closed
 
Dear all,

we have successfully tested the MS2 Notification API, running automated MS2 searches
- with raw files located in T:/LabKeyRoot_v11/v11_Test/@Files,
- the pipeline root being T:/LabKeyRoot_v11/v11_Test


We are now attempting to setup the automated search with raw files located in a subfolder T:/LabKeyRoot_v11/v11_Test/Aggregates/@Files
and accordingly changed the values in the file list csv, but get the following error message:

org.labkey.remoteapi.CommandException: File with path T:/LabKeyRoot_v11/v11_Test/Aggregates/@Files\2010_03_03_cytochromeC_0_50_40minD.raw is not under the pipeline root for this folder


We tried different configurations in config.properties and the csv, but were not able to get the searches submitted. I've attached the following files:
- Full log file of the submission
- The config.properties and csv files for the Root folder (Successful) and the Subfolder (Error).


Is this due to a limitation of the API, or an incorrect file setup on our side?


Thanks for any help here, best regards
Jean
 
 
Peter responded:  2011-05-12 15:04
Jean,

Following our phone call earlier this week, I think you were right to question the pipeline / folder setup as a possible source of the problem here. By default, every project and every folder within a labkey site that has a pipeline web part has its own pipeline root. The folder name @files indicates a new pipeline root at that level in the hierarchy-- so the Aggregates folder has its own pipeline root. Given your current LabKey project/folder & pipeline structure, you would need to change the config.properties file to point to

pipelineRoot: T:/LabKeyRoot_v11/v11_Test/Aggregates/@files

in order to kick of jobs and notify of new files for that folder. But I think the better solution by far is to setup a custom pipeline root at your project level. In the Pipeline Manager web part, click on Setup and change the pipeline root to "set a pipeline override". Have it point to a location on your shared filesystem that does not include an "@files" folder in the path, to make it clear that this is a custom pipeline root. ( you may need to move existing files to go underneath this news pipeline root directory .

In subfolders of the project, leave the pipeline root as inherited. You will still be able to load runs both manually and via the notification apis into subfolders, and you wont need to change the config.properties file for the notification calls.

Peter
 
jean.matscher responded:  2011-05-13 06:59
Hi Peter

thanks for the reply...
I've changed the pipeline root to what you noted but still get the error... Maybe we look into this another time.

Creating a new folder, assigning a custom pipeline root, adding the subfolder did work out well, files are added in the assay list for both root and subfolder! (Testing notification call is outstanding, but not today...)
I'll have to figure out the impact on the setup for our user, but that's another story :-)

Cheers,
Jean
 
Peter responded:  2011-05-16 08:47
Jean,

Josh corrected me. The notify command takes a folder path in the config.properties file, so you would need to change the config file (point to a different one) to get it to work with a subfolder. Did you do that in your test?

Setting up a custom pipeline root and letting subfolders inherit it is a good idea for your configuration in any case.

Peter