PromucFlow_constructor/app/client/src/sagas/ActionExecution
Aman Agarwal a4f9905c45
fix: batched evaluate action params to a chunk size (#36482)
## Description

In this PR, we fix the payload evaluation issue by adding a batching
mechanism.

Root cause the issue here was that using yield call in loop tends to
call stack overflow which is a known open issue in the redux-saga
library. The popular workaround to this is to add `yield delay(0` after
n number of batch.

Fixes #36383

## Automation

/test all

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/11134117696>
> Commit: a3a583f880cb9d057a2f4668f1ccb0fc10714321
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=11134117696&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Wed, 02 Oct 2024 01:49:36 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

- **Improvements**
- Enhanced processing efficiency by introducing a batching mechanism,
allowing smoother handling of large data sets without blocking the event
loop.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->

Co-authored-by: rishabhrathod01 <rishabh.rathod@appsmith.com>
2024-10-09 10:09:13 +05:30
..
CopyActionSaga.ts chore: add blank line eslint rule (#36369) 2024-09-18 19:35:28 +03:00
DownloadActionSaga.ts chore: add blank line eslint rule (#36369) 2024-09-18 19:35:28 +03:00
downloadActionUtils.ts chore: enable no-explicit-any rule (#35321) 2024-07-31 18:41:28 +03:00
errorUtils.ts chore: [Plugin Action Editor] Combine Plugin Editor UI state (#36651) 2024-10-08 16:12:27 +05:30
geolocationSaga.test.ts chore: add blank line eslint rule (#36369) 2024-09-18 19:35:28 +03:00
geolocationSaga.ts chore: add blank line eslint rule (#36369) 2024-09-18 19:35:28 +03:00
ModalSagas.ts chore: add blank line eslint rule (#36369) 2024-09-18 19:35:28 +03:00
NavigateActionSaga.ts chore: add blank line eslint rule (#36369) 2024-09-18 19:35:28 +03:00
PluginActionSaga.ts fix: batched evaluate action params to a chunk size (#36482) 2024-10-09 10:09:13 +05:30
PluginActionSagaUtils.test.ts chore: enable no-explicit-any rule (#35321) 2024-07-31 18:41:28 +03:00
PluginActionSagaUtils.ts chore: add blank line eslint rule (#36369) 2024-09-18 19:35:28 +03:00
PostMessage.test.ts chore: enable no-explicit-any rule (#35321) 2024-07-31 18:41:28 +03:00
PostMessageSaga.ts chore: add blank line eslint rule (#36369) 2024-09-18 19:35:28 +03:00
ResetWidgetActionSaga.ts chore: add blank line eslint rule (#36369) 2024-09-18 19:35:28 +03:00
ShowAlertActionSaga.ts chore: add blank line eslint rule (#36369) 2024-09-18 19:35:28 +03:00
StoreActionSaga.ts chore: add blank line eslint rule (#36369) 2024-09-18 19:35:28 +03:00