Torque: parser error when no queue
The following error occurs when submitting the flatNTuple analysis of CAFExample to the torque-controlled batch system at SFU. I use CAFCore commit ddaf05a2. When I execute the command
submit.py flatNTuple/config/master/analyze-flatNTuple-Example.cfg --jobs flatNTuple/config/jobLists/jobs_flatNTuple_analyze.txt --identifier CAFExTest --allowArgChanges
I get the following output
xAOD::Init INFO Environment initialised for data access
INFO: Reading configuration for 'analyze' from file 'flatNTuple/config/master/analyze-flatNTuple-Example.cfg'
INFO: Successfully parsed as .cfg file
INFO: Successfully included configuration file 'flatNTuple/config/aliases/flatNTuple-Example-aliases.cfg'
INFO: loading sample folder '/home/kolehman/HWW/CAFExample/output/sampleFolders/initialized/samples-initialized-flatNTuple-Example.root:samples'
Traceback (most recent call last):
File "/home/kolehman/HWW/CAFExample/CAFExample/share/submit.py", line 50, in <module>
main(args)
File "/home/kolehman/HWW/CAFExample/CAFExample/share/submit.py", line 26, in main
ctrl.submitTasks(args,taskList)
File "/home/kolehman/HWW/CAFExample/build/x86_64-slc6-gcc62-opt/python/CommonAnalysisHelpers/submissionControllerBase.py", line 587, in submitTasks
self._updateQueueStatus()
File "/home/kolehman/HWW/CAFExample/build/x86_64-slc6-gcc62-opt/python/CommonAnalysisHelpers/submissionControllers/torque.py", line 225, in _updateQueueStatus
dom = self._qstatxml()
File "/home/kolehman/HWW/CAFExample/build/x86_64-slc6-gcc62-opt/python/CommonAnalysisHelpers/submissionControllers/torque.py", line 268, in _qstatxml
return xml.dom.minidom.parseString(stdout)
File "/cvmfs/atlas.cern.ch/repo/sw/software/21.2/AnalysisBaseExternals/21.2.23/InstallArea/x86_64-slc6-gcc62-opt/lib/python2.7/xml/dom/minidom.py", line 1928, in parseString
return expatbuilder.parseString(string)
File "/cvmfs/atlas.cern.ch/repo/sw/software/21.2/AnalysisBaseExternals/21.2.23/InstallArea/x86_64-slc6-gcc62-opt/lib/python2.7/xml/dom/expatbuilder.py", line 940, in parseString
return builder.parseString(string)
File "/cvmfs/atlas.cern.ch/repo/sw/software/21.2/AnalysisBaseExternals/21.2.23/InstallArea/x86_64-slc6-gcc62-opt/lib/python2.7/xml/dom/expatbuilder.py", line 223, in parseString
parser.Parse(string, True)
xml.parsers.expat.ExpatError: no element found: line 1, column 0
It looks like the return statement in _qstatxml(self)
in CommonAnalysisHelpers/python/submissionControllers/torque.py
has a parser error when given a stdout that is empty (the batch queue is empty and qstat
returns nothing). I tried to fix it by explicitly checking if stdout is empty, but I am not sure how to handle this case in _updateQueueStatus(self)
. I hope that @rgugel can help?!