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

linearham crashed #65

Closed
scharch opened this issue Mar 6, 2020 · 7 comments
Closed

linearham crashed #65

scharch opened this issue Mar 6, 2020 · 7 comments

Comments

@scharch
Copy link

scharch commented Mar 6, 2020

root@d4094c82cf56:/linearham# scons --run-linearham                                                     
scons: Reading SConscript files ...
scons: done reading SConscript files.
scons: Building targets ...
scripts/generate_revbayes_rev_file.py templates/revbayes_asr_template.rev --fasta-path output/cluster-0/cluster_seqs.fasta --mcmc-iter 10000 --mcmc-thin 10 --tune-iter 5000 --tune-thin 100 --num-rates 4 --seed 0 --output-path output/cluster-0/mcmciter10000_mcmcthin10_tuneiter5000_tunethin100_numrates4_rngseed0/revbayes_run.rev
lib/revbayes/projects/cmake/rb output/cluster-0/mcmciter10000_mcmcthin10_tuneiter5000_tunethin100_numrates4_rngseed0/revbayes_run.rev > output/cluster-0/mcmciter10000_mcmcthin10_tuneiter5000_tunethin100_numrates4_rngseed0/revbayes_run.stdout.log
_build/linearham/linearham --pipeline --yaml-path output/cluster-0/cluster.yaml --cluster-ind 0 --hmm-param-dir output/parameter_dir/hmm/hmms --seed 0 --num-rates 4 --input-path output/cluster-0/mcmciter10000_mcmcthin10_tuneiter5000_tunethin100_numrates4_rngseed0/revbayes_run.trees --output-path output/cluster-0/mcmciter10000_mcmcthin10_tuneiter5000_tunethin100_numrates4_rngseed0/lh_revbayes_run.trees
linearham: _build/linearham/VDJGermline.cpp:51: std::unordered_map<std::__cxx11::basic_string<char>, linearham::GermlineGene> linearham::CreateGermlineGeneMap(std::__cxx11::string): Assertion `dir != nullptr' failed.
Aborted (core dumped)
scons: *** [output/cluster-0/mcmciter10000_mcmcthin10_tuneiter5000_tunethin100_numrates4_rngseed0/lh_revbayes_run.trees] Error 134
scons: building terminated because of errors.

@eharkins
Copy link
Collaborator

eharkins commented Mar 7, 2020

I haven't been able to reproduce this crash yet but it looks like it is crashing here:

https://github.com/matsengrp/linearham/blob/master/src/VDJGermline.cpp#L51

i.e. the --hmm-param-dir in the _build/linearham/linearham command (which comes from --parameter-dir) does not exist. I will keep trying, but it would be useful to know if you ran --run-partis prior to this or if you set any defaults so that I can try to reproduce by running things exactly as you did.

Thanks!

@psathyrella
Copy link
Contributor

psathyrella commented Mar 7, 2020

I'm not sure how many similar null ptr checks are scattered around the linearham code, but it would be really nice if they could be replaced with error messages that give the user a better clue what's wrong. Something like throwing a runtime error with a message like "hmm_param_dir not found" would give the user a really good shot at fixing the problem themselves, since --hmm-param-dir is a something that was just passed in to linearham so they have some control over it, whereas asserting "dir" isn't null ptr sounds more like a coding error or memory issue than a dir not existing.

I like this style of throwing things, although I wouldn't put the ERROR text these days since it's already getting kicked to std err.

@scharch
Copy link
Author

scharch commented Mar 9, 2020

@eharkins, I did run --run-partis prior to --run-linearham, but I used a --parameter-dir generated separately by a previous version of partis (25ec9b0) on the whole dataset from this donor. The --run-partis and --run-linearham commands were run on a single lineage that I extracted manually.

@eharkins
Copy link
Collaborator

eharkins commented Mar 9, 2020

@scharch it seems like linearham is trying and failing to use output/parameter_dir as your parameter dir for --run-linearham. Does that directory exist and does what does it contain? What happens if you instead specify the parameter dir

generated separately by a previous version of partis

@scharch
Copy link
Author

scharch commented Mar 9, 2020

Yes, the directory exists; I copied the partis output there when I was having trouble specifying the command line options.

root@d4094c82cf56:/linearham# ls output/paramter_dir/hmm/hmms/
IGHD1-1_star_01.yaml   IGHD3-22_star_01.yaml  IGHJ4_star_02.yaml     IGHV3-11_star_05.yaml	  IGHV3-74_star_01.yaml
IGHD1-20_star_01.yaml  IGHD3-3_star_01.yaml   IGHJ5_star_01.yaml     IGHV3-11_star_06.yaml	  IGHV3-7_star_03.yaml
IGHD1-26_star_01.yaml  IGHD3-3_star_02.yaml   IGHJ5_star_02.yaml     IGHV3-13_star_04.yaml	  IGHV4-30-2_star_01.yaml
IGHD1-7_star_01.yaml   IGHD3-9_star_01.yaml   IGHJ6_star_02.yaml     IGHV3-15_star_01.yaml	  IGHV4-31_star_03.yaml
IGHD2-15_star_01.yaml  IGHD4-17_star_01.yaml  IGHV1-18_star_04.yaml  IGHV3-20_star_01.yaml	  IGHV4-34_star_01.yaml
IGHD2-21_star_01.yaml  IGHD5-12_star_01.yaml  IGHV1-24_star_01.yaml  IGHV3-21_star_01.yaml	  IGHV4-38-2_star_02.yaml
IGHD2-21_star_02.yaml  IGHD5-18_star_01.yaml  IGHV1-2_star_04.yaml   IGHV3-23_star_01.yaml	  IGHV4-39_star_01.yaml
IGHD2-2_star_01.yaml   IGHD6-13_star_01.yaml  IGHV1-3_star_01.yaml   IGHV3-30_star_18.yaml	  IGHV4-4_star_02.yaml
IGHD2-2_star_02.yaml   IGHD6-19_star_01.yaml  IGHV1-46_star_01.yaml  IGHV3-43_star_01.yaml	  IGHV4-59_star_01.yaml
IGHD2-2_star_03.yaml   IGHD6-25_star_01.yaml  IGHV1-58_star_02.yaml  IGHV3-48_star_02.yaml	  IGHV4-59_star_08.yaml
IGHD2-8_star_01.yaml   IGHD6-6_star_01.yaml   IGHV1-69_star_02.yaml  IGHV3-49_star_04.yaml	  IGHV4-61_star_08.yaml
IGHD2-8_star_02.yaml   IGHD7-27_star_01.yaml  IGHV1-69_star_10.yaml  IGHV3-53_star_01.yaml	  IGHV5-10-1_star_03.yaml
IGHD3-10_star_01.yaml  IGHJ1_star_01.yaml     IGHV2-26_star_01.yaml  IGHV3-64_star_01.yaml	  IGHV5-51_star_01.yaml
IGHD3-10_star_02.yaml  IGHJ2_star_01.yaml     IGHV2-5_star_01.yaml   IGHV3-64_star_05+G240C.yaml  IGHV6-1_star_01.yaml
IGHD3-16_star_01.yaml  IGHJ3_star_01.yaml     IGHV2-5_star_02.yaml   IGHV3-72_star_01.yaml	  IGHV7-4-1_star_02.yaml
IGHD3-16_star_02.yaml  IGHJ3_star_02.yaml     IGHV2-70_star_11.yaml  IGHV3-73_star_01.yaml

@dunleavy005
Copy link
Collaborator

possible a spelling error? output/paramter_dir?

@scharch
Copy link
Author

scharch commented Mar 9, 2020

Awwwwww hell

@scharch scharch closed this as completed Mar 9, 2020
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

4 participants