Dear development team,
we have been using Fireworks since a few month managing our jobs on different HPC machines. Today I figure out one issue I perceived as a bug for a long time, realizing that it was actually only an issue of the documentation:
Using the FilePad tasks I would always get an exception like
Traceback (most recent call last):
File "/usr/local/lib/python3.6/dist-packages/FireWorks-1.8.1-py3.6.egg/fireworks/core/rocket.py", line 262, in run
m_action = t.run_task(my_spec)
File "/usr/local/lib/python3.6/dist-packages/FireWorks-1.8.1-py3.6.egg/fireworks/user_objects/firetasks/filepad_tasks.py", line 74, in run_task
fpad = get_fpad(self.get("filepad_file", None))
File "/usr/local/lib/python3.6/dist-packages/FireWorks-1.8.1-py3.6.egg/fireworks/user_objects/firetasks/filepad_tasks.py", line 106, in get_fpad
return FilePad.from_db_file(fpad_file)
File "/usr/local/lib/python3.6/dist-packages/FireWorks-1.8.1-py3.6.egg/fireworks/utilities/filepad.py", line 302, in from_db_file
gfs_name)
File "/usr/local/lib/python3.6/dist-packages/FireWorks-1.8.1-py3.6.egg/fireworks/utilities/filepad.py", line 72, in __init__
self.build_indexes()
File "/usr/local/lib/python3.6/dist-packages/FireWorks-1.8.1-py3.6.egg/fireworks/utilities/filepad.py", line 84, in build_indexes
self.filepad.create_index(i, unique=True, background=background)
File "/usr/local/lib/python3.6/dist-packages/pymongo/collection.py", line 1958, in create_index
self.__create_index(keys, kwargs, session, **cmd_options)
File "/usr/local/lib/python3.6/dist-packages/pymongo/collection.py", line 1860, in __create_index
session=session)
File "/usr/local/lib/python3.6/dist-packages/pymongo/collection.py", line 244, in _command
retryable_write=retryable_write)
File "/usr/local/lib/python3.6/dist-packages/pymongo/pool.py", line 579, in command
unacknowledged=unacknowledged)
File "/usr/local/lib/python3.6/dist-packages/pymongo/network.py", line 150, in command
parse_write_concern_error=parse_write_concern_error)
File "/usr/local/lib/python3.6/dist-packages/pymongo/helpers.py", line 155, in _check_command_response
raise OperationFailure(msg % errmsg, code, response)
pymongo.errors.OperationFailure: command createIndexes requires authentication
``
while authentication worked fine for the LaunchPad.
Only after taking a close look at the code in https://github.com/materialsproject/fireworks/blob/master/fireworks/utilities/filepad.py, it became clear that the options “admin_user”, “admin_password”, “readonly_user” and “readonly_password” are expected within the authentication configuration file, differing from the “username” and “password” expected by LaunchPad. However, I did not find this anywhere mentioned in the documentation, neither on
https://materialsproject.github.io/fireworks/filepad_tutorial.html nor on https://materialsproject.github.io/fireworks/filepad_tasks.html
What is more, on the latter page the parameter “labels” is actually named “identifiers” in the current version. Update recommended
Best regards,
Johannes