Skip to content

sge qjobinfo __repr__ raises exception (silently)  #1761

Closed
@bpinsard

Description

@bpinsard

Sorry, I am finding again some weird deep dark hidden bug. =]
The changes to the following line raises exception:

def __repr__(self):

but is caught by run_qstat here:
https://github.com/nipy/nipype/blob/master/nipype/pipeline/plugins/sge.py#L264
when it calls _parse_qstat_job_list which calls repr in:

    199                 sge_debug_print("Updating job:  {0}".format(
--> 200                     self._task_dictionary[task_id]))

So that it loops for a long time, and is not able to retrieve job status and acknowledge their completeness.

The exception it raises is:

nipype-0.13.0_g8144fb3.dev-py2.7.egg/nipype/pipeline/plugins/sge.pyc in __repr__(self)
     55             self._job_num, self._job_queue_state, self._job_slots,
     56             time.strftime("%Y-%m-%dT%H:%M:%S", time.gmtime(self._job_time)),
---> 57             self._job_queue_name, self._qsub_command_line)
     58 

ValueError: Unknown format code 'd' for object of type 'unicode'

because the _job_slots attribute is not a integer but a string from xml as defined here (or the string 'unknown'):
https://github.com/nipy/nipype/blob/master/nipype/pipeline/plugins/sge.py#L174

What does _job_slots field is supposed to contain as information?

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions