You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We need to introduce a gradual rollout mechanism for routing transactions between mirrorEvmTxProcessor.execute(params, estimatedGas)and transactionExecutionService.execute(params, estimatedGas, gasUsedCounter). Currently, the routing is determined by the mirrorNodeEvmProperties.isModularizedServices() flag, which acts as a switch.
To enable a progressive deployment strategy, we will introduce a percentage-based configuration that allows for gradual adoption of the new execution flow.
Solution
Current Flow
HederaEvmTransactionProcessingResult result;
if (!mirrorNodeEvmProperties.isModularizedServices()) {
result = mirrorEvmTxProcessor.execute(params, estimatedGas);
} else {
result = transactionExecutionService.execute(params, estimatedGas, gasUsedCounter);
}
Introduce a new configuration flag: (Example) mirrorNodeEvmProperties.transactionExecutionSplitPercentage (double, range 0.0 - 1.0) This percentage will define the probability of using the new flow (transactionExecutionService.execute).
Example Configuration
transactionExecutionSplitPercentage = 0.2 → 80% of requests go to the old flow, 20% to the new.
transactionExecutionSplitPercentage = 0.5 → 50% of requests go to each.
transactionExecutionSplitPercentage = 1.0 → 100% of requests use the new flow.
Alternatives
No response
The text was updated successfully, but these errors were encountered:
Problem
We need to introduce a gradual rollout mechanism for routing transactions between
mirrorEvmTxProcessor.execute(params, estimatedGas)
and transactionExecutionService.execute(params, estimatedGas, gasUsedCounter)
. Currently, the routing is determined by themirrorNodeEvmProperties.isModularizedServices()
flag, which acts as a switch.To enable a progressive deployment strategy, we will introduce a percentage-based configuration that allows for gradual adoption of the new execution flow.
Solution
Current Flow
Introduce a new configuration flag: (Example) mirrorNodeEvmProperties.transactionExecutionSplitPercentage (double, range 0.0 - 1.0) This percentage will define the probability of using the new flow (transactionExecutionService.execute).
Example Configuration
Alternatives
No response
The text was updated successfully, but these errors were encountered: