Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

segmentation fault when skipQuant flag is set #902

Open
aydemiro opened this issue Nov 30, 2023 · 0 comments
Open

segmentation fault when skipQuant flag is set #902

aydemiro opened this issue Nov 30, 2023 · 0 comments

Comments

@aydemiro
Copy link

aydemiro commented Nov 30, 2023

Is the bug primarily related to salmon (bulk mode) or alevin (single-cell mode)?
salmon
Describe the bug
A clear and concise description of what the bug is.
salmon quant is leading to segmentation fault when --skipQuant flag is set. The behavior may be annotation dependent.
To Reproduce
Steps and data to reproduce the behavior:

Specifically, please provide at least the following information:

  • Which version of salmon was used? :
    • v1.9.0
  • How was salmon installed (compiled, downloaded executable, through bioconda)?
    • bioconda
  • Which reference (e.g. transcriptome) was used?
  • Which read files were used?
    • The issue is reproducible with multiple independent read files. Logs attached are from reads subsampled from GSM7099349
  • Which which program options were used?
    • --skipQuant -l A

Expected behavior
A clear and concise description of what you expected to happen.
salmon quant finishes without seg fault with --skipQuant
Screenshots
If applicable, add screenshots or terminal output to help explain your problem.
Terminal output when --skipQuant is on:

Version Info: ### PLEASE UPGRADE SALMON ###
### A newer version of salmon with important bug fixes and improvements is available. ####
###
The newest version, available at https://github.com/COMBINE-lab/salmon/releases
contains new features, improvements, and bug fixes; please upgrade at your
earliest convenience.
###
Sign up for the salmon mailing list to hear about new versions, features and updates at:
https://oceangenomics.com/subscribe
### salmon (selective-alignment-based) v1.9.0
### [ program ] => salmon 
### [ command ] => quant 
### [ index ] => { /share/genomes/human/hg38/gencode_v43/primary_comprehensive/SalmonIndex }
### [ skipQuant ] => { }
### [ libType ] => { A }
### [ mates1 ] => { GSM7099349.R1.fastq }
### [ mates2 ] => { GSM7099349.R2.fastq }
### [ output ] => { salmon_out }
### [ threads ] => { 1 }
Logs will be written to salmon_out/logs
[2023-11-30 09:40:21.543] [jointLog] [info] setting maxHashResizeThreads to 1
[2023-11-30 09:40:21.543] [jointLog] [info] Fragment incompatibility prior below threshold.  Incompatible fragments will be ignored.
[2023-11-30 09:40:21.543] [jointLog] [info] Usage of --validateMappings implies use of minScoreFraction. Since not explicitly specified, it is being set to 0.65
[2023-11-30 09:40:21.543] [jointLog] [info] Setting consensusSlack to selective-alignment default of 0.35.
[2023-11-30 09:40:21.543] [jointLog] [info] parsing read library format
[2023-11-30 09:40:21.543] [jointLog] [info] There is 1 library.
[2023-11-30 09:40:21.544] [jointLog] [info] Loading pufferfish index
[2023-11-30 09:40:21.545] [jointLog] [info] Loading dense pufferfish index.
-----------------------------------------
| Loading contig table | Time = 17.538 s
-----------------------------------------
size = 37303070
-----------------------------------------
| Loading contig offsets | Time = 413.98 ms
-----------------------------------------
-----------------------------------------
| Loading reference lengths | Time = 2.3736 ms
-----------------------------------------
-----------------------------------------
| Loading mphf table | Time = 2.3485 s
-----------------------------------------
size = 3781978516
Number of ones: 37303069
Number of ones per inventory item: 512
Inventory entries filled: 72858
-----------------------------------------
| Loading contig boundaries | Time = 5.1701 s
-----------------------------------------
size = 3781978516
-----------------------------------------
| Loading sequence | Time = 1.3226 s
-----------------------------------------
size = 2662886446
-----------------------------------------
| Loading positions | Time = 18.788 s
-----------------------------------------
size = 3537474813
-----------------------------------------
| Loading reference sequence | Time = 1.6833 s
-----------------------------------------
-----------------------------------------
| Loading reference accumulative lengths | Time = 3.3385 ms
-----------------------------------------

Segmentation fault (core dumped)

Output when the flag is off and the process finishes without the seg fault:

Version Info: ### PLEASE UPGRADE SALMON ###
### A newer version of salmon with important bug fixes and improvements is available. ####
###
The newest version, available at https://github.com/COMBINE-lab/salmon/releases
contains new features, improvements, and bug fixes; please upgrade at your
earliest convenience.
###
Sign up for the salmon mailing list to hear about new versions, features and updates at:
https://oceangenomics.com/subscribe
### salmon (selective-alignment-based) v1.9.0
### [ program ] => salmon 
### [ command ] => quant 
### [ index ] => { /share/genomes/human/hg38/gencode_v43/primary_comprehensive/SalmonIndex }
### [ libType ] => { A }
### [ mates1 ] => { GSM7099349.R1.fastq }
### [ mates2 ] => { GSM7099349.R2.fastq }
### [ output ] => { salmon_out }
### [ threads ] => { 1 }
Logs will be written to salmon_out/logs
[2023-11-30 09:36:58.680] [jointLog] [info] setting maxHashResizeThreads to 1
[2023-11-30 09:36:58.680] [jointLog] [info] Fragment incompatibility prior below threshold.  Incompatible fragments will be ignored.
[2023-11-30 09:36:58.680] [jointLog] [info] Usage of --validateMappings implies use of minScoreFraction. Since not explicitly specified, it is being set to 0.65
[2023-11-30 09:36:58.680] [jointLog] [info] Setting consensusSlack to selective-alignment default of 0.35.
[2023-11-30 09:36:58.680] [jointLog] [info] parsing read library format
[2023-11-30 09:36:58.680] [jointLog] [info] There is 1 library.
[2023-11-30 09:36:58.681] [jointLog] [info] Loading pufferfish index
[2023-11-30 09:36:58.681] [jointLog] [info] Loading dense pufferfish index.
-----------------------------------------
| Loading contig table | Time = 17.497 s
-----------------------------------------
size = 37303070
-----------------------------------------
| Loading contig offsets | Time = 192.67 ms
-----------------------------------------
-----------------------------------------
| Loading reference lengths | Time = 2.1496 ms
-----------------------------------------
-----------------------------------------
| Loading mphf table | Time = 3.0304 s
-----------------------------------------
size = 3781978516
Number of ones: 37303069
Number of ones per inventory item: 512
Inventory entries filled: 72858
-----------------------------------------
| Loading contig boundaries | Time = 5.3668 s
-----------------------------------------
size = 3781978516
-----------------------------------------
| Loading sequence | Time = 1.5058 s
-----------------------------------------
size = 2662886446
-----------------------------------------
| Loading positions | Time = 22.571 s
-----------------------------------------
size = 3537474813
-----------------------------------------
| Loading reference sequence | Time = 2.1723 s
-----------------------------------------
-----------------------------------------
| Loading reference accumulative lengths | Time = 2.8044 ms
-----------------------------------------




[2023-11-30 09:37:51.026] [jointLog] [info] done
[2023-11-30 09:37:51.104] [jointLog] [info] Index contained 253166 targets
[2023-11-30 09:37:51.166] [jointLog] [info] Number of decoys : 194
[2023-11-30 09:37:51.166] [jointLog] [info] First decoy index : 252924 
[2023-11-30 09:37:54.100] [jointLog] [info] Automatically detected most likely library type as ISR









[2023-11-30 09:38:33.382] [jointLog] [info] Thread saw mini-batch with a maximum of 3.76% zero probability fragments
[2023-11-30 09:38:33.406] [jointLog] [info] Computed 12939 rich equivalence classes for further processing
[2023-11-30 09:38:33.407] [jointLog] [info] Counted 268744 total reads in the equivalence classes 
[2023-11-30 09:38:33.414] [jointLog] [info] Number of mappings discarded because of alignment score : 148747
[2023-11-30 09:38:33.414] [jointLog] [info] Number of fragments entirely discarded because of alignment score : 75092
[2023-11-30 09:38:33.414] [jointLog] [info] Number of fragments discarded because they are best-mapped to decoys : 67912
[2023-11-30 09:38:33.414] [jointLog] [info] Number of fragments discarded because they have only dovetail (discordant) mappings to valid targets : 46918
[2023-11-30 09:38:33.436] [jointLog] [warning] Only 268744 fragments were mapped, but the number of burn-in fragments was set to 5000000.
The effective lengths have been computed using the observed mappings.

[2023-11-30 09:38:33.436] [jointLog] [info] Mapping rate = 53.7596%

[2023-11-30 09:38:33.436] [jointLog] [info] finished quantifyLibrary()
[2023-11-30 09:38:33.440] [jointLog] [info] Starting optimizer
[2023-11-30 09:38:33.498] [jointLog] [info] Marked 0 weighted equivalence classes as degenerate
[2023-11-30 09:38:33.511] [jointLog] [info] iteration = 0 | max rel diff. = 101.852
[2023-11-30 09:38:34.853] [jointLog] [info] iteration = 100 | max rel diff. = 0.263537
[2023-11-30 09:38:36.144] [jointLog] [info] iteration = 200 | max rel diff. = 0.0414157
[2023-11-30 09:38:37.438] [jointLog] [info] iteration = 300 | max rel diff. = 1.17048
[2023-11-30 09:38:38.135] [jointLog] [info] iteration = 355 | max rel diff. = 0.00351135
[2023-11-30 09:38:38.148] [jointLog] [info] Finished optimizer
[2023-11-30 09:38:38.148] [jointLog] [info] writing output 

Desktop (please complete the following information):

  • OS: [e.g. Ubuntu Linux, OSX]
    • Linux
  • Version [ If you are on OSX, the output of sw_vers. If you are on linux the output of uname -a and lsb_release -a]

Additional context
Add any other context about the problem here.
The issue is definitely not insufficient memory (>300 GB available).
Interestingly, the same salmon index was working perfectly until now. I re-created the index to make sure the files were not corrupted somehow but it resulted in the same error. I doubt that this is due to an update in salmon itself, because we have been using the same singularity container for this process for a while, so the same salmon version, same index now producing the error.

For my use case, not using the --skipQuant doesn't really cause any problem. I just wanted to report the bug.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant