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

feat: Add time-driven event processing for triggering scheduled transactions #16017

Draft
wants to merge 52 commits into
base: develop
Choose a base branch
from

Conversation

JivkoKelchev
Copy link
Contributor

@JivkoKelchev JivkoKelchev commented Oct 17, 2024

Description:

Add time-driven event processing for triggering scheduled transactions

Related issue(s):

Fixes #16019

Notes for reviewer:

Checklist

  • Documented (Code comments, README, etc.)
  • Tested (unit, integration, etc.)

JivkoKelchev and others added 7 commits October 16, 2024 10:13
Signed-off-by: Valentin Tronkov <[email protected]>
Signed-off-by: ibankov <[email protected]>
…transactions

# Conflicts:
#	hedera-node/hedera-app/src/main/java/com/hedera/node/app/workflows/handle/HandleWorkflow.java
Signed-off-by: Zhivko Kelchev <[email protected]>
refactor hapi tests

Signed-off-by: Zhivko Kelchev <[email protected]>
Copy link

codecov bot commented Oct 18, 2024

Codecov Report

Attention: Patch coverage is 44.00000% with 56 lines in your changes missing coverage. Please review.

Project coverage is 63.27%. Comparing base (65af0d1) to head (e88ae55).
Report is 4 commits behind head on develop.

Files with missing lines Patch % Lines
...dera/node/app/workflows/handle/HandleWorkflow.java 35.48% 38 Missing and 2 partials ⚠️
...ce/contract/impl/infra/HevmTransactionFactory.java 0.00% 5 Missing ⚠️
...ode/app/workflows/handle/steps/UserTxnFactory.java 20.00% 3 Missing and 1 partial ⚠️
...p/workflows/handle/dispatch/DispatchValidator.java 0.00% 1 Missing and 1 partial ⚠️
...ce/schedule/impl/handlers/ScheduleSignHandler.java 60.00% 0 Missing and 2 partials ⚠️
...ontract/impl/exec/ContextTransactionProcessor.java 33.33% 1 Missing and 1 partial ⚠️
...service/schedule/impl/handlers/HandlerUtility.java 83.33% 0 Missing and 1 partial ⚠️
Additional details and impacted files

Impacted file tree graph

@@              Coverage Diff              @@
##             develop   #16017      +/-   ##
=============================================
- Coverage      63.37%   63.27%   -0.11%     
+ Complexity     20170    20142      -28     
=============================================
  Files           2532     2533       +1     
  Lines          94122    94129       +7     
  Branches        9848     9848              
=============================================
- Hits           59650    59558      -92     
- Misses         30855    30950      +95     
- Partials        3617     3621       +4     
Files with missing lines Coverage Δ
...-app/src/main/java/com/hedera/node/app/Hedera.java 55.06% <100.00%> (-2.79%) ⬇️
.../hedera/node/app/throttle/ThrottleAccumulator.java 85.85% <ø> (-0.07%) ⬇️
...orkflows/handle/dispatch/ChildDispatchFactory.java 86.02% <100.00%> (-2.03%) ⬇️
...app/service/schedule/impl/ScheduleServiceImpl.java 92.85% <100.00%> (+0.17%) ⬆️
.../schedule/impl/handlers/ScheduleCreateHandler.java 66.90% <100.00%> (+0.48%) ⬆️
...era/node/app/service/schedule/ScheduleService.java 60.00% <ø> (ø)
...service/schedule/impl/handlers/HandlerUtility.java 95.03% <83.33%> (+0.03%) ⬆️
...p/workflows/handle/dispatch/DispatchValidator.java 97.80% <0.00%> (-2.20%) ⬇️
...ce/schedule/impl/handlers/ScheduleSignHandler.java 54.83% <60.00%> (-2.79%) ⬇️
...ontract/impl/exec/ContextTransactionProcessor.java 78.68% <33.33%> (-2.67%) ⬇️
... and 3 more

... and 29 files with indirect coverage changes

Impacted file tree graph

Copy link

codacy-production bot commented Oct 18, 2024

Coverage summary from Codacy

See diff coverage on Codacy

Coverage variation Diff coverage
-0.10% (target: -1.00%) 52.00%
Coverage variation details
Coverable lines Covered lines Coverage
Common ancestor commit (65af0d1) 96941 63129 65.12%
Head commit (e88ae55) 96923 (-18) 63016 (-113) 65.02% (-0.10%)

Coverage variation is the difference between the coverage for the head and common ancestor commits of the pull request branch: <coverage of head commit> - <coverage of common ancestor commit>

Diff coverage details
Coverable lines Covered lines Diff coverage
Pull request (#16017) 100 52 52.00%

Diff coverage is the percentage of lines that are covered by tests out of the coverable lines that the pull request added or modified: <covered lines added or modified>/<coverable lines added or modified> * 100%

See your quality gate settings    Change summary preferences

Codacy stopped sending the deprecated coverage status on June 5th, 2024. Learn more

tinker-michaelj and others added 9 commits October 18, 2024 10:17
Signed-off-by: Michael Tinker <[email protected]>
Signed-off-by: Michael Tinker <[email protected]>
Signed-off-by: Michael Tinker <[email protected]>
Signed-off-by: Michael Tinker <[email protected]>
Signed-off-by: Michael Tinker <[email protected]>
Signed-off-by: Michael Tinker <[email protected]>
Signed-off-by: Michael Tinker <[email protected]>
@JivkoKelchev JivkoKelchev changed the title 15055 poc long term scheduled transactions feat: Add time-driven event processing for triggering scheduled transactions Oct 21, 2024
@JivkoKelchev JivkoKelchev self-assigned this Oct 21, 2024
@JivkoKelchev JivkoKelchev added this to the v0.56 milestone Oct 21, 2024
JivkoKelchev and others added 6 commits October 21, 2024 17:41
Signed-off-by: Zhivko Kelchev <[email protected]>
Signed-off-by: Zhivko Kelchev <[email protected]>
Signed-off-by: Zhivko Kelchev <[email protected]>
fix long term schedule throttle warning.

Signed-off-by: Zhivko Kelchev <[email protected]>
Copy link

Node: HAPI Test (Restart) Results

9 files  ±0  1 errors  8 suites   - 1   7m 23s ⏱️ - 1m 12s
7 tests  - 1  7 ✅  - 1  0 💤 ±0  0 ❌ ±0 
8 runs   - 1  8 ✅  - 1  0 💤 ±0  0 ❌ ±0 

For more details on these parsing errors, see this check.

Results for commit e0d80b6. ± Comparison against base commit 00ceb9a.

…persistence' into 15055-POC-long-term-scheduled-transactions

# Conflicts:
#	hedera-node/hedera-schedule-service-impl/src/main/java/com/hedera/node/app/service/schedule/impl/handlers/HandlerUtility.java
#	hedera-node/hedera-schedule-service-impl/src/main/java/com/hedera/node/app/service/schedule/impl/handlers/ScheduleCreateHandler.java
#	hedera-node/hedera-schedule-service-impl/src/main/java/com/hedera/node/app/service/schedule/impl/handlers/ScheduleDeleteHandler.java
#	hedera-node/hedera-schedule-service-impl/src/main/java/com/hedera/node/app/service/schedule/impl/handlers/ScheduleManager.java
#	hedera-node/hedera-schedule-service-impl/src/main/java/com/hedera/node/app/service/schedule/impl/handlers/ScheduleSignHandler.java
#	hedera-node/hedera-schedule-service-impl/src/test/java/com/hedera/node/app/service/schedule/impl/handlers/HandlerUtilityTest.java
#	hedera-node/hedera-schedule-service-impl/src/test/java/com/hedera/node/app/service/schedule/impl/handlers/ScheduleCreateHandlerTest.java
#	hedera-node/hedera-schedule-service-impl/src/test/java/com/hedera/node/app/service/schedule/impl/handlers/ScheduleManagerTest.java
Signed-off-by: Zhivko Kelchev <[email protected]>
ibankov and others added 28 commits October 22, 2024 14:56
…transactions

# Conflicts:
#	hedera-node/hedera-schedule-service-impl/src/main/java/com/hedera/node/app/service/schedule/impl/handlers/AbstractScheduleHandler.java
#	hedera-node/hedera-schedule-service-impl/src/main/java/com/hedera/node/app/service/schedule/impl/handlers/HandlerUtility.java
#	hedera-node/hedera-schedule-service-impl/src/main/java/com/hedera/node/app/service/schedule/impl/handlers/ScheduleCreateHandler.java
#	hedera-node/hedera-schedule-service-impl/src/main/java/com/hedera/node/app/service/schedule/impl/handlers/ScheduleDeleteHandler.java
#	hedera-node/hedera-schedule-service-impl/src/main/java/com/hedera/node/app/service/schedule/impl/handlers/ScheduleSignHandler.java
…transactions

# Conflicts:
#	hedera-node/hedera-app/src/test/java/com/hedera/node/app/workflows/handle/HandleWorkflowTest.java
#	hedera-node/test-clients/src/main/java/com/hedera/services/bdd/spec/queries/schedule/HapiGetScheduleInfo.java
Signed-off-by: Zhivko Kelchev <[email protected]>
Signed-off-by: Zhivko Kelchev <[email protected]>
Signed-off-by: Zhivko Kelchev <[email protected]>
Signed-off-by: Zhivko Kelchev <[email protected]>
…transactions

# Conflicts:
#	hedera-node/hedera-schedule-service-impl/src/main/java/com/hedera/node/app/service/schedule/impl/WritableScheduleStoreImpl.java
Signed-off-by: Zhivko Kelchev <[email protected]>
Signed-off-by: Zhivko Kelchev <[email protected]>
Signed-off-by: Zhivko Kelchev <[email protected]>
Signed-off-by: Zhivko Kelchev <[email protected]>
Signed-off-by: Zhivko Kelchev <[email protected]>
…transactions

# Conflicts:
#	hedera-node/hedera-app/src/main/java/com/hedera/node/app/workflows/handle/HandleWorkflow.java
#	hedera-node/hedera-app/src/test/java/com/hedera/node/app/workflows/handle/HandleWorkflowTest.java
Signed-off-by: Zhivko Kelchev <[email protected]>
Signed-off-by: Zhivko Kelchev <[email protected]>
…transactions

# Conflicts:
#	hedera-node/hedera-app/src/main/java/com/hedera/node/app/workflows/handle/HandleWorkflow.java
#	hedera-node/hedera-app/src/test/java/com/hedera/node/app/workflows/handle/HandleWorkflowTest.java
Signed-off-by: Zhivko Kelchev <[email protected]>
Signed-off-by: Zhivko Kelchev <[email protected]>
Signed-off-by: Zhivko Kelchev <[email protected]>
Signed-off-by: Zhivko Kelchev <[email protected]>
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.

Add time-driven event processing for triggering scheduled transactions
4 participants