Malformed vasprun.xml

Hello.

There are quite some fizzled workflows in our calcutions with the following errors.

Traceback (most recent call last):
(CustodianError(...), u'Validation failed: <custodian.vasp.validators.VasprunXMLValidator object at 0x2acfedb1ebd0>').

Going to one of these folders and perform Vasprun manually, we would get:

from pymatgen.io.vasp import Vasprun
Vasprun(“vasprun.xml”)

Traceback (most recent call last):
File “”, line 1, in
File “/opt/apps/util/easybuild/software/atomate/0.4.2-intel-2016.01-Python-2.7.12/lib/python2.7/site-packages/pymatgen-4.6.2-p y2.7-linux-x86_64.egg/pymatgen/io/vasp/outputs.py”, line 379, in init
parse_projected_eigen=parse_projected_eigen)
File “/opt/apps/util/easybuild/software/atomate/0.4.2-intel-2016.01-Python-2.7.12/lib/python2.7/site-packages/pymatgen-4.6.2-p y2.7-linux-x86_64.egg/pymatgen/io/vasp/outputs.py”, line 465, in _parse
raise ex
cElementTree.ParseError: not well-formed (invalid token): line 694, column 0

Looking into the vasprun.xml, there is this strange “^@^” line.

"694  ^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@"

Further investigation shows that if the default tags in INCAR do not run a converged job and once cudtodian Errorhandlers change these tags (like change ALGO to Normal from the default Fast), malformed vasprun.xml will form, leading to fizzled workflows with errors mentioned in the beginning.

  1. Rerunning these fireworks lead to exactly some error.
  2. Manually setting the defalt tags in INCAR work in some cases, but there more cases which need modificating different tags in the INCAR. Thus this is not the ultimate solution for this issue.
  3. We are using: Python/2.7.12; pymatgen/4.6.2, atomate/0.4.2, VASP/5.4.1.

Thanks for your help.

Best regards,
Jun

.

Hi Jun,

I’m not sure how this issue arises, I’ve never encountered this behavior in custodian before. Would it be possible for you to e-mail me a description of how your workflow is constructed and I can try to reconstruct the issue?

You can reach me at montoyjh [at] lbl [dot] gov.

Hi,
I have just ran into several of these issues in last month. Looking for the error lead me to this post. Exact same errors and observations described here. I have been using fireworks since last 2 years now. Only thing that has changed seems to be the last updates of pymatgen and atomate. How did you solve this error ?

1 Like

Hello all.
I am an undergraduate researcher, so this may be a rather rookie mistake. However, I figured I’d post it in case it was useful to someone down the line. I also got the “custodian.custodian.ValidationError: Validation failed: VasprunXMLValidator” error. I had other vasp runs with atomate that worked just fine (for example, both the MgO band structure and Si gibbs tutorials), so I thought it was some sort of atomate error in reading the file. However, what I eventually realized is that the vasp run had actually failed - when I went into the std_err.txt file in the vasp output, I was getting segmentation errors (“forrtl: severe (174): SIGSEGV, segmentation fault occurred”). I simply had to run “unlimit -s unlimited” in the terminal before qlaunching the workflows, and then they worked. That being the case, I also realize that other people may get this same error for different reasons.

It seems obvious in hindsight, but if the VasprunXMLValidator error message could be modified to direct users to ensure their vasprun didn’t fail, that may be helpful to any other inexperienced users like me.
Thanks,
Caleb

1 Like