Skip to content

Conversation

@noonio
Copy link
Contributor

@noonio noonio commented Jun 27, 2025

This is a small patch release (+ the code itself) to fix the ReplayingState stalling bug that was being observed.

There is some follow-up work to be done in #2086 ; but this never-the-less represents an improvement.

Fixes #2089

@noonio noonio requested review from ch1bo and ffakenz June 27, 2025 14:22
@noonio noonio closed this Jun 27, 2025
@github-project-automation github-project-automation bot moved this from Triage 🏥 to Done ✔ in ☕ Hydra Team Work Jun 27, 2025
@noonio
Copy link
Contributor Author

noonio commented Jun 27, 2025

Can't put this commit on master. See: #2092

@github-actions
Copy link

Transaction 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 2025-06-27 14:30:01.224327708 UTC
Max. memory units 14000000
Max. CPU units 10000000000
Max. tx size (kB) 16384

Script summary

Name Hash Size (Bytes)
νInitial c8a101a5c8ac4816b0dceb59ce31fc2258e387de828f02961d2f2045 2652
νCommit 61458bc2f297fff3cc5df6ac7ab57cefd87763b0b7bd722146a1035c 685
νHead be6ebc744208c660bf0fdc1cfbb5157477cd305de5b1777e575cbb4c 14665
μHead 1f47a42d1d6edc32ccd834acb19d5db3b2a5232f0bd7eaa8908dc519* 5284
νDeposit ae01dade3a9c346d5c93ae3ce339412b90a0b8f83f94ec6baa24e30c 1102
  • The minting policy hash is only usable for comparison. As the script is parameterized, the actual script is unique per head.

Init transaction costs

Parties Tx size % max Mem % max CPU Min fee ₳
1 5836 10.14 3.20 0.51
2 6039 12.87 4.09 0.55
3 6236 14.47 4.57 0.57
5 6641 18.97 6.00 0.64
10 7644 29.09 9.17 0.79
43 14279 98.82 30.88 1.80

Commit transaction costs

This uses ada-only outputs for better comparability.

UTxO Tx size % max Mem % max CPU Min fee ₳
1 561 2.44 1.16 0.20
2 742 3.38 1.73 0.22
3 917 4.36 2.33 0.24
5 1276 6.41 3.60 0.28
10 2174 12.13 7.25 0.40
54 10070 98.61 68.52 1.88

CollectCom transaction costs

Parties UTxO (bytes) Tx size % max Mem % max CPU Min fee ₳
1 56 524 24.46 7.13 0.42
2 114 636 33.25 9.61 0.52
3 170 747 41.20 11.92 0.60
4 228 858 48.25 14.02 0.68
5 285 974 56.36 16.36 0.77
6 338 1085 73.09 20.73 0.94
7 395 1192 72.97 21.15 0.94
8 450 1303 99.90 28.19 1.22
9 506 1414 90.61 26.11 1.13

Cost of Increment Transaction

Parties Tx size % max Mem % max CPU Min fee ₳
1 1795 23.78 7.94 0.48
2 2019 26.19 9.45 0.52
3 2068 26.72 10.20 0.53
5 2395 31.08 12.96 0.60
10 3023 38.80 18.70 0.73
42 7883 99.30 59.89 1.73

Cost of Decrement Transaction

Parties Tx size % max Mem % max CPU Min fee ₳
1 622 22.50 7.27 0.41
2 785 25.36 8.73 0.45
3 945 26.09 9.58 0.47
5 1303 32.10 12.61 0.56
10 1969 40.33 18.23 0.69
42 6641 98.19 55.64 1.64

Close transaction costs

Parties Tx size % max Mem % max CPU Min fee ₳
1 659 28.99 9.24 0.48
2 836 29.03 10.00 0.49
3 902 32.55 11.67 0.54
5 1176 36.02 14.08 0.59
10 2090 45.13 20.74 0.76
36 5978 95.47 54.57 1.58

Contest transaction costs

Parties Tx size % max Mem % max CPU Min fee ₳
1 678 33.73 10.50 0.53
2 768 35.02 11.47 0.55
3 942 37.62 13.03 0.59
5 1341 43.66 16.49 0.68
10 2057 53.48 22.86 0.84
29 4810 96.69 49.10 1.50

Abort transaction costs

There is some variation due to the random mixture of initial and already committed outputs.

Parties Tx size % max Mem % max CPU Min fee ₳
1 5779 27.04 9.05 0.69
2 5948 36.73 12.33 0.80
3 6026 44.48 14.90 0.88
4 6186 54.92 18.41 1.00
5 6358 65.32 21.89 1.12
6 6491 73.70 24.71 1.21
7 6726 85.31 28.79 1.34
8 6813 94.01 31.78 1.44

FanOut transaction costs

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 ₳
10 1 57 5868 21.23 7.22 0.63
10 5 285 6004 29.80 10.58 0.73
10 10 569 6174 39.27 14.37 0.84
10 20 1139 6513 60.46 22.69 1.09
10 30 1707 6853 81.41 30.92 1.33
10 39 2219 7158 98.11 37.59 1.53

End-to-end benchmark results

This page is intended to collect the latest end-to-end benchmark results produced by Hydra's continuous integration (CI) system from the latest master code.

Please note that these results are approximate as they are currently produced from limited cloud VMs and not controlled hardware. Rather than focusing on the absolute results, the emphasis should be on relative results, such as how the timings for a scenario evolve as the code changes.

Generated at 2025-06-27 14:33:05.62171876 UTC

Baseline Scenario

Number of nodes 1
Number of txs 300
Avg. Confirmation Time (ms) 4.313699016
P99 5.8977423599999925ms
P95 5.04442325ms
P50 4.1934735ms
Number of Invalid txs 0

Memory data

Time Used Free
2025-06-27 14:31:50.214109914 UTC 0m 0;
2025-06-27 14:31:55.213948486 UTC 8 0;
2025-06-27 14:32:00.213898708 UTC 6 0;
2025-06-27 14:32:05.213939851 UTC 1 0;
2025-06-27 14:32:10.213863253 UTC 1 0;
2025-06-27 14:32:15.213855916 UTC 1 0;

Three local nodes

Number of nodes 3
Number of txs 900
Avg. Confirmation Time (ms) 29.975068542
P99 58.350397269999995ms
P95 46.77941479999999ms
P50 27.388838999999997ms
Number of Invalid txs 0

Memory data

Time Used Free
2025-06-27 14:32:28.500280111 UTC 0m 0;
2025-06-27 14:32:33.500950269 UTC 8 0;
2025-06-27 14:32:38.501330665 UTC 5 0;
2025-06-27 14:32:43.500285534 UTC 23 0;
2025-06-27 14:32:48.5003181 UTC 14 0;
2025-06-27 14:32:53.500275487 UTC 2 0;
2025-06-27 14:32:58.500416958 UTC 2 0;
2025-06-27 14:33:03.500370743 UTC 2 0;

@github-actions
Copy link

Transaction cost differences

No cost or size differences found

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Done ✔

Development

Successfully merging this pull request may close these issues.

Node stuck in ReplayingState

2 participants