Import Failing

Import Failing michele tinti  2024-01-18 04:49
Hi, I'm trying to import a raw file from a DIA run using Skyline-daily (64-bit) (f33716d12).
The file fails with this output:

At 12:30:
Failed importing results file 'E:\DH_anna\new_database\280_2023_DUN_DH-AT-LKO1+EGTA.raw'.

pwiz.Skyline.Model.Results.ChromCacheBuildException: Failed importing results file 'E:\DH_anna\new_database\280_2023_DUN_DH-AT-LKO1+EGTA.raw'.
 ---> pwiz.Skyline.Util.AssumptionException
   at pwiz.Skyline.Util.Assume.Fail(String error) in C:\proj\pwiz\pwiz_tools\Skyline\Util\Util.cs:line 2041
   at pwiz.Skyline.Model.Results.TimeIntensities.GetInterpolatedIntensity(Single time, Int32& index) in C:\proj\pwiz\pwiz_tools\Skyline\Model\Results\TimeIntensities.cs:line 438
   at pwiz.Skyline.Model.Results.TimeIntensities.<GetInterpolatedIntensities>d__34.MoveNext() in C:\proj\pwiz\pwiz_tools\Skyline\Model\Results\TimeIntensities.cs:line 428
   at System.Linq.Enumerable.WhereSelectEnumerableIterator`2.MoveNext()
   at System.Collections.Generic.List`1..ctor(IEnumerable`1 collection)
   at System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source)
   at pwiz.Skyline.Model.Results.MedianPeakShape.GetCorrelation(TimeIntensities chromatogram) in C:\proj\pwiz\pwiz_tools\Skyline\Model\Results\MedianPeakShape.cs:line 89
   at pwiz.Skyline.Model.Results.ChromPeak..ctor(IPeakFinder finder, IFoundPeak peak, FlagValues flags, TimeIntensities timeIntensities, IList`1 rawTimes, MedianPeakShape medianPeakShape) in C:\proj\pwiz\pwiz_tools\Skyline\Model\Results\ChromHeaderInfo.cs:line 1154
   at pwiz.Skyline.Model.Results.PeakIntegrator.IntegrateFoundPeak(IFoundPeak peakMax, FlagValues flags) in C:\proj\pwiz\pwiz_tools\Skyline\Model\Results\PeakIntegrator.cs:line 97
   at pwiz.Skyline.Model.Results.ChromData.CalcChromPeak(PeakGroupIntegrator peakGroupIntegrator, IFoundPeak peakMax, FlagValues flags, IFoundPeak& peak) in C:\proj\pwiz\pwiz_tools\Skyline\Model\Results\ChromData.cs:line 332
   at pwiz.Skyline.Model.Results.ChromDataSet.GeneratePeakData(TimeIntervals intersectedTimeIntervals) in C:\proj\pwiz\pwiz_tools\Skyline\Model\Results\ChromDataSet.cs:line 761
   at pwiz.Skyline.Model.Results.PeptideChromDataSets.PickChromatogramPeaks(ExplicitPeakBoundsFunc explicitPeakBoundsFunc) in C:\proj\pwiz\pwiz_tools\Skyline\Model\Results\PeptideChromData.cs:line 224
   at pwiz.Skyline.Model.Results.ChromCacheBuilder.ScoreWriteChromDataSets(PeptideChromDataSets chromDataSets, Int32 threadIndex) in C:\proj\pwiz\pwiz_tools\Skyline\Model\Results\ChromCacheBuilder.cs:line 107
   at pwiz.Common.SystemUtil.ProducerConsumerWorker`2.Consume(Object threadIndex) in C:\proj\pwiz\pwiz_tools\Shared\CommonUtil\SystemUtil\ProducerConsumerWorker.cs:line 186
   --- End of inner exception stack trace ---
   at pwiz.Skyline.Model.Results.ChromCacheBuilder.PostChromDataSet(PeptideChromDataSets chromDataSet) in C:\proj\pwiz\pwiz_tools\Skyline\Model\Results\ChromCacheBuilder.cs:line 1288
   at pwiz.Skyline.Model.Results.ChromCacheBuilder.Read(ChromDataProvider provider) in C:\proj\pwiz\pwiz_tools\Skyline\Model\Results\ChromCacheBuilder.cs:line 433
   at pwiz.Skyline.Model.Results.ChromCacheBuilder.BuildCache() in C:\proj\pwiz\pwiz_tools\Skyline\Model\Results\ChromCacheBuilder.cs:line 256

DIA-NN uses the file, and it opens with Xcalibur without a problem.
Do you please have any suggestions?

Thanks for your attention,
Nick Shulman responded:  2024-01-18 06:42
Can you send us your Skyline document and your raw file?

In Skyline you can use the menu item:
File > Share
to create a .zip file containing your Skyline document and supporting files including spectral libraries and extracted chromatograms.

Files which are less than 50MB can be attached to this support request. You can upload larger files here:

The error that you are hitting is definitely caused by a bug in Skyline. We have seen this error reported a couple of times over the last year, but we have not been able to figure out what causes it.
After we see your data we will probably be able to figure out how to fix this bug.
-- Nick
michele tinti responded:  2024-01-18 11:22
Thanks for your support!
I zipped everything without using File > Share
as I could not include the failing raw file.

in the (approx 7GB) file you will find the following:

the DIA-NN files I imported in skyline following this video tutorial

Fasta file used for the search

the failing raw file

all the files created by skyline (slc, skyl, skyd, sky.view....)

I hope it helps!

Nick Shulman responded:  2024-01-18 20:40
Thank you for sending that .zip file.

The error is happening because Skyline is trying to calculate some statistics on a peak whose start and end times are the same.

The reason that these zero-width peaks are being chosen is because of two things:
1. Skyline is using the peak boundaries in your spectral library. When you build a spectral library from DIA-NN results, the Spectral library will contain the peak boundaries that DIA-NN has chosen, and, by default, Skyline will use those peak boundaries instead of using Skyline's peak detection algorithm.
2. The "Retention Time Filtering" setting at "Settings > Transition Settings > Full Scan" says to only use spectra within 5 minutes of the predicted retention time. The predicted retention time is coming from the iRT predictor that was built from the peptides in your spectral library.
The problem is that the predicted retention time is not necessarily going to be the same as where DIA-NN found the peptide in a particular replicate. What happens in that case is Skyline tries to choose a peak as close to the DIA-NN peak as possible which ends up being a zero-width peak at the edge of the extracted chromatogram.

There are two different ways that you could work around this:

1. Change the "Retention Time Filtering" setting at "Settings > Transition Settings > Full Scan" to "Use only scans within X minutes of MS/MS IDs". If you choose that then all of the chromatograms will contain the peak that DIA-NN has chosen, because DIA-NN's peak boundaries are located at the same place as the MS/MS ID.

2. Alternatively, if you would like Skyline to do the peak finding instead of using the peak boundaries that DIA-NN has chosen, you could go to "Settings > Peptide Settings > Library", and then push the "Edit List" button and then "Edit" your library "test_skyline" and then uncheck the box that says "Use Explicit Peak Bounds".

Thank you for reporting this bug. I will fix the error that you were running into.
-- Nick
michele tinti responded:  2024-01-19 02:40
Dear Nick,

Thank you for taking the time to review the error and for the extensive explanation.
I tried your 1. solution, and it worked well.