radical-collaboration / IMPRESS

Integrated Machine-learning for PRotEin Structures at Scale
https://radical-project.github.io/impress
1 stars 0 forks source link

IMPRESS Pipeline access unassigned protein and fails #9

Closed AymenFJA closed 1 month ago

AymenFJA commented 1 month ago

IMPRESS pipelines are currently failing on Amarel with the following error:

Traceback (most recent call last):
  File "/cache/home/ja961/Khare/pipeline/radical_pipeline_adaptive.py", line 515, in <module>
    main()
  File "/cache/home/ja961/Khare/pipeline/radical_pipeline_adaptive.py", line 463, in main
    tasks_active[pipe_name] += pipes[pipe_name].submit_next()
  File "/cache/home/ja961/Khare/pipeline/radical_pipeline_adaptive.py", line 136, in submit_next
    sub_iter_seqs[proteins] = self.iter_seqs.pop(proteins)
KeyError: 'htra1_99'
slurmstepd: error: *** JOB 38830491 ON gpu013 CANCELLED AT 2024-10-03T10:32:01 ***

This error is unrelated to RCT and is mainly due to some bug in the logic of the adaptive_pipeline code.

AymenFJA commented 1 month ago

The current suggested solution, just to move forward in generating data is to check for the protein before trying to access it and maniplualte it:

                sub_iter_seqs = {}
                # comparison of curr and prev
                for proteins, scores in self.curr_scores.items():
                    if scores > self.prev_scores[proteins]:
                        # check if the protein key exist in the dict otherwise skip
 ------>                if self.iter_seqs.get(proteins):
                           # proteins to be removed from the current pipeline
                           sub_iter_seqs[proteins] = self.iter_seqs.pop(proteins)
JonathanEAsh commented 1 month ago

Issue resolved, pipeline runs as expected