EVcouplings icon indicating copy to clipboard operation
EVcouplings copied to clipboard

'NoneType' object has no attribute 'group'

Open GodloveD opened this issue 4 years ago • 4 comments

I'm seeing the following:

$ evcouplings -p RASH_HUMAN -P /data/${USER}/ev_out_files -b "0.3,0.5,0.7" sample_config_monomer.txt
Traceback (most recent call last):
  File "/opt/conda/bin/evcouplings", line 8, in <module>
    sys.exit(app())
  File "/opt/conda/lib/python3.7/site-packages/click/core.py", line 829, in __call__
    return self.main(*args, **kwargs)
  File "/opt/conda/lib/python3.7/site-packages/click/core.py", line 782, in main
    rv = self.invoke(ctx)
  File "/opt/conda/lib/python3.7/site-packages/click/core.py", line 1066, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/opt/conda/lib/python3.7/site-packages/click/core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "/opt/conda/lib/python3.7/site-packages/evcouplings/utils/app.py", line 475, in app
    run(**kwargs)
  File "/opt/conda/lib/python3.7/site-packages/evcouplings/utils/app.py", line 401, in run
    kwargs.get("workdir", None)
  File "/opt/conda/lib/python3.7/site-packages/evcouplings/utils/app.py", line 360, in run_jobs
    submitter.submit(cmd)
  File "/opt/conda/lib/python3.7/site-packages/evcouplings/utils/batch.py", line 425, in submit
    job_id = self._get_job_id(stdo)
  File "/opt/conda/lib/python3.7/site-packages/evcouplings/utils/batch.py", line 269, in _get_job_id
    return self.job_id_pattern.match(input).group(1)
AttributeError: 'NoneType' object has no attribute 'group'

The sbatch command is still executed and the job is spawned (though it fails for reasons I'll detail in a different issue).

GodloveD avatar Jun 17 '20 22:06 GodloveD

please see my reply in #242

thomashopf avatar Jun 19 '20 06:06 thomashopf

@GodloveD Could you please provide an example output from sbatch in your computing environment when you submit a job? I have a feeling the output format may have changed with your more recent slurm version (we are on slurm 18.08.4).

The regular expression that is currently applied to retrieve the job ID is

__job_id_pattern = re.compile(r"Submitted batch job ([0-9]*)")

(only used if sbatch returns with a exit code of 0)

thomashopf avatar Jun 20 '20 16:06 thomashopf

Yeah, that is likely the issue. We wrap the sbatch command and the only output is the jobid without any additional strings.

GodloveD avatar Jun 22 '20 15:06 GodloveD

Hm okay that explains the issue. Is there any possibility for you to get the raw string? I am somewhat hesitant to modify the regex in the package if it is a custom-brewed setup that causes the issue. Another option could of course be to inherit from the slurm submitter and override the __job_id_pattern variable.

(On a side note, I wonder if that sbatch wrapper could cause #242?)

thomashopf avatar Jun 26 '20 07:06 thomashopf