Skip to content

Dev multi asset ops handler error #29358

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

natpatchara-w
Copy link
Contributor

Summary & Motivation

When a single output of a multi asset fails during HANDLE_OUTPUT, the whole multi asset is aborted.
This PR try to solve that problem.
See #27943 for more details and example.

How I Tested These Changes

I create new unit test in test_materilize.py to simulate the situation where old method failed. Then new algorithm is implemented which can then be enabled with additional flag skip_failed_execution.
Example situation from #27943 is also recreated to test new feature in situation.

Changelog

  • Add unitest for case with failed output_handler during op execution
  • Add optional argument for skip_failed_execution for op.
  • Add property handler and setter for skip_failed_execution in OpDefinition.
  • Add skip_failed_execution argument for multiasset to set Op argument.
  • Add additional algorithm to handle exception during the for-loop to not interrupt the execution process.
  • Use op skip_failed_execution flag to determine whether loop should be interrupted or not.
  • Log all error catch during the loop to log and raise final error message to be catch.

- Add unitest for case with failed output_handler during op execution.
- Add optional argument for skip_failed_execution for op.
- Add property handler and setter for skip_failed_execution in OpDefinition.
- Add skip_failed_execution argument for multiasset to set Op argument.
…manager output handle.

- Add additional algorithm to handle exception during the for-loop to not interrupt the execution process.
- Use op skip_failed_execution flag to determine whether loop should be interrupted or not.
- Log all error catch during the loop to log and raise final error message to be catch.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants