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

Provide git revision as part of hydra-node's version #873

Merged
merged 4 commits into from
May 23, 2023

Conversation

abailly-iohk
Copy link
Contributor

@abailly-iohk abailly-iohk commented May 16, 2023

We change the way we display the version number of the hydra-node executable:

  • Up until now, we would display either a version (0.9.0) or the output of git describe (0.9.0-23-abeh454) depending on whether or not the executable was built as a released version or in between releases
  • We now always display the versions as defined in the cabal package plus the full git SHA at which the node was builtin.

Fix #849


  • CHANGELOG updated
  • Documentation updated
  • Added and/or updated haddocks
  • No new TODOs introduced or explained herafter

@github-actions
Copy link

github-actions bot commented May 16, 2023

Test Results

307 tests   - 11   301 ✔️  - 11   21m 31s ⏱️ - 2m 25s
104 suites  -   4       6 💤 ±  0 
    5 files    -   1       0 ±  0 

Results for commit 879604a. ± Comparison against base commit 0607807.

This pull request removes 11 tests.
Hydra.TUI.Options ‑ parses --cardano-signing-key option
Hydra.TUI.Options ‑ parses --connect option
Hydra.TUI.Options ‑ parses --node-socket option
Hydra.TUI.Options ‑ parses --testnet-magic option
Hydra.TUI/end-to-end smoke tests ‑ display feedback long enough
Hydra.TUI/end-to-end smoke tests ‑ doesn't allow multiple initializations
Hydra.TUI/end-to-end smoke tests ‑ starts & renders
Hydra.TUI/end-to-end smoke tests ‑ supports the full Head life cycle
Hydra.TUI/end-to-end smoke tests ‑ supports the init & abort Head life cycle
Hydra.TUI/text rendering errors ‑ should show not enough fuel message and suggestion
…

♻️ This comment has been updated with latest results.

@github-actions
Copy link

github-actions bot commented May 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-05-22 18:01:13.047041763 UTC
Max. memory units 14000000
Max. CPU units 10000000000
Max. tx size (kB) 16384

Script summary

Name Hash Size (Bytes)
νInitial e5cc20df4a2216e706b3d00b59fbb15a7cf12dbd28d271d4a8cf6d04 4336
νCommit 47c102d5f95a0648b4065f2b8bff59d3e34536a82ee7b0d42df73123 2124
νHead 9fe3a5c4d826f9475368e1e24c15bf22f4df19893cce2689d3c0564a 9492
μHead 7bec671467e923281c92e94257931913be106e217270a7b97076cb9b* 4148
  • The minting policy hash is only usable for comparison. As the script is parameterized, the actual script is unique per Head.

Cost of Init Transaction

Parties Tx size % max Mem % max CPU Min fee ₳
1 4742 15.19 6.00 0.52
2 4947 15.44 6.01 0.54
3 5151 17.29 6.69 0.56
5 5562 23.77 9.20 0.65
10 6586 35.80 13.74 0.83
38 12329 99.89 37.84 1.77

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 603 15.29 5.93 0.34

Cost of CollectCom Transaction

Parties UTxO (bytes) Tx size % max Mem % max CPU Min fee ₳
1 57 817 27.50 10.72 0.49
2 112 1138 43.16 16.96 0.67
3 169 1460 61.16 24.19 0.88
4 227 1783 81.53 32.40 1.12

Cost of Close Transaction

Parties Tx size % max Mem % max CPU Min fee ₳
1 672 19.03 8.65 0.40
2 813 20.28 9.68 0.42
3 966 21.37 10.82 0.44
5 1307 24.16 13.33 0.50
10 2124 31.13 19.62 0.64
50 8725 86.87 69.87 1.74

Cost of Contest Transaction

Parties Tx size % max Mem % max CPU Min fee ₳
1 710 25.27 11.00 0.46
2 832 26.06 11.84 0.48
3 1006 27.78 13.21 0.51
5 1336 31.20 15.95 0.58
10 2161 40.20 22.97 0.74
44 7771 98.03 69.37 1.78

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 4858 22.24 9.34 0.61
2 5038 32.40 13.58 0.73
3 5361 48.74 20.71 0.93
4 5825 73.19 31.58 1.23
5 6008 90.34 38.90 1.42

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 4764 8.67 3.57 0.46
5 1 57 4806 10.06 4.39 0.47
5 5 284 4948 15.64 7.69 0.55
5 10 569 5124 22.61 11.82 0.64
5 20 1139 5487 36.57 20.08 0.83
5 30 1706 5843 50.53 28.34 1.02
5 40 2277 6204 64.49 36.60 1.21
5 50 2846 6562 78.46 44.87 1.40
5 65 3700 7106 99.42 57.28 1.68

@abailly-iohk abailly-iohk marked this pull request as ready for review May 16, 2023 14:50
@abailly-iohk abailly-iohk self-assigned this May 16, 2023
Copy link
Collaborator

@ch1bo ch1bo left a comment

Choose a reason for hiding this comment

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

One thing to point out: The git describe from before would be the last tagged version + # commits + short sha. Now it's always the next release as we bump the .cabal version whenever we do the code change.

Copy link
Collaborator

@ch1bo ch1bo left a comment

Choose a reason for hiding this comment

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

Shouldn't we update this test?

CHANGELOG.md Outdated
+ Users have the option to submit transactions using time validity ranges.
+ Changes to the logs:
- Added current chain slot in OpenState.
- Added current chain slot and time in chain Tick.

- `hydra-node --version` always displays git revision (SHA) alongside
Copy link
Contributor

Choose a reason for hiding this comment

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

I don't care that much but if it's easy, I would prefer to not always give the revision (SHA) but only when it's not a released version so that we avoid giving the user too much noise.

But I'm really fine with that already.

Copy link
Collaborator

Choose a reason for hiding this comment

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

I tend to have the same opinion. However, we have not found a way to get anything else from the nix flake than the revision. Related issues: NixOS/nix#7201 and NixOS/nix#4682

Copy link
Collaborator

@ch1bo ch1bo left a comment

Choose a reason for hiding this comment

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

It's fine.

@ch1bo ch1bo merged commit d21eeaf into master May 23, 2023
@ch1bo ch1bo deleted the ch1bo/patch-hydra-node branch May 23, 2023 06:52
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.

Hydra executables should provide the commit at which they were built
3 participants