BioLockJ-Dev-Team / sheepdog_testing_suite

Test suite for BioLockJ development team.
3 stars 8 forks source link

class lookup feature does not work on all systems #237

Closed IvoryC closed 4 years ago

IvoryC commented 4 years ago

It works on my mac. I think its working on the cluster (linux system). At least on my machine it works in docker.

But on Dr. Fodors machine (Ubuntu for Winodows) it looks like the feature is broken. We ran the test case that specifies RdpClassifier without the full class path. The error we get is correct. It correctly states that RdpClassifier is not a valid module; but the feature of finding the module with that name, or suggesting classes with that name... that added feature is not working. Right now our documentation shows that you have to give the full class path, so the ability to use just the class name being system-specific is kind of ok.

The error it shows at the command line is:

PipelineFormationException
The name "RdpClassifier" does not represent a valid BioModule.

The sort of looks like the Reflections part (where it finds all modules in scope) is not working, but that must be working on Dr. Fodors system because I think the biolockj-api does work, and it depends on the same Reflections functions.

Here is an excerpt from the log:

2020-06-04 12:35:33 INFO BioLockJUtil: # Initial input files found: 2
2020-06-04 12:35:33 INFO BioLockJUtil: # Initial input files after removing empty/ignored files: 2
2020-06-04 12:35:33 INFO SeqUtil: Check if input file is a SEQ file: /mnt/c/Users/corei7/git/sheepdog_testing_suite/data_small/input/seq/fq/single_sample/separate_fw_rv/rhizosphere_16S_data/R2/rhizo_R2_subdir_2files/ERR1456828_2.fastq.gz
2020-06-04 12:35:33 INFO SeqUtil: header: @ERR1456828.100 100 length=301
2020-06-04 12:35:33 INFO SeqUtil: seq: GTTGACACAGGGGTATCTAATCCTGTTCGCTCCCCACGCTTTCGCTCCTCAGCGTCAGTAATGGCCCAGAGATCCGCCTTCGCCCCCGGTGTTCCCCCTGATATCCACGCATTTCACCGCTACCCCAGGACTTCCACTCCCTCCTCCCACACTCAAGCCCTCCATCTTCCGATGCAGACTATGTATTCAGCCCCTAGATT
2020-06-04 12:35:33 INFO SeqUtil: Check if input file is a SEQ file: /mnt/c/Users/corei7/git/sheepdog_testing_suite/data_small/input/seq/fq/single_sample/separate_fw_rv/rhizosphere_16S_data/R2/rhizo_R2_subdir_2files/ERR1456827_2.fastq.gz
2020-06-04 12:35:33 INFO SeqUtil: header: @ERR1456827.100 100 length=300
2020-06-04 12:35:33 INFO SeqUtil: seq: TGGACTACTGGGGTATCTAATCCTGTTCGCTCCCCACGCTTTCGCGTCTCAGCGTCAGTACCGTCCCAGAGAGCCGCCTTCGCCACGGGTGTTCTTCCCGATCTCTGCGCATTTCACCGCTACACCAGGAATTCCAGTCTCCCCTACTGCACTCCAGCCTCCCCGTACCCCCTGCAGCCCCGGGGTTGAGCCCGGGGCCT
2020-06-04 12:35:33 INFO Properties: Configured BioModule: RdpClassifier
2020-06-04 12:35:33 WARN Reflections: given scan urls are empty. set urls in the configuration
2020-06-04 12:35:33 DEBUG ModuleUtil: Found 0 classes.
2020-06-04 12:35:33 DEBUG ModuleUtil: Consider the simple class name: RdpClassifier
2020-06-04 12:35:33 DEBUG ModuleUtil: Found 0 classes.
2020-06-04 12:35:33 INFO PipelineFormationException: No modules have been added to the pipeline yet.
2020-06-04 12:35:33 DEBUG SummaryUtil: duration : 1231
2020-06-04 12:35:33 WARN DownloadUtil: Unable to find any executed modules to summarize: null
2020-06-04 12:35:33 INFO DownloadUtil: DownloadUtil found there are no downloadable modules
2020-06-04 12:35:33 INFO SummaryUtil: Summary updated
2020-06-04 12:35:33 ERROR FatalExceptionHandler: ========================================================================
2020-06-04 12:35:33 ERROR FatalExceptionHandler: 
FATAL APPLICATION ERROR  -->
 Program args: -projectDir /mnt/c/Users/corei7/git/sheepdog_testing_suite/MockMain/pipelines -homeDir /home/afodor -config /mnt/c/Users/corei7/git/sheepdog_testing_suite/test/feature/classLookup/rdp_noJarPath.properties
biolockj.exception.PipelineFormationException: The name "RdpClassifier" does not represent a valid BioModule.
    at biolockj.util.ModuleUtil.suggestFullClass(ModuleUtil.java:193)
    at biolockj.util.ModuleUtil.createModuleInstance(ModuleUtil.java:137)
    at biolockj.util.BioLockJUtil.getInputModules(BioLockJUtil.java:419)
    at biolockj.util.BioLockJUtil.setPipelineInputFileTypes(BioLockJUtil.java:712)
    at biolockj.util.BioLockJUtil.initPipelineInput(BioLockJUtil.java:410)
    at biolockj.BioLockJ.initBioLockJ(BioLockJ.java:227)
    at biolockj.BioLockJ.main(BioLockJ.java:93)
2020-06-04 12:35:33 ERROR FatalExceptionHandler: ========================================================================
2020-06-04 12:35:33 ERROR FatalExceptionHandler: ========================================================================
2020-06-04 12:35:33 ERROR FatalExceptionHandler: 
To view the BioLockJ help menu, run "biolockj ---help"
Check error logs here --> /mnt/c/Users/corei7/git/sheepdog_testing_suite/MockMain/pipelines/rdp_noJarPath_3_2020Jun04/rdp_noJarPath_3_2020Jun04.log
For more information, please visit the BioLockJ Wiki:https://github.com/msioda/BioLockJ/wiki

2020-06-04 12:35:33 ERROR FatalExceptionHandler: ========================================================================
2020-06-04 12:35:33 INFO FatalExceptionHandler: Local file-system error log path: /mnt/c/Users/corei7/git/sheepdog_testing_suite/MockMain/pipelines/rdp_noJarPath_3_2020Jun04/rdp_noJarPath_3_2020Jun04.log
2020-06-04 12:35:33 INFO Processor: [ Set File Privs ]: STARTING CMD --> chmod -R 770 /mnt/c/Users/corei7/git/sheepdog_testing_suite/MockMain/pipelines/rdp_noJarPath_3_2020Jun04 
2020-06-04 12:35:33 INFO Processor: [ Set File Privs ]: COMPLETE
2020-06-04 12:35:33 INFO BioLockJ: Log Pipeline Summary...
----------------------------------------------------------------------------------------------------------------------------------------------------------
Pipeline Status:     FAILED
Pipeline Runtime:    00 hours : 00 minutes : 01 seconds
Master Config:       /mnt/c/Users/corei7/git/sheepdog_testing_suite/MockMain/pipelines/rdp_noJarPath_3_2020Jun04/MASTER_rdp_noJarPath_3_2020Jun04.properties
Final Metadata:      N/A
IvoryC commented 4 years ago

On the same system that generated that log file (in description), the biolockj-api listModules command does not work. So this is actually a real bug, because the issue is that the Reflections functionality is not working on that system, and thus the api function does not work as advertised.

IvoryC commented 4 years ago

This has been fixed as of PR #49 Af potential reflection fix