jobflow
jobflow copied to clipboard
[WIP] Use a DataServer and MultiStore to pool connections
Summary
- Utilize MultiStore from fireworks DataServer to pool connections when accessing equivalent stores (when running fireworks on multiple processes).
TODO (if any)
- [ ] This feature is dependent on a pull request in Fireworks and a pull request in Maggma
- [ ] Check that all tests pass
Checklist
Before a pull request can be merged, the following items must be checked:
- [ ] Code is in the standard Python style. The easiest way to handle this is to run the following in the correct sequence on your local machine. Start with running black on your new code. This will automatically reformat your code to PEP8 conventions and removes most issues. Then run pycodestyle, followed by flake8.
- [ ] Docstrings have been added in theNumpy docstring format. Run pydocstyle on your code.
- [ ] Type annotations are highly encouraged. Run mypy to type check your code.
- [ ] Tests have been added for any new functionality or bug fixes.
- [ ] All linting and tests pass.
Note that the CI system will run all the above checks. But it will be much more
efficient if you already fix most errors prior to submitting the PR. It is highly
recommended that you use the pre-commit hook provided in the repository. Simply
cp pre-commit .git/hooks and a check will be run prior to allowing commits.
Codecov Report
Merging #321 (361c129) into main (fb522a2) will decrease coverage by
0.77%. The diff coverage is35.29%.
:exclamation: Current head 361c129 differs from pull request most recent head 21df1a6. Consider uploading reports for the commit 21df1a6 to get more accurate results
Additional details and impacted files
@@ Coverage Diff @@
## main #321 +/- ##
===========================================
- Coverage 100.00% 99.23% -0.77%
===========================================
Files 19 19
Lines 1429 1445 +16
Branches 361 365 +4
===========================================
+ Hits 1429 1434 +5
- Misses 0 10 +10
- Partials 0 1 +1
| Impacted Files | Coverage Δ | |
|---|---|---|
| src/jobflow/core/store.py | 97.70% <14.28%> (-2.30%) |
:arrow_down: |
| src/jobflow/managers/fireworks.py | 92.75% <50.00%> (-7.25%) |
:arrow_down: |