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

Fix smoke test #726

Merged
merged 6 commits into from
Mar 1, 2023
Merged

Fix smoke test #726

merged 6 commits into from
Mar 1, 2023

Conversation

ch1bo
Copy link
Member

@ch1bo ch1bo commented Feb 16, 2023

  • Fixes the exes nix shell so we can run the smoke test again

  • Reverts the wait times back to 600 seconds for the smoke test scenario

  • Took note of a recently published hydra-scripts-tx-id

  • Fixed also the contestation period to a higher value, now 100 seconds instead of 1

Red bin items discovered

  • Should parameterize the Scenarios by network they run in, i.e. the block production time is a parameter for a good contestation period + max wait time for an end-to-end scenario
  • Hydra node state was persisted and re-used by the smoke test, even after we changed the contestation period -> This was a surprise when investigating

@github-actions
Copy link

github-actions bot commented Feb 16, 2023

Transactions Costs

Sizes and execution budgets for Hydra protocol transactions. Note that unlisted parameters are currently using arbitrary values and results are not fully deterministic and comparable to previous runs.

Metadata
Generated at 2023-02-28 11:46:09.129944767 UTC
Max. memory units 14000000
Max. CPU units 10000000000
Max. tx size (kB) 16384

Script summary

Name Hash Size (Bytes)
μHead N/A 4458
νInitial 6a88813a828ebf6bff71ab2900693dc66a06fd0bfa78714d6a8ebade 5122
νCommit 538460fccbe59158e6f8c204a80964b5b55eafb018ad5970910b2b21 2439
νHead a2bb85abfa5c3719376ab38a9fcc5500f6c0303796d1acc1bf11a040 8965

Cost of Init Transaction

Parties Tx size % max Mem % max CPU Min fee ₳
1 5055 15.16 6.00 0.54
2 5260 17.96 7.08 0.58
3 5466 18.61 7.26 0.59
5 5874 24.96 9.72 0.68
10 6899 36.19 13.93 0.85
37 12438 99.65 37.87 1.78

Cost of Commit Transaction

Currently only one UTxO per commit allowed (this is about to change soon)

UTxO Tx size % max Mem % max CPU Min fee ₳
1 633 20.99 8.47 0.41

Cost of CollectCom Transaction

Parties UTxO (bytes) Tx size % max Mem % max CPU Min fee ₳
1 57 12185 22.19 8.88 0.93
2 113 12537 36.71 14.84 1.11
3 171 12890 54.53 22.21 1.32
4 228 13243 74.25 30.42 1.55
5 284 13595 97.65 40.17 1.83

Cost of Close Transaction

Parties Tx size % max Mem % max CPU Min fee ₳
1 9612 16.83 7.37 0.76
2 9770 18.23 8.14 0.79
3 9909 19.08 8.53 0.80
5 9934 19.32 8.50 0.80
10 11122 29.99 14.71 0.99
41 16280 74.59 39.60 1.75

Cost of Contest Transaction

Parties Tx size % max Mem % max CPU Min fee ₳
1 9607 21.04 8.80 0.81
2 9806 23.33 10.08 0.84
3 9970 25.43 11.11 0.87
5 10297 28.70 12.89 0.93
10 11153 37.80 17.69 1.07
41 16318 92.63 46.06 1.95

Cost of Abort Transaction

Some variation because of random mixture of still initial and already committed outputs.

Parties Tx size % max Mem % max CPU Min fee ₳
1 14132 27.81 11.83 1.08
2 14483 45.88 19.75 1.30
3 14839 67.53 29.27 1.56
4 15341 95.51 41.68 1.90

Cost of FanOut Transaction

Involves spending head output and burning head tokens. Uses ada-only UTxO for better comparability.

Parties UTxO UTxO (bytes) Tx size % max Mem % max CPU Min fee ₳
5 0 0 14004 9.55 3.95 0.87
5 1 57 14047 10.97 4.79 0.89
5 5 285 14187 16.83 8.21 0.97
5 10 570 14363 24.70 12.71 1.07
5 20 1135 14719 40.21 21.63 1.28
5 30 1706 15086 54.98 30.24 1.48
5 40 2277 15450 70.50 39.16 1.68
5 50 2845 15809 85.77 47.98 1.88
5 59 3358 16128 99.52 55.92 2.07

@github-actions
Copy link

github-actions bot commented Feb 16, 2023

Test Results

281 tests  ±0   275 ✔️ ±0   19m 9s ⏱️ + 3m 18s
  94 suites ±0       6 💤 ±0 
    4 files   ±0       0 ±0 

Results for commit 0ccfaad. ± Comparison against base commit 99fb8fe.

♻️ This comment has been updated with latest results.

@ch1bo ch1bo self-assigned this Feb 17, 2023
Copy link
Contributor

@v0d1ch v0d1ch left a comment

Choose a reason for hiding this comment

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

Changes look good to me, I'll spin it locally to see if I can reproduce.

@ch1bo ch1bo force-pushed the ch1bo/fix-smoke-test branch from 65fe615 to 8b1f920 Compare February 20, 2023 14:27
@ch1bo ch1bo removed their assignment Feb 27, 2023
@v0d1ch v0d1ch force-pushed the ch1bo/fix-smoke-test branch from 32269c9 to 116ea07 Compare February 28, 2023 09:22
@ch1bo ch1bo marked this pull request as ready for review February 28, 2023 09:27
@ch1bo ch1bo force-pushed the ch1bo/fix-smoke-test branch from 116ea07 to 2778f79 Compare February 28, 2023 09:27
@ch1bo ch1bo requested review from v0d1ch and ffakenz February 28, 2023 11:28
ch1bo and others added 6 commits February 28, 2023 12:29
This is required because the hydra-cluster package is included in this
shell environment and it requires submodules to compile.
We really need to make these scenarios fully network-agnostic..
- This scenario also needs to run on a public testnet where
block production is usually 20+ seconds. So one second is too low value
for a contestation period especially since we use it for calculating the
validity range of close tx.
- The smoke tests should clear the hydra-node state on each run so that
we do not continue using previous head state.
@ch1bo ch1bo force-pushed the ch1bo/fix-smoke-test branch from 78cf00d to 0ccfaad Compare February 28, 2023 11:29
@ch1bo
Copy link
Member Author

ch1bo commented Mar 1, 2023

Latest run was green 💚 https://github.com/input-output-hk/hydra/actions/runs/4291889526.

Thanks @v0d1ch for fixing this, I would approve if I could :)

@v0d1ch v0d1ch merged commit 3b3e2b8 into master Mar 1, 2023
@v0d1ch v0d1ch deleted the ch1bo/fix-smoke-test branch March 1, 2023 08:16
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.

2 participants