materialsproject / fireworks

The Fireworks Workflow Management Repo.
https://materialsproject.github.io/fireworks
Other
361 stars 185 forks source link

Offline mode not usable: raise TypeError: Object of type VaspJob is not JSON serializable #447

Open LuciusV opened 3 years ago

LuciusV commented 3 years ago

If you are unable to use the Discourse forum, you may submit an issue here, but you must clearly state the reason you are unable to use the Discourse forum in your ticket: according to Bug reports should go directly to the GitHub Issues page.

Dear developers, I set up local Mongodb database and run in bind to 0.0.0.0 After I start my workflow, it only completes VASP calculation, and then I got error in file ‘FW_job.error’ like this: Traceback (most recent call last): File “/home/sugon/venvs/atomate/lib/python3.7/site-packages/fireworks/core/rocket.py”, line 245, in run Rocket.update_checkpoint(lp, launch_dir, launch_id, checkpoint) File “/home/sugon/venvs/atomate/lib/python3.7/site-packages/fireworks/core/rocket.py”, line 442, in update_checkpoint f_out.write(json.dumps(d, ensure_ascii=False)) File “/home/sugon/anaconda3/lib/python3.7/json/init.py”, line 238, in dumps **kw).encode(obj) File “/home/sugon/anaconda3/lib/python3.7/json/encoder.py”, line 199, in encode chunks = self.iterencode(o, _one_shot=True) File “/home/sugon/anaconda3/lib/python3.7/json/encoder.py”, line 257, in iterencode return _iterencode(o, 0) File “/home/sugon/anaconda3/lib/python3.7/json/encoder.py”, line 179, in default raise TypeError(f’Object of type {o.class.name} ’ TypeError: Object of type VaspJob is not JSON serializable Traceback (most recent call last): File “/home/sugon/venvs/atomate/bin/rlaunch”, line 8, in sys.exit(rlaunch()) File “/home/sugon/venvs/atomate/lib/python3.7/site-packages/fireworks/scripts/rlaunch_run.py”, line 154, in rlaunch launch_rocket(launchpad, fworker, args.fw_id, args.loglvl, pdb_on_exception=args.pdb) File “/home/sugon/venvs/atomate/lib/python3.7/site-packages/fireworks/core/rocket_launcher.py”, line 58, in launch_rocket rocket_ran = rocket.run(pdb_on_exception=pdb_on_exception) File “/home/sugon/venvs/atomate/lib/python3.7/site-packages/fireworks/core/rocket.py”, line 414, in run d = json.loads(f_in.read()) File “/home/sugon/anaconda3/lib/python3.7/json/init.py”, line 348, in loads return _default_decoder.decode(s) File “/home/sugon/anaconda3/lib/python3.7/json/decoder.py”, line 337, in decode obj, end = self.raw_decode(s, idx=_w(s, 0).end()) File “/home/sugon/anaconda3/lib/python3.7/json/decoder.py”, line 355, in raw_decode raise JSONDecodeError(“Expecting value”, s, err.value) from None json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

LuciusV commented 3 years ago

This is major feature broken for clusters on which there is no chance to connect to external database. Please do something :(