Whippet.jl icon indicating copy to clipboard operation
Whippet.jl copied to clipboard

bug with whippet-quant.jl

Open limeng12 opened this issue 5 years ago • 4 comments

Hello I run many fastq file, but several ones failed. here is one of the them, I run second time but it is still there.

Whippet v0.11 loading and compiling... 26.807187 seconds Loading splice graph index... /home/.julia/v0.6/Whippet/index/graph.jls 19.691144 seconds (6.85 M allocations: 3.187 GiB, 10.43% gc time) Processing reads from file... FASTQ_1: /data/20181030/ok/ENCFF606LUR.fastq.gz FASTQ_2: /data/20181030/ok/ENCFF257JTA.fastq.gz ERROR: LoadError: BoundsError: attempt to access 2-element Array{Whippet.SGAlignNode,1} at index [3] Stacktrace: [1] #ungapped_fwd_extend#45(::Bool, ::Whippet.SGAlignment, ::UInt32, ::Function, ::Whippet.AlignParam, ::Whippet.GraphLib, ::UInt32, ::Int64, ::Whippet.FASTQRecord, ::Int64) at /home/.julia/v0.6/Whippet/src/align.jl:389 [2] (::Whippet.#kw##ungapped_fwd_extend)(::Array{Any,1}, ::Whippet.#ungapped_fwd_extend, ::Whippet.AlignParam, ::Whippet.GraphLib, ::UInt32, ::Int64, ::Whippet.FASTQRecord, ::Int64) at ./:0 [3] #_ungapped_align#43 at /home/.julia/v0.6/Whippet/src/align.jl:214 [inlined] [4] (::Whippet.#kw##_ungapped_align)(::Array{Any,1}, ::Whippet.#_ungapped_align, ::Whippet.AlignParam, ::Whippet.GraphLib, ::Whippet.FASTQRecord, ::Int64, ::Int64) at ./:0 [5] #ungapped_align#63(::Bool, ::Bool, ::Function, ::Whippet.AlignParam, ::Whippet.GraphLib, ::Whippet.FASTQRecord, ::Whippet.FASTQRecord) at /home/.julia/v0.6/Whippet/src/paired.jl:80 [6] #process_paired_reads!#62(::Int64, ::Bool, ::Int64, ::Requests.ResponseStream{TCPSocket}, ::Requests.ResponseStream{TCPSocket}, ::Bool, ::Function, ::BioSequences.FASTQ.Reader, ::BioSequences.FASTQ.Reader, ::Whippet.AlignParam, ::Whippet.GraphLib, ::Whippet.GraphLibQuant{Whippet.SGAlignPaired,Whippet.DefaultCounter}, ::Whippet.MultiMapping{Whippet.SGAlignPaired,Whippet.DefaultCounter}, ::Whippet.DefaultBiasMod) at /home/.julia/v0.6/Whippet/src/reads.jl:158 [7] (::Whippet.#kw##process_paired_reads!)(::Array{Any,1}, ::Whippet.#process_paired_reads!, ::BioSequences.FASTQ.Reader, ::BioSequences.FASTQ.Reader, ::Whippet.AlignParam, ::Whippet.GraphLib, ::Whippet.GraphLibQuant{Whippet.SGAlignPaired,Whippet.DefaultCounter}, ::Whippet.MultiMapping{Whippet.SGAlignPaired,Whippet.DefaultCounter}, ::Whippet.DefaultBiasMod) at ./:0 [8] macro expansion at /home/.julia/v0.6/Whippet/src/timer.jl:5 [inlined] [9] main() at /home/.julia/v0.6/Whippet/bin/whippet-quant.jl:169 [10] include_from_node1(::String) at ./loading.jl:576 [11] include(::String) at ./sysimg.jl:14 [12] process_options(::Base.JLOptions) at ./client.jl:305 [13] _start() at ./client.jl:371

limeng12 avatar Dec 08 '18 07:12 limeng12

Hi @limeng12, thanks for opening this. The issue itself is a duplicate of what was reported in the gitter chat by @nick-webster and @DidrikOlofsson. I should already have the files I need to reproduce this error from what @nick-webster sent me, and I'll fix this as soon as I can-- if not I may ask you to send me some.

For now if you build an index without using the --bam option, that will work without error.

timbitz avatar Dec 09 '18 15:12 timbitz

Same issue here with paired-end reads. ERROR: LoadError: BoundsError: attempt to access 1-element Array{Whippet.SGAlignNode,1} at index [3] Stacktrace:

built the index using a bam file; but in our use case I don't consider using a standard GTF as an acceptable choice since I'm expecting many novel splicing events that won't be necessarily be annotated.

A possible work around could be adding the identified novel splice junctions to the GTF and build the index on that instead....

aleighbrown avatar Aug 20 '19 08:08 aleighbrown

Hi @aleighbrown -- Yah I need to address this bug. But, it is probably worth mentioning that the approach of supplementing the index with a bam file makes more sense when thinking about poorly annotated species for example, than it does for analyzing aberrant splicing from large swaths of disease datasets (like cancer), where each sample might have it's own novel splicing events (e.g fitting these all in one index is messy). For the latter use case specifically, I am actually thinking of another implementation that will allow Whippet to quantify from pre-aligned bam files (which usually already exist for such disease datasets), and to handle aberrant or novel splicing patterns that are not in the index. I'm not yet sure if I'll have time to implement this-- but if I do it will probably be soon, and I'll keep you updated.

timbitz avatar Aug 22 '19 18:08 timbitz

Hello, I encountered the same type of error. May I ask if there are any news about this issue? Which can be the reason behind this error? Thank you

serpei avatar Aug 04 '20 08:08 serpei