-
Notifications
You must be signed in to change notification settings - Fork 87
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
Submit tx endpoint #1001
Submit tx endpoint #1001
Conversation
Test Results359 tests +7 354 ✔️ +7 20m 36s ⏱️ - 1m 10s Results for commit 09760e6. ± Comparison against base commit f5a3e47. This pull request removes 7 and adds 14 tests. Note that renamed tests count towards both.
♻️ This comment has been updated with latest results. |
Transactions CostsSizes and execution budgets for Hydra protocol transactions. Note that unlisted parameters are currently using
Script summary
Cost of Init Transaction
Cost of Commit TransactionThis is using ada-only outputs for better comparability.
Cost of CollectCom Transaction
Cost of Close Transaction
Cost of Contest Transaction
Cost of Abort TransactionSome variation because of random mixture of still initial and already committed outputs.
Cost of FanOut TransactionInvolves spending head output and burning head tokens. Uses ada-only UTxO for better comparability.
End-To-End Benchmark ResultsThis page is intended to collect the latest end-to-end benchmarks results produced by Hydra's Continuous Integration system from the latest Please take those results with a grain of salt as they are currently produced from very limited cloud VMs and not controlled hardware. Instead of focusing on the absolute results, the emphasis should be on relative results, eg. how the timings for a scenario evolve as the code changes. Generated at 2023-08-01 14:31:03.222388326 UTC 3-nodes ScenarioA rather typical setup, with 3 nodes forming a Hydra head.
Baseline ScenarioThis scenario represents a minimal case and as such is a good baseline against which to assess the overhead introduced by more complex setups. There is a single hydra-node d with a single client submitting single input and single output transactions with a constant UTxO set of 1.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Some refactoring could be avoided and I think we should change the response serialization + API endpoint to something more REST-ful.
04327da
to
d373e3d
Compare
d373e3d
to
187f33c
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not many changes needed anymore, although I'm puzzled by some of the renamings (and it makes reviewing this PR hard)
5a0a7b7
to
3243006
Compare
Only my comments in e2e tests remaining from my side |
Co-authored-by: Sebastian Nagel <[email protected]>
Co-authored-by: Sebastian Nagel <[email protected]>
- And fix the api schema
- Also rename the corresponding test module RestServerSpec -> HTTPServerSpec
This also merges withAPIServer and runAPIServer together as most complexity comes from arguments being passed in.
This reverts commit 870d22c.
…TTPRequestReceived. Also changed the definition to use dedicated types and simplify construction in http server.
All branches of the handler were using respond, so we can factor this out and make the scope of handler smaller.
This forced us to write instances for ByteString and Text, which is actually fine as we could give a more precise definition what bytes/text we expect here.
We can interpret the new endpoint as a basic submission endpoint and indeed it is the same implementation as the Chain module uses itself which gets exposed.
AsyncAPI allows to specify multiple message kinds on a channel, which we can use to enumerate the possible responses in HTTP endpoints.
2081112
to
8fe026b
Compare
372de80
to
09760e6
Compare
Why
Our dear colleague @abailly-iohk had the idea to add possibility for the users to submit their transactions to the L1 network using their hydra-node. Our users also confirmed this would, indeed be a nice feature to have thus this PR.