Skip to content
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

W-11599413-asyncScope-duke #2365

Open
wants to merge 3 commits into
base: v4.4
Choose a base branch
from
Open

Conversation

dukesphere
Copy link
Contributor

Writer's Quality Checklist

Before merging your PR, did you:

  • Run spell checker
  • Run link checker to check for broken xrefs
  • Check for orphan files
  • Perform a local build and do a final visual check of your content, including checking for:
    • Broken images
    • Dead links
    • Correct rendering of partials if they are used in your content
    • Formatting issues, such as:
      • Misnumbered ordered lists (steps) or incorrectly nested unordered lists
      • Messed up tables
      • Proper indentation
      • Correct header levels
  • Receive final review and signoff from:
    • Technical SME
    • Product Manager
    • Editor or peer reviewer
    • Reporter, if this content is in response to a reported issue (internal or external feedback)
  • If applicable, verify that the software actually got released

@dukesphere dukesphere requested a review from a team as a code owner October 10, 2022 03:17
@dukesphere dukesphere self-assigned this Oct 10, 2022
|===

== Async Scopes versus Subflows

Unlike a subflow, an Async scope:
Unlike the xref:flow-component.adoc[Subflow}, the Async scope:
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Unlike the xref:flow-component.adoc[Subflow}, the Async scope:
// TODO: Provide some context for this section, why we want to distinguish
// the components.
Unlike the xref:flow-component.adoc[Subflow}, the Async scope:


See xref:execution-engine.adoc#backpressure[Back-Pressure Management] for details about Mule behavior after reaching the maximum concurrency value.
Upon reaching maximum concurrency,the scope cannot receive additional requests. See xref:execution-engine.adoc#backpressure[Back-Pressure Management] for details about the behavior of Mule when it reaches the maximum concurrency value.
|===

== Async Scopes versus Subflows
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

TODO: Remove this section and just talk about async characteristics, not in relation to Subflows

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

TODO: @IvanAndresFritzler check if any scope inherits exception strategy from main scope


In other words, if the payload of your message is a mutable object (for example, a bean with different fields in it) and a message processor in your Async scope changes the value of one of the fields, the message processors outside of the Async scope see the changed values.
// TODO: DOES THIS INFO BELONG IN THIS SECTION?
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

TODO: create section title for how async handles mutable objects


In other words, if the payload of your message is a mutable object (for example, a bean with different fields in it) and a message processor in your Async scope changes the value of one of the fields, the message processors outside of the Async scope see the changed values.
// TODO: DOES THIS INFO BELONG IN THIS SECTION?
// TODO: Do we have a recommendation here?
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

TODO: @IvanAndresFritzler we can say something like copy the payload if going to mutate it, only applies if doing something after the async. would need to add custom code for this.

@dukesphere dukesphere added the DO NOT MERGE (YET) This is a work in progress. Do not merge nor review these changes yet label Oct 20, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
DO NOT MERGE (YET) This is a work in progress. Do not merge nor review these changes yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant