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

Add feature flag for reusable services integration #9261

Closed
Tracked by #8828
IvanKavaldzhiev opened this issue Sep 3, 2024 · 0 comments · Fixed by #9927
Closed
Tracked by #8828

Add feature flag for reusable services integration #9261

IvanKavaldzhiev opened this issue Sep 3, 2024 · 0 comments · Fixed by #9927
Assignees
Labels
enhancement Type: New feature web3 Area: Web3 API
Milestone

Comments

@IvanKavaldzhiev
Copy link
Contributor

IvanKavaldzhiev commented Sep 3, 2024

Problem

The integration of reusable services will span through multiple releases and will be delivered in chunks. That's why we need a feature flag to disable the new code before it's fully implemented and properly tested.

Solution

We can define a feature flag that will control which flow to be used (old mono code base or new reusable services code
base). The deviation point will be inside ContractCallService.doProcessCall, where:

  • if the feature flag is enabled, we will call the new TransactionExecutor.execute method
  • if the feature flag is disabled, we will call the MirrorEvmTxProcessor.execute method

To call the new TransactionExecutor.execute we need to transform the request parameters into the needed transaction body from the package com.hedera.hapi.node. Also, the existing integration tests might need to be adjusted to use this flag and this new way of transaction body construction as well.

After the new code base is fully integrated and tested, we will remove the old mono code base and the feature flag.

Alternatives

No response

@IvanKavaldzhiev IvanKavaldzhiev added enhancement Type: New feature web3 Area: Web3 API labels Sep 3, 2024
@github-project-automation github-project-automation bot moved this to 📋 Backlog in Mirror Node Sep 3, 2024
@steven-sheehy steven-sheehy moved this from 📋 Backlog to 🏃‍♀ Sprint backlog in Mirror Node Oct 15, 2024
@bilyana-gospodinova bilyana-gospodinova self-assigned this Nov 4, 2024
@steven-sheehy steven-sheehy modified the milestone: 0.120.0 Nov 25, 2024
@steven-sheehy steven-sheehy moved this from 🏃‍♀ Sprint backlog to 👷 In progress in Mirror Node Dec 9, 2024
@steven-sheehy steven-sheehy added this to the 0.121.0 milestone Dec 12, 2024
@steven-sheehy steven-sheehy moved this from 👷 In progress to 👀 In review in Mirror Node Dec 12, 2024
@github-project-automation github-project-automation bot moved this from 👀 In review to ✅ Done in Mirror Node Dec 18, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Type: New feature web3 Area: Web3 API
Projects
Status: Done
Development

Successfully merging a pull request may close this issue.

3 participants