ablab / IsoQuant

Transcript discovery and quantification with long RNA reads (Nanopores and PacBio)
https://ablab.github.io/IsoQuant/
Other
153 stars 14 forks source link

an error when running isoquant #170

Closed yuanwsy closed 7 months ago

yuanwsy commented 8 months ago

Hi , thanks for developing such a good tool. and I run with the following command : isoquant.py -d nanopore --bam /.bam --reference /GRCm39.genome.fa.gz --genedb /gencode.vM33.primary_assembly.basic.annotation.gtf --complete_genedb --output /IsoQuant/OEvm33/ --prefix My_ONT --sqanti_output --matching_strategy default --transcript_quantification unique_only --gene_quantification unique_only --no_secondary --junc_bed_file /gencode.vM33.primary_assembly.basic.annotation.bed

but I met an error: 2024-03-23 21:59:12,776 - CRITICAL - IsoQuant failed with the following error, please, submit this issue to https://github.com/ablab/IsoQuant/issuesconcurrent.futures.process._RemoteTraceback: """ Traceback (most recent call last): File "/data/R02/yuanwsy/miniconda3/lib/python3.8/concurrent/futures/process.py", line 239, in _process_worker r = call_item.fn(*call_item.args, *call_item.kwargs) File "/data/R02/yuanwsy/miniconda3/lib/python3.8/concurrent/futures/process.py", line 198, in _process_chunk return [fn(args) for args in chunk] File "/data/R02/yuanwsy/miniconda3/lib/python3.8/concurrent/futures/process.py", line 198, in return [fn(*args) for args in chunk] File "/data/R02/yuanwsy/IsoQuant/src/dataset_processor.py", line 228, in construct_models_in_parallel sqanti_t2t_printer.add_read_info(a) File "/data/R02/yuanwsy/IsoQuant/src/assignment_io.py", line 410, in add_read_info read_assignment.exon_count(), match.match_classification.name, gene_id, transcript_id, UnboundLocalError: local variable 'match' referenced before assignment """

The above exception was the direct cause of the following exception:

Traceback (most recent call last): File "/data/R02/yuanwsy/IsoQuant/isoquant.py", line 698, in main(sys.argv[1:]) File "/data/R02/yuanwsy/IsoQuant/isoquant.py", line 692, in main run_pipeline(args) File "/data/R02/yuanwsy/IsoQuant/isoquant.py", line 645, in run_pipeline dataset_processor.process_all_samples(args.input_data) File "/data/R02/yuanwsy/IsoQuant/src/dataset_processor.py", line 368, in process_all_samples self.process_sample(sample) File "/data/R02/yuanwsy/IsoQuant/src/dataset_processor.py", line 406, in process_sample self.process_assigned_reads(sample, saves_file) File "/data/R02/yuanwsy/IsoQuant/src/dataset_processor.py", line 539, in process_assigned_reads for read_stat_counter, tsc in results: File "/data/R02/yuanwsy/miniconda3/lib/python3.8/concurrent/futures/process.py", line 484, in _chain_from_iterable_of_lists for element in iterable: File "/data/R02/yuanwsy/miniconda3/lib/python3.8/concurrent/futures/_base.py", line 619, in result_iterator yield fs.pop().result() File "/data/R02/yuanwsy/miniconda3/lib/python3.8/concurrent/futures/_base.py", line 444, in result return self.get_result() File "/data/R02/yuanwsy/miniconda3/lib/python3.8/concurrent/futures/_base.py", line 389, in get_result raise self._exception UnboundLocalError: local variable 'match' referenced before assignment

do you know how to fix the problem?

andrewprzh commented 8 months ago

Dear @yuanwsy

Thanks for the feedback! Could you send the entire isoquant.log file? I feels like I've seen this error before, but I might be wrong.

Best Andrey

jelfman commented 7 months ago

Hey Andrey!

I just managed to stumble on this same error. This error occurred on the runs where I provided a reference annotation, but not on the runs without annotation. Attached the log file from this run. Looks like it generated intermediate files for each chromosome but failed on merging them into the final result?

Justin

isoquant.log

andrewprzh commented 7 months ago

Dear @jelfman

I think this bug was fixed in version 3.3.1, could you give it a try?

Best Andrey

jelfman commented 7 months ago

Testing now -- unless I'm mistaken, I reinstalled manually from github and it pulled version 3.3.0 again, which is probably how I had the out-of-date version to begin with. Confirmed that the error still exists in the version pulled with "git clone https://github.com/ablab/IsoQuant.git".

Confirmed that the update in 3.3.1 fixes the issue.

Thanks for the response!

andrewprzh commented 7 months ago

Great to hear that!

P.S. IsoQuant 3.4 should be out soon.